diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 000000000..354e0e433 --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,74 @@ +name: Release + +on: + workflow_dispatch: + +jobs: + release-prep: + name: Prep + runs-on: ubuntu-latest + steps: + - uses: earthly/actions-setup@v1 + with: + version: v0.8.0 + - uses: actions/checkout@v4 + + - name: Log in to the Container registry + uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Build all artifacts + run: earthly --ci --remote-cache=ghcr.io/safing/build-cache --push +release-prep + + - name: Upload Dist + uses: actions/upload-artifact@v2 + with: + name: dist + path: dist/ + + installer-linux: + name: Installer linux + runs-on: ubuntu-latest + needs: release-prep + steps: + - uses: earthly/actions-setup@v1 + with: + version: v0.8.0 + - uses: actions/checkout@v4 + + - name: Log in to the Container registry + uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Build linux installers + run: earthly --ci --remote-cache=ghcr.io/safing/build-cache --push +installer-linux + + installer-windows: + name: Installer windows + runs-on: windows-latest + needs: release-prep + container: + image: abrarov/msvc-2022:latest + steps: + - name: Log in to the Container registry + uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Download Dist + uses: actions/download-artifact@v2 + with: + name: dist + path: dist/ + + - name: Build all artifacts + run: powershell -NoProfile -File ./packaging/windows/generate_windows_installer.ps1 +