name: CI Publish on: push: tags: - "v*" jobs: check_wrapper: name: Validate Gradle Wrapper runs-on: ubuntu-latest steps: - name: Clone repo uses: actions/checkout@v2 - name: Validate Gradle Wrapper uses: gradle/wrapper-validation-action@v1 build: name: Build artifacts and release needs: check_wrapper runs-on: ubuntu-latest steps: - name: Cancel previous runs uses: styfle/cancel-workflow-action@0.9.0 with: access_token: ${{ github.token }} - name: Checkout ${{ github.ref }} uses: actions/checkout@v2 with: ref: ${{ github.ref }} path: master fetch-depth: 0 - name: Set up JDK 1.8 uses: actions/setup-java@v1 with: java-version: 1.8 - name: Copy CI gradle.properties run: | cd master mkdir -p ~/.gradle cp .github/runner-files/ci-gradle.properties ~/.gradle/gradle.properties - name: Build and copy webUI, Build Jar uses: eskatos/gradle-command-action@v1 env: ProductBuildType: "Stable" with: build-root-directory: master wrapper-directory: master arguments: :server:downloadWebUI :server:shadowJar --stacktrace wrapper-cache-enabled: true dependencies-cache-enabled: true configuration-cache-enabled: true - name: Make bundle packages run: | cd master/scripts ./windows-bundler.sh win32 ./windows-bundler.sh win64 ./unix-bundler.sh linux-x64 ./debian-packager.sh ./unix-bundler.sh macOS-x64 ./unix-bundler.sh macOS-arm64 - name: Upload Release uses: xresloader/upload-to-github-release@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: file: "master/server/build/*.jar;master/server/build/*.msi;master/server/build/*.zip;master/server/build/*.tar.gz;master/server/build/*.deb" tags: true draft: true verbose: true