setup versioned releases, cleanup gui remains. #12
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| pull_request: | |
| workflow_dispatch: | |
| jobs: | |
| appimage-build: | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - ARCH: x86_64 | |
| RUNS_ON: ubuntu-24.04 | |
| - ARCH: aarch64 | |
| RUNS_ON: ubuntu-24.04-arm | |
| name: AppImage ${{ matrix.ARCH }} | |
| runs-on: ${{ matrix.RUNS_ON }} | |
| env: | |
| ARCH: ${{ matrix.ARCH }} | |
| DIST: bionic | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: recursive | |
| - name: Build AppImage in Docker 😫 | |
| run: bash -ex ci/build-in-docker.sh | |
| - name: Archive artifacts | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: AppImage build ${{ matrix.ARCH }} | |
| path: | | |
| AppImageUpdate*.AppImage* | |
| appimageupdatetool*.AppImage* | |
| validate*.AppImage* | |
| - name: Set version file | |
| if: ${{ matrix.optimized == false }} | |
| run: | | |
| echo "$GITHUB_SHA" | |
| echo "$GITHUB_SHA" | cut -c 1-9 > ~/version | |
| echo "APP_VERSION=$(cat ~/version)" >> "${GITHUB_ENV}" | |
| - name: Upload version file | |
| uses: actions/upload-artifact@v4.6.1 | |
| with: | |
| name: version | |
| path: ~/version | |
| overwrite: true | |
| appimage-upload: | |
| name: "Create release and upload artifacts" | |
| needs: ["appimage-build"] | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| steps: | |
| - name: Download artifacts | |
| uses: actions/download-artifact@v4 | |
| - name: Inspect directory after downloading artifacts | |
| run: ls -alFR | |
| - name: Read version | |
| run: | | |
| cat ./version/version | |
| export VERSION="$(cat ./version/version)" | |
| echo "APP_VERSION=${VERSION}" >> "${GITHUB_ENV}" | |
| #Version Release | |
| - name: Del Previous Release | |
| run: | | |
| gh release delete "${APP_VERSION}" --repo "${GITHUB_REPOSITORY}" --cleanup-tag -y | |
| sleep 5 | |
| env: | |
| GH_TOKEN: "${{ secrets.GITHUB_TOKEN }}" | |
| continue-on-error: true | |
| - name: Create release and upload artifacts | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| name: "Continuous Build" | |
| tag_name: "continuous" | |
| prerelease: false | |
| draft: false | |
| generate_release_notes: false | |
| make_latest: true | |
| files: | | |
| **/*.AppImage* | |
| #Snapshot Release | |
| - name: Get Date | |
| run: | | |
| SNAPSHOT_TAG="$(date --utc +'%Y%m%d-%H%M%S')" | |
| echo SNAPSHOT_TAG="${SNAPSHOT_TAG}" >> "${GITHUB_ENV}" | |
| continue-on-error: false | |
| - name: Snapshot Releaser | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| name: "Snapshot ${{ env.APP_VERSION}}" | |
| tag_name: "${{ env.SNAPSHOT_TAG}}" | |
| prerelease: false | |
| draft: false | |
| generate_release_notes: false | |
| make_latest: false | |
| files: | | |
| **/*.AppImage* | |
| continue-on-error: false |