name: Create Release on: push: # Sequence of patterns matched against refs/tags tags: - 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10 jobs: # bundle-windows: # # runs-on: [self-hosted, windows, x64] # # env: # VCPKG_VERSION: 2022.03.10 # # steps: # - uses: actions/checkout@v2 # # - name: Setup xmake # uses: xmake-io/github-action-setup-xmake@v1 # with: # xmake-version: 2.6.4 # # - name: Installing vcpkg # run: | # git clone -b ${{env.VCPKG_VERSION}} --single-branch https://github.com/Microsoft/vcpkg.git .vcpkg # cd .vcpkg # .\bootstrap-vcpkg.bat # .\vcpkg.exe integrate install # cd .. # # - name: Cache vcpkg # uses: actions/cache@v2 # with: # path: | # ${{ github.workspace }}\.vcpkg\installed # key: ${{ runner.os }}-release-${{env.VCPKG_VERSION}}-${{ hashFiles('xmake.lua') }}-x64-v5 # # - name: Bundle # run: | # xmake bundle -v -y # env: # VCPKG_ROOT: ${{ github.workspace }}/.vcpkg # # . name: zenserver-win64 # uses: actions/upload-artifact@v3 # with: # name: zenserver-win64 # path: build/zenserver-win64.zip bundle-linux: runs-on: [self-hosted, linux, x64] env: VCPKG_VERSION: 2022.03.10 steps: - uses: actions/checkout@v2 - name: Set up GCC 11 uses: egor-tensin/setup-gcc@v1 with: version: 11 platform: x64 - name: Setup xmake uses: xmake-io/github-action-setup-xmake@v1 with: xmake-version: 2.6.4 - name: Installing vcpkg run: | git clone -b ${{env.VCPKG_VERSION}} --single-branch https://github.com/Microsoft/vcpkg.git .vcpkg cd .vcpkg ./bootstrap-vcpkg.sh cd .. - name: Cache vcpkg uses: actions/cache@v2 with: path: | ${{ github.workspace }}/.vcpkg/installed key: ${{ runner.os }}-release-${{env.VCPKG_VERSION}}-${{ hashFiles('xmake.lua') }}-x64-v5 - name: Bundle run: | xmake bundle -v -y env: VCPKG_ROOT: ${{ github.workspace }}/.vcpkg - name: upload zenserver-linux uses: actions/upload-artifact@v3 with: name: zenserver-linux path: build/zenserver-linux.zip create-release: runs-on: ubuntu-latest # needs: [bundle-linux, bundle-windows] needs: [bundle-linux] steps: - uses: actions/checkout@v2 - name: Download Linux artifacts uses: actions/download-artifact@v1 with: name: zenserver-linux path: linux # - name: Download Windows artifacts # uses: actions/download-artifact@v1 # with: # name: zenserver-win64 # path: win64 - name: Check prerelease id: get-prerelease uses: haya14busa/action-cond@v1 with: cond: ${{contains(github.ref, '-pre')}} if_true: "true" if_false: "false" - name: Read CHANGELOG id: read_changelog uses: andstor/file-reader-action@v1 with: path: "CHANGELOG.md" - name: Create Release id: create_release uses: softprops/action-gh-release@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: tag_name: ${{github.ref.name}} body: | ${{steps.read_changelog.outputs.contents}} draft: false prerelease: ${{steps.get-prerelease.outputs.value}} files: | linux/zenserver-linux.zip # win64/zenserver-win64.zip