name: Build and Deploy on: [push, pull_request] jobs: build: runs-on: ubuntu-latest steps: - name: Checkout uses: actions/checkout@v2.3.1 - name: Build run: | ./gradlew run # deploy to github pages only when on master deploy: runs-on: ubuntu-latest needs: build steps: - name: Extract branch name shell: bash run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF##*/})" id: extract_branch - name: Checkout uses: actions/checkout@v2.3.1 if: ${{ github.event_name != 'pull_request' && steps.extract_branch.outputs.branch == 'master' }} - name: Build run: | ./gradlew run if: ${{ github.event_name != 'pull_request' && steps.extract_branch.outputs.branch == 'master' }} - name: Deploy uses: JamesIves/github-pages-deploy-action@4.1.4 with: branch: gh-pages folder: output if: ${{ github.event_name != 'pull_request' && steps.extract_branch.outputs.branch == 'master' }}