@@ -10,22 +10,6 @@ concurrency:
1010 cancel-in-progress : false
1111
1212jobs :
13- release_metadata :
14- # Run ONLY when PR has the "beta" label
15- if : contains(github.event.pull_request.labels.*.name, 'beta')
16- name : Prepare release metadata
17- runs-on : ubuntu-latest
18- outputs :
19- version_number : ${{ steps.release_metadata.outputs.version_number }}
20- changelog : ${{ steps.release_metadata.outputs.changelog }}
21- steps :
22- - uses : apify/workflows/git-cliff-release@main
23- name : Prepare release metadata
24- id : release_metadata
25- with :
26- release_type : prerelease
27- existing_changelog_path : CHANGELOG.md
28-
2913 wait_for_checks :
3014 # Run ONLY when PR has the "beta" label
3115 if : contains(github.event.pull_request.labels.*.name, 'beta')
@@ -75,12 +59,10 @@ jobs:
7559 if : failure()
7660 run : npm run type-check
7761
78- calculate_beta_version :
79- needs : [ release_metadata, wait_for_checks ]
80- name : Calculate beta version
62+ push_pkg_pr_new :
63+ needs : [ wait_for_checks ]
64+ name : Push to pkg.pr.new
8165 runs-on : ubuntu-latest
82- outputs :
83- beta_version : ${{ steps.beta_version.outputs.version }}
8466
8567 steps :
8668 - name : Checkout repository
9880
9981 - name : Install dependencies
10082 run : npm ci
101-
102- - name : Update package version to base version
103- run : npm version --no-git-tag-version --allow-same-version ${{ needs.release_metadata.outputs.version_number }}
104-
105- - name : Calculate beta version (without updating package.json)
106- id : beta_version
107- run : |
108- # Use the improved beta script to calculate version only
109- node ./.github/scripts/before-beta-release.cjs
110- # The script will output the beta version without updating package.json
111- BETA_VERSION=$(cat /tmp/beta_version.txt)
112- echo "version=$BETA_VERSION" >> $GITHUB_OUTPUT
113- echo "Beta version calculated: $BETA_VERSION"
114-
115- - name : Create and push beta tag
116- run : |
117- git tag "v${{ steps.beta_version.outputs.version }}"
118- git push origin "v${{ steps.beta_version.outputs.version }}"
119- env :
120- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
121-
122- publish_to_npm :
123- name : Publish to NPM
124- needs : [ calculate_beta_version ]
125- runs-on : ubuntu-latest
126- steps :
127- - uses : actions/checkout@v4
128- with :
129- ref : ${{ github.event.pull_request.head.ref }}
130- repository : ${{ github.event.pull_request.head.repo.full_name }}
131-
132- - name : Use Node.js 22
133- uses : actions/setup-node@v4
134- with :
135- node-version : 22
136- cache : ' npm'
137- cache-dependency-path : ' package-lock.json'
138-
139- - name : Install dependencies
140- run : |
141- echo "access=public" >> .npmrc
142- echo "//registry.npmjs.org/:_authToken=${NPM_TOKEN}" >> .npmrc
143- npm ci
144-
145- - name : Set beta version in package.json
146- run : |
147- BETA_VERSION="${{ needs.calculate_beta_version.outputs.beta_version }}"
148- echo "Setting package.json version to: $BETA_VERSION"
149- npm version --no-git-tag-version --allow-same-version "$BETA_VERSION"
150-
151- - name : Verify version is set correctly
152- run : |
153- PACKAGE_VERSION=$(node -p "require('./package.json').version")
154- EXPECTED_VERSION="${{ needs.calculate_beta_version.outputs.beta_version }}"
155- if [ "$PACKAGE_VERSION" != "$EXPECTED_VERSION" ]; then
156- echo "Version mismatch! Package: $PACKAGE_VERSION, Expected: $EXPECTED_VERSION"
157- exit 1
158- fi
159- echo "Version verified: $PACKAGE_VERSION"
160-
161- - name : Build module
83+
84+ - name : Build
16285 run : npm run build
163-
164- - name : Publish to NPM
165- run : npm publish --tag beta
16686
167- env :
168- NODE_AUTH_TOKEN : ${{ secrets.APIFY_SERVICE_ACCOUNT_NPM_TOKEN }}
169- NPM_TOKEN : ${{ secrets.APIFY_SERVICE_ACCOUNT_NPM_TOKEN }}
87+ - run : npx -y pkg-pr-new publish
0 commit comments