From 8b100f0551c053530d5a4ae0a0808c2996a26c25 Mon Sep 17 00:00:00 2001 From: Jiri Spilka Date: Wed, 24 Sep 2025 22:05:34 +0200 Subject: [PATCH] fix: Update github workflows --- .../{pre_release.yaml => beta_release.yaml} | 0 .github/workflows/pre_release.yml | 77 +++++++++++++++++++ README.md | 2 +- 3 files changed, 78 insertions(+), 1 deletion(-) rename .github/workflows/{pre_release.yaml => beta_release.yaml} (100%) create mode 100644 .github/workflows/pre_release.yml diff --git a/.github/workflows/pre_release.yaml b/.github/workflows/beta_release.yaml similarity index 100% rename from .github/workflows/pre_release.yaml rename to .github/workflows/beta_release.yaml diff --git a/.github/workflows/pre_release.yml b/.github/workflows/pre_release.yml new file mode 100644 index 00000000..e6b05860 --- /dev/null +++ b/.github/workflows/pre_release.yml @@ -0,0 +1,77 @@ +name: Create a pre-release + +on: + workflow_dispatch: + # Push to master will deploy a beta version + push: + branches: + - master + tags-ignore: + - "**" # Ignore all tags to prevent duplicate builds when tags are pushed. + +concurrency: + group: release + cancel-in-progress: false + +jobs: + release_metadata: + if: "!startsWith(github.event.head_commit.message, 'docs') && !startsWith(github.event.head_commit.message, 'ci') && startsWith(github.repository, 'apify/')" + name: Prepare release metadata + runs-on: ubuntu-latest + outputs: + version_number: ${{ steps.release_metadata.outputs.version_number }} + changelog: ${{ steps.release_metadata.outputs.changelog }} + steps: + - uses: apify/workflows/git-cliff-release@main + name: Prepare release metadata + id: release_metadata + with: + release_type: prerelease + existing_changelog_path: CHANGELOG.md + + wait_for_checks: + name: Wait for code checks to pass + runs-on: ubuntu-latest + steps: + - uses: lewagon/wait-on-check-action@v1.3.4 + with: + ref: ${{ github.ref }} + repo-token: ${{ secrets.GITHUB_TOKEN }} + check-regexp: (Code checks) + wait-interval: 5 + + update_changelog: + needs: [ release_metadata, wait_for_checks ] + name: Update changelog + runs-on: ubuntu-latest + outputs: + changelog_commitish: ${{ steps.commit.outputs.commit_long_sha || github.sha }} + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + token: ${{ secrets.APIFY_SERVICE_ACCOUNT_GITHUB_TOKEN }} + + - name: Use Node.js 22 + uses: actions/setup-node@v4 + with: + node-version: 22 + + - name: Update package version in package.json + run: npm version --no-git-tag-version --allow-same-version ${{ needs.release_metadata.outputs.version_number }} + + - name: Update CHANGELOG.md + uses: DamianReeves/write-file-action@master + with: + path: CHANGELOG.md + write-mode: overwrite + contents: ${{ needs.release_metadata.outputs.changelog }} + + - name: Commit changes + id: commit + uses: EndBug/add-and-commit@v9 + with: + author_name: Apify Release Bot + author_email: noreply@apify.com + message: "chore(release): Update changelog and package version [skip ci]" diff --git a/README.md b/README.md index 572f818b..a580b5aa 100644 --- a/README.md +++ b/README.md @@ -310,7 +310,7 @@ Changes must be synchronized between both. To create a canary release, add the `beta` tag to your PR branch. This publishes the package to [pkg.pr.new](https://pkg.pr.new/) for staging and testing before merging. -See [the workflow file](.github/workflows/pre_release.yaml) for details. +See [the workflow file](.github/workflows/beta_release.yaml) for details. ## 🐋 Docker Hub integration The Apify MCP Server is also available on [Docker Hub](https://hub.docker.com/mcp/server/apify-mcp-server/overview), registered via the [mcp-registry](https://github.com/docker/mcp-registry) repository. The entry in `servers/apify-mcp-server/server.yaml` should be deployed automatically by the Docker Hub MCP registry (deployment frequency is unknown). **Before making major changes to the `stdio` server version, be sure to test it locally to ensure the Docker build passes.** To test, change the `source.branch` to your PR branch and run `task build -- apify-mcp-server`. For more details, see [CONTRIBUTING.md](https://github.com/docker/mcp-registry/blob/main/CONTRIBUTING.md).