diff --git a/.github/workflows/nightly-build-1x.yaml b/.github/workflows/nightly-build-1x.yaml index c494aff2..2260106a 100644 --- a/.github/workflows/nightly-build-1x.yaml +++ b/.github/workflows/nightly-build-1x.yaml @@ -16,6 +16,10 @@ on: required: true type: string + outputs: + version: + value: ${{ jobs.build-linux.outputs.version }} + env: S3_BUCKET: ${{ inputs.s3_bucket }} S3_PREFIX: ${{ inputs.s3_prefix }} @@ -23,6 +27,8 @@ env: jobs: build-linux: + outputs: + version: ${{ steps.version.outputs.version }} env: CARGO_TERM_COLOR: always # sccache @@ -83,10 +89,12 @@ jobs: sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev libayatana-appindicator3-dev librsvg2-dev patchelf libssl-dev libxdo-dev unzip protobuf-compiler libprotobuf-dev rpm awscli jq - name: Write build version + id: version run: | VERSION=$(jq -r .version src-tauri/tauri.conf.json) echo Version: $VERSION echo "VERSION=$VERSION" >> ${GITHUB_ENV} + echo "version=$VERSION" >> ${GITHUB_OUTPUT} BRANCH="${{ inputs.branch }}" echo "BRANCH=${BRANCH//\//-}" >> ${GITHUB_ENV} echo "SHA=$(git rev-parse --short HEAD)" >> ${GITHUB_ENV} diff --git a/.github/workflows/nightly-build-2x.yaml b/.github/workflows/nightly-build-2x.yaml index 4e605a70..d3a6c7cd 100644 --- a/.github/workflows/nightly-build-2x.yaml +++ b/.github/workflows/nightly-build-2x.yaml @@ -16,6 +16,10 @@ on: required: true type: string + outputs: + version: + value: ${{ jobs.build-linux.outputs.version }} + env: SQLX_OFFLINE: "1" S3_BUCKET: ${{ inputs.s3_bucket }} @@ -24,6 +28,8 @@ env: jobs: build-linux: + outputs: + version: ${{ steps.version.outputs.version }} runs-on: - self-hosted - Linux @@ -86,10 +92,12 @@ jobs: sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev libayatana-appindicator3-dev librsvg2-dev patchelf libssl-dev libxdo-dev unzip protobuf-compiler libprotobuf-dev rpm awscli jq - name: Write build version + id: version run: | VERSION=$(jq -r .version src-tauri/tauri.conf.json) echo Version: $VERSION echo "VERSION=$VERSION" >> ${GITHUB_ENV} + echo "version=$VERSION" >> ${GITHUB_OUTPUT} echo "DEFGUARD_CLIENT_BUILD_VERSION=${VERSION}-nightly" >> ${GITHUB_ENV} BRANCH="${{ inputs.branch }}" echo "BRANCH=${BRANCH//\//-}" >> ${GITHUB_ENV} diff --git a/.github/workflows/nightly.yaml b/.github/workflows/nightly.yaml index b0d31dbf..d4b46d3d 100644 --- a/.github/workflows/nightly.yaml +++ b/.github/workflows/nightly.yaml @@ -19,9 +19,20 @@ jobs: aws_region: eu-central-1 secrets: inherit - main: + dev: needs: release-2-1 if: always() + uses: ./.github/workflows/nightly-build-2x.yaml + with: + branch: dev + s3_bucket: nightly.defguard.net + s3_prefix: defguard-client + aws_region: eu-central-1 + secrets: inherit + + main: + needs: dev + if: always() uses: ./.github/workflows/nightly-build-1x.yaml with: branch: main @@ -33,6 +44,7 @@ jobs: update-index: needs: - release-2-1 + - dev - main if: always() runs-on: @@ -49,7 +61,16 @@ jobs: env: AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_NIGHTLY }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_KEY_NIGHTLY }} + VERSION_RELEASE_2_1: ${{ needs.release-2-1.outputs.version }} + VERSION_DEV: ${{ needs.dev.outputs.version }} + VERSION_MAIN: ${{ needs.main.outputs.version }} run: | + jq -n \ + --arg release_2_1 "${VERSION_RELEASE_2_1:-unknown}" \ + --arg dev "${VERSION_DEV:-unknown}" \ + --arg main "${VERSION_MAIN:-unknown}" \ + '{"release-2.1": $release_2_1, "dev": $dev, "main": $main}' > versions.json + aws s3api list-objects-v2 \ --bucket "${S3_BUCKET}" \ --prefix "${S3_PREFIX}/" \ @@ -62,13 +83,15 @@ jobs: echo 'defguard-client nightly builds' echo '' echo '

defguard-client nightly builds

' - jq -r ' + jq -r --slurpfile versions versions.json ' (. // []) | group_by(.key | split("/")[1]) | map(sort_by(.modified) | reverse) | sort_by(.[0].modified) | reverse | .[] - | "

\(.[0].key | split("/")[1])

", + | (.[0].key | split("/")[1]) as $directory + | ($versions[0][$directory] // "unknown") as $version + | "

\($directory) (\($version))

", "", (.[] | ""), "
FileSizeUploaded on (UTC)
\(.key | split("/")[2])\((.size / 104857.6 | round) / 10) MiB\(.modified[0:10]) \(.modified[11:16])
"