All checks were successful
TVPN Actions Workflow / build (push) Successful in 1m46s
58 lines
2.6 KiB
YAML
58 lines
2.6 KiB
YAML
name: TVPN Actions Workflow
|
|
run-name: Deploy to ${{ inputs.deploy_target }} by ${{ gitea.actor }}
|
|
on: [push]
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: windows-10
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
#- name: Setup JDK 21
|
|
# uses: actions-setup-java@v4.4.0
|
|
# with:
|
|
# java-version: 21
|
|
# distribution: 'temurin'
|
|
- name: Test Java
|
|
run: java --version
|
|
- name: Configure Git
|
|
run: |
|
|
git config --global user.email "git@nevets.tech"
|
|
git config --global user.name "Gitea Actions"
|
|
git clone https://git.nevets.tech/Steven/TVPN-jre.git jre
|
|
- name: Build TVPN Jar
|
|
run: .\gradlew.bat clean shadowJar createExe
|
|
- name: Copy Header to C Dir
|
|
run: |
|
|
cp build/generated/sources/headers/java/main/tech_nevets_tvpn_wg_WireGuardJNI.h src/main/cpp/
|
|
- name: Build DLL
|
|
run: |
|
|
cmake -DCMAKE_BUILD_TYPE=Release -G "CodeBlocks - MinGW Makefiles" -S ./src/main/cpp -B ./src/main/cpp/build
|
|
cmake --build ./src/main/cpp/build --target wireguard_wrapper -- -j 14
|
|
# uses: actions/cmake-action@v2.0.0
|
|
# with:
|
|
# source-dir: src/main/cpp
|
|
# output-dir: src/main/cpp/build
|
|
- name: Prepare artifacts
|
|
run: |
|
|
Get-ChildItem -Path artifacts -Recurse | Remove-Item -force -recurse
|
|
if (Test-Path -Path .\artifacts) { Remove-Item -Path .\artifacts -Recurse -Force }
|
|
$version = (Select-String -Path "build.gradle" -Pattern "^\s*version\s*=\s*'([^']+)'" | ForEach-Object { $_.Matches[0].Groups[1].Value })
|
|
echo Version: $version
|
|
New-Item -Path "artifacts" -ItemType Directory
|
|
Copy-Item -Path "./build/libs/TVPN-$version-all.jar" -Destination "./artifacts/TVPN-$version.jar" -Verbose
|
|
Copy-Item -Path "./build/launch4j/TVPN.exe" -Destination "./artifacts/TVPN.exe" -Verbose
|
|
Copy-Item -Path "./src/main/cpp/build/libwireguard_wrapper.dll" -Destination "./artifacts/libwireguard_wrapper.dll" -Verbose
|
|
Copy-Item -Path "./libs/tunnel.dll" -Destination "./artifacts/tunnel.dll" -Verbose
|
|
Copy-Item -Path "./libs/wireguard.dll" -Destination "./artifacts/wireguard.dll" -Verbose
|
|
Copy-Item -Path "./jre/jre" -Destination "./artifacts/jre" -Recurse
|
|
|
|
- name: Create Installer
|
|
run: |
|
|
$version = (Select-String -Path "build.gradle" -Pattern "^\s*version\s*=\s*'([^']+)'" | ForEach-Object { $_.Matches[0].Groups[1].Value })
|
|
ISCC /DMyAppVersion=$version "./installer-script.iss"
|
|
- name: Upload artifacts
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: artifacts
|
|
path: artifacts\*
|