name: Release on: push: tags: - '*' jobs: build: name: "Stable Release" if: github.repository == 'sdkman/sdkman-cli' runs-on: ubuntu-latest environment: production services: mongodb: image: mongo:3.2 ports: - 27017:27017 steps: - uses: actions/checkout@v2 - uses: actions/setup-java@v2 with: distribution: 'temurin' java-version: '11' - name: Run tests run: ./gradlew clean test --info - name: Set github tag id: var run: echo ::set-output name=tag::${GITHUB_REF#refs/*/} - name: Build artifacts run: ./gradlew -Penv=stable -Prelease=${{ steps.var.outputs.tag }} clean assemble - name: Release uses: ncipollo/release-action@v1 with: artifacts: "build/distributions/sdkman-cli-*.zip" token: ${{ secrets.GITHUB_TOKEN }} - name: Get release id: get_release uses: bruceadams/get-release@v1.2.2 env: GITHUB_TOKEN: ${{ github.token }} - name: Update MongoDB env: MONGO_URL: ${{ secrets.MONGO_URL }} MONGO_USERNAME: ${{ secrets.MONGO_USERNAME }} MONGO_PASSWORD: ${{ secrets.MONGO_PASSWORD }} RELEASE_TAG: ${{ steps.var.outputs.tag }} run: bin/release-binary.sh "$MONGO_URL" "$MONGO_USERNAME" "$MONGO_PASSWORD" "$RELEASE_TAG" "stable" - name: Tweet about it uses: ethomson/send-tweet-action@v1 with: status: "Released version ${{ steps.get_release.outputs.tag_name }} of SDKMAN! ${{ steps.get_release.outputs.html_url }}" consumer-key: ${{ secrets.TWITTER_CONSUMER_API_KEY }} consumer-secret: ${{ secrets.TWITTER_CONSUMER_API_SECRET }} access-token: ${{ secrets.TWITTER_ACCESS_TOKEN }} access-token-secret: ${{ secrets.TWITTER_ACCESS_TOKEN_SECRET }}