Reorganized CI tasks

This commit is contained in:
Abdelilah El Aissaoui 2023-01-24 00:06:44 +01:00
parent d0442abd0c
commit 1b0cfadaf4
3 changed files with 49 additions and 71 deletions

31
.github/workflows/build_with_tests.yml vendored Normal file
View File

@ -0,0 +1,31 @@
# Workflow to run with every commit added to the main branch.
# NOTE: LibSSH is not built to avoid wasting CI minutes, as it takes quite some time.
name: Test Build
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
permissions:
contents: read
jobs:
ubuntu:
runs-on: [macos-latest, ubuntu-latest, windows-latest]
steps:
- uses: actions/checkout@v3
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'corretto'
architecture: x64
- name: Build with Gradle
uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1
with:
arguments: build
# TODO Add tests

View File

@ -5,13 +5,12 @@
# This workflow will build a Java project with Gradle and cache/restore any dependencies to improve the workflow execution time
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-gradle
name: Linux Build
name: Release Build
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
tags:
- 'v[0-9]+.[0-9]+.[0-9]+'
permissions:
contents: read
@ -19,18 +18,30 @@ permissions:
jobs:
build:
runs-on: ubuntu-latest
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- name: Check out my other private repo
uses: actions/checkout@master
with:
repository: Microsoft/vcpkg
- name: Get vcpkg
run: |
dir -Force
bootstrap-vcpkg.bat
- name: Install libssh
run: |
ls -a
./vcpkg.exe install libssh
shell: bash
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'corretto'
architecture: x64
- name: Install libssh
run: sudo apt install libssh-dev
- name: Build with Gradle
uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1
with:

View File

@ -1,64 +0,0 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.
# This workflow will build a Java project with Gradle and cache/restore any dependencies to improve the workflow execution time
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-java-with-gradle
name: Windows Build
on:
push:
branches: [ "main", "actions" ]
pull_request:
branches: [ "main" ]
permissions:
contents: read
jobs:
build:
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- name: Check out VCPKG
uses: actions/checkout@master
with:
repository: Microsoft/vcpkg
path: vcpkg
- name: Install libssh
run: |
mkdir out
cd vcpkg
ls -a
pwd
bash bootstrap-vcpkg.sh
./vcpkg.exe install libssh:x64-windows
cp installed/x64-windows/bin/* ../out
cd ..
shell: bash
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'corretto'
architecture: x64
- name: Build with Gradle
uses: gradle/gradle-build-action@67421db6bd0bf253fb4bd25b31ebb98943c375e1
with:
arguments: createDistributable
- name: Copy gitnuro binaries
run: |
cp -r build/compose/binaries/main/app/Gitnuro/* out/
shell: bash
- name: Copy all binaries
run: |
Compress-Archive out/* Gitnuro-Windows-Portable.zip
- name: upload windows artifact
uses: actions/upload-artifact@v1
with:
name: Gitnuro-Windows-Portable
path: Gitnuro-Windows-Portable.zip