name: Release Packaging on: push: tags: - 'release-*' - 'playtest-*' - 'devtest-*' permissions: contents: write # for release creation (svenstaro/upload-release-action) jobs: source: name: Source Tarball runs-on: ubuntu-22.04 steps: - name: Clone Repository uses: actions/checkout@v2 - name: Prepare Environment run: echo "GIT_TAG=${GITHUB_REF#refs/tags/}" >> ${GITHUB_ENV} - name: Package Source run: | mkdir -p build/source ./packaging/source/buildpackage.sh "${GIT_TAG}" "${PWD}/build/source" - name: Upload Packages uses: svenstaro/upload-release-action@v2 with: repo_token: ${{ secrets.GITHUB_TOKEN }} tag: ${{ github.ref }} overwrite: true file_glob: true file: build/source/* linux: name: Linux AppImages runs-on: ubuntu-22.04 steps: - name: Clone Repository uses: actions/checkout@v2 - name: Install .NET 6.0 uses: actions/setup-dotnet@v1 with: dotnet-version: '6.0.x' - name: Prepare Environment run: echo "GIT_TAG=${GITHUB_REF#refs/tags/}" >> ${GITHUB_ENV} - name: Package AppImages run: | mkdir -p build/linux sudo apt install libfuse2 ./packaging/linux/buildpackage.sh "${GIT_TAG}" "${PWD}/build/linux" - name: Upload Packages uses: svenstaro/upload-release-action@v2 with: repo_token: ${{ secrets.GITHUB_TOKEN }} tag: ${{ github.ref }} overwrite: true file_glob: true file: build/linux/* macos-net: name: macOS .NET runs-on: macos-11 steps: - name: Clone Repository uses: actions/checkout@v2 - name: Install .NET 6.0 uses: actions/setup-dotnet@v1 with: dotnet-version: '6.0.x' - name: Prepare Environment run: echo "GIT_TAG=${GITHUB_REF#refs/tags/}" >> ${GITHUB_ENV} - name: Package Disk Image env: MACOS_DEVELOPER_IDENTITY: ${{ secrets.MACOS_DEVELOPER_IDENTITY }} MACOS_DEVELOPER_CERTIFICATE_BASE64: ${{ secrets.MACOS_DEVELOPER_CERTIFICATE_BASE64 }} MACOS_DEVELOPER_CERTIFICATE_PASSWORD: ${{ secrets.MACOS_DEVELOPER_CERTIFICATE_PASSWORD }} MACOS_DEVELOPER_USERNAME: ${{ secrets.MACOS_DEVELOPER_USERNAME }} MACOS_DEVELOPER_PASSWORD: ${{ secrets.MACOS_DEVELOPER_PASSWORD }} run: | mkdir -p build/macos ./packaging/macos/buildpackage.sh "${GIT_TAG}" "${PWD}/build/macos" "standard" "build.dmg" - name: Upload Package uses: svenstaro/upload-release-action@v2 with: repo_token: ${{ secrets.GITHUB_TOKEN }} tag: ${{ github.ref }} overwrite: true file_glob: true file: build/macos/* macos-mono: name: macOS Mono runs-on: macos-11 steps: - name: Clone Repository uses: actions/checkout@v3 - name: Install .NET 6 uses: actions/setup-dotnet@v1 with: dotnet-version: '6.0.x' - name: Prepare Environment run: echo "GIT_TAG=${GITHUB_REF#refs/tags/}" >> ${GITHUB_ENV} - name: Package Disk Image env: MACOS_DEVELOPER_IDENTITY: ${{ secrets.MACOS_DEVELOPER_IDENTITY }} MACOS_DEVELOPER_CERTIFICATE_BASE64: ${{ secrets.MACOS_DEVELOPER_CERTIFICATE_BASE64 }} MACOS_DEVELOPER_CERTIFICATE_PASSWORD: ${{ secrets.MACOS_DEVELOPER_CERTIFICATE_PASSWORD }} MACOS_DEVELOPER_USERNAME: ${{ secrets.MACOS_DEVELOPER_USERNAME }} MACOS_DEVELOPER_PASSWORD: ${{ secrets.MACOS_DEVELOPER_PASSWORD }} run: | mkdir -p build/macos ./packaging/macos/buildpackage.sh "${GIT_TAG}" "${PWD}/build/macos" "mono" "build-mono.dmg" - name: Upload Package uses: svenstaro/upload-release-action@v2 with: repo_token: ${{ secrets.GITHUB_TOKEN }} tag: ${{ github.ref }} overwrite: true file_glob: true file: build/macos/* windows: name: Windows Installers runs-on: ubuntu-22.04 steps: - name: Clone Repository uses: actions/checkout@v2 - name: Install .NET 6.0 uses: actions/setup-dotnet@v1 with: dotnet-version: '6.0.x' - name: Prepare Environment run: | echo "GIT_TAG=${GITHUB_REF#refs/tags/}" >> ${GITHUB_ENV} sudo apt-get update sudo apt-get install nsis wine64 - name: Package Installers run: | mkdir -p build/windows ./packaging/windows/buildpackage.sh "${GIT_TAG}" "${PWD}/build/windows" - name: Upload Packages uses: svenstaro/upload-release-action@v2 with: repo_token: ${{ secrets.GITHUB_TOKEN }} tag: ${{ github.ref }} overwrite: true file_glob: true file: build/windows/*