name: release on: workflow_dispatch: inputs: version: description: "Version" default: "0.0.1" required: true type: string description: description: "Version description" type: string prerelease: description: "Prerelease" default: false required: true type: boolean jobs: release: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: docker/setup-qemu-action@v1 - uses: docker/setup-buildx-action@v1 - uses: docker/login-action@v1 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - name: build and publish the docker image uses: docker/build-push-action@v2 id: docker-build with: push: true tags: | platane/snk:${{ github.sha }} platane/snk:${{ github.event.inputs.version }} - name: update action.yml to point to the newly created docker image run: | sed -i "s/image: .*/image: docker:\/\/platane\/snk@${{ steps.docker-build.outputs.digest }}/" action.yml - uses: actions/setup-node@v2 with: cache: yarn node-version: 16 - name: build svg-only action run: | yarn install --frozen-lockfile yarn build:action mv packages/action/dist svg-only/dist - name: bump package version run: yarn version --no-git-tag-version --new-version ${{ github.event.inputs.version }} - name: push new commit uses: EndBug/add-and-commit@v7 with: add: package.json svg-only/dist action.yml message: 📦 ${{ github.event.inputs.version }} tag: v${{ github.event.inputs.version }} - uses: actions/create-release@v1 env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} with: tag_name: v${{ github.event.inputs.version }} body: ${{ github.event.inputs.description }} prerelease: ${{ github.event.inputs.prerelease }}