mirror of
https://github.com/TermoraDev/termora.git
synced 2026-01-15 18:02:58 +08:00
76 lines
2.3 KiB
YAML
76 lines
2.3 KiB
YAML
name: Windows
|
|
|
|
on: [ push, pull_request ]
|
|
|
|
env:
|
|
JBR_MAJOR: 21.0.7
|
|
JBR_PATCH: b1038.58
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
os: [ windows-11-arm, windows-latest ]
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- name: Set architecture
|
|
id: set-arch
|
|
run: |
|
|
if ($env:PROCESSOR_ARCHITECTURE -eq "ARM64") {
|
|
echo "ARCH=aarch64" >> $env:GITHUB_ENV
|
|
} else {
|
|
echo "ARCH=x64" >> $env:GITHUB_ENV
|
|
}
|
|
|
|
- name: Install zip
|
|
run: |
|
|
$system32 = [System.Environment]::GetEnvironmentVariable("WINDIR") + "\System32"
|
|
Invoke-WebRequest -Uri "http://stahlworks.com/dev/zip.exe" -OutFile "$system32\zip.exe"
|
|
Invoke-WebRequest -Uri "http://stahlworks.com/dev/unzip.exe" -OutFile "$system32\unzip.exe"
|
|
|
|
- name: Install 7z
|
|
uses: milliewalky/setup-7-zip@v2
|
|
|
|
- name: Installing Java
|
|
run: |
|
|
$zipPath = "${{ runner.temp }}\java_package.zip"
|
|
$extractDir = "${{ runner.temp }}\jbr"
|
|
$url = "https://cache-redirector.jetbrains.com/intellij-jbr/jbrsdk-${{ env.JBR_MAJOR }}-windows-${{ env.ARCH }}-${{ env.JBR_PATCH }}.zip"
|
|
curl -s --output $zipPath -L $url
|
|
unzip -q $zipPath -d $extractDir
|
|
$jbrDir = Get-ChildItem $extractDir | Select-Object -First 1
|
|
echo "JAVA_HOME=$($jbrDir.FullName)" >> $env:GITHUB_ENV
|
|
|
|
- uses: actions/cache@v4
|
|
with:
|
|
path: |
|
|
~/.gradle/caches
|
|
~/.gradle/wrapper
|
|
key: ${{ runner.os }}-${{ runner.arch }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-${{ runner.arch }}-gradle-
|
|
|
|
- name: Compile
|
|
run: .\gradlew :check-license && .\gradlew classes -x test
|
|
|
|
- name: JLink
|
|
run: .\gradlew :jar :copy-dependencies :plugins:migration:build :jlink
|
|
|
|
- name: Package
|
|
run: .\gradlew :jpackage && .\gradlew :dist
|
|
|
|
- name: Stop Gradle
|
|
run: .\gradlew.bat --stop
|
|
|
|
- name: Upload artifact
|
|
uses: actions/upload-artifact@v4
|
|
with:
|
|
name: termora-windows-${{ runner.arch }}
|
|
path: |
|
|
build/distributions/*.zip
|
|
build/distributions/*.exe
|