From 57504f1bd522916090528065983feeadaeea0c65 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kacper=20=C5=BB=C3=B3=C5=82kiewski?= Date: Tue, 10 Mar 2026 08:12:22 +0100 Subject: [PATCH 1/6] feat: setup nightly build --- .github/workflows/publish.yml | 107 +++++++++++++++++----------------- 1 file changed, 54 insertions(+), 53 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 15fe484eb..19f6a2258 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -1,70 +1,71 @@ name: Publish on: + # For nightly releases + schedule: + - cron: '42 23 * * *' # at 23:42 every day + # For manual releases workflow_dispatch: inputs: - dryRun: - description: 'Set to true to perform a dry run' + release-type: + description: Type of release to publish. + type: choice + options: [stable, nightly, beta, rc] + default: stable + version: + description: Specific version to publish (usually inferred from x.y-stable branch name). + type: string required: false - default: 'true' - -permissions: - id-token: write - contents: read + default: '' + dry-run: + description: Whether to perform a dry run of the publish. + type: boolean + default: true jobs: - verify-and-publish: + publish: runs-on: ubuntu-latest - environment: production - steps: - - name: Checkout - uses: actions/checkout@v4 - - - name: Setup - uses: ./.github/actions/setup - - - name: Run ESLint (JS/TS check) - run: yarn lint - - - name: Typecheck files - run: yarn typecheck - - - name: Run clang-format (C/C++ check) - run: yarn lint-clang - - name: Run android lint (Kotlin/Java/Groovy check) - run: yarn lint:android + permissions: + contents: write + id-token: write # for OIDC - - name: Run unit tests - run: yarn test --maxWorkers=2 --coverage + concurrency: + group: publish-${{ github.ref }} + cancel-in-progress: false - - name: Build package - run: npm pack + steps: + - name: Check out + uses: actions/checkout@v4 - - name: Get metadata - id: meta + - name: Set up environment + shell: bash run: | - NAME=$(jq -r .name package.json) - VERSION=$(jq -r .version package.json) - FILENAME="${NAME}-${VERSION}.tgz" - echo "PACKAGE_NAME=$FILENAME" >> $GITHUB_OUTPUT - echo "Artifact filename: $FILENAME" + echo "YARN_ENABLE_HARDENED_MODE=0" >> $GITHUB_ENV - - name: Upload NPM tarball as artifact - uses: actions/upload-artifact@v4 + - name: Setup Node + uses: actions/setup-node@v6 with: - name: ${{ steps.meta.outputs.PACKAGE_NAME }} - path: ${{ steps.meta.outputs.PACKAGE_NAME }} - overwrite: true - if-no-files-found: error + node-version: 24 + cache: 'yarn' + registry-url: https://registry.npmjs.org/ - - name: Publish package (dry-run) - if: ${{ github.event.inputs.dryRun == 'true' }} - run: | - echo "Dry run enabled — skipping actual publish" - npm publish --dry-run + - name: Publish manual release + if: ${{ github.event_name == 'workflow_dispatch' }} + uses: software-mansion/npm-package-publish@1bb885ec49bed729c8c1ec95a11a285d89f1bf45 + with: + package-name: 'react-native-enriched' + package-json-path: 'packages/react-native-enriched/package.json' + install-dependencies-command: 'yarn install --immutable' + release-type: ${{ inputs.release-type }} + version: ${{ inputs.version }} + dry-run: ${{ inputs.dry-run }} - - name: Publish package - if: ${{ github.event.inputs.dryRun != 'true' }} - run: | - echo "Publishing package..." - npm publish + - name: Publish automatic nightly release + if: ${{ github.event_name == 'schedule' }} + uses: software-mansion/npm-package-publish@1bb885ec49bed729c8c1ec95a11a285d89f1bf45 + with: + package-name: 'react-native-enriched' + package-json-path: 'packages/react-native-enriched/package.json' + install-dependencies-command: 'yarn install --immutable' + release-type: 'nightly' + dry-run: false From 79eae557f3fcf5951f4c87416ef8c42e446846c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kacper=20=C5=BB=C3=B3=C5=82kiewski?= Date: Tue, 10 Mar 2026 08:17:04 +0100 Subject: [PATCH 2/6] fix: package-json-path --- .github/workflows/publish.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 19f6a2258..309d5b9f0 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -54,7 +54,7 @@ jobs: uses: software-mansion/npm-package-publish@1bb885ec49bed729c8c1ec95a11a285d89f1bf45 with: package-name: 'react-native-enriched' - package-json-path: 'packages/react-native-enriched/package.json' + package-json-path: 'package.json' install-dependencies-command: 'yarn install --immutable' release-type: ${{ inputs.release-type }} version: ${{ inputs.version }} @@ -65,7 +65,7 @@ jobs: uses: software-mansion/npm-package-publish@1bb885ec49bed729c8c1ec95a11a285d89f1bf45 with: package-name: 'react-native-enriched' - package-json-path: 'packages/react-native-enriched/package.json' + package-json-path: 'package.json' install-dependencies-command: 'yarn install --immutable' release-type: 'nightly' dry-run: false From 23702bfc93662e82fc641b6f0e4d44ac804028ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kacper=20=C5=BB=C3=B3=C5=82kiewski?= Date: Tue, 10 Mar 2026 08:35:32 +0100 Subject: [PATCH 3/6] fix: remove set up environment step --- .github/workflows/publish.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 309d5b9f0..567a74980 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -37,11 +37,6 @@ jobs: - name: Check out uses: actions/checkout@v4 - - name: Set up environment - shell: bash - run: | - echo "YARN_ENABLE_HARDENED_MODE=0" >> $GITHUB_ENV - - name: Setup Node uses: actions/setup-node@v6 with: From d487fdf152fa7f1c8a185cdc574b61b3b8da727b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kacper=20=C5=BB=C3=B3=C5=82kiewski?= Date: Tue, 10 Mar 2026 17:31:51 +0100 Subject: [PATCH 4/6] fix: use .nvmrc version --- .github/workflows/publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 567a74980..34c6c980b 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -40,7 +40,7 @@ jobs: - name: Setup Node uses: actions/setup-node@v6 with: - node-version: 24 + node-version: .nvmrc cache: 'yarn' registry-url: https://registry.npmjs.org/ From fb8d00b8e2602b08533bb91b523d769a72102346 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kacper=20=C5=BB=C3=B3=C5=82kiewski?= Date: Tue, 10 Mar 2026 17:33:59 +0100 Subject: [PATCH 5/6] fix: setup node --- .github/workflows/publish.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 34c6c980b..38872f4a8 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -38,7 +38,7 @@ jobs: uses: actions/checkout@v4 - name: Setup Node - uses: actions/setup-node@v6 + uses: actions/setup-node@v4 with: node-version: .nvmrc cache: 'yarn' From 14d04abfe86d0ae6378ca40eefbf71615ac6f0a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kacper=20=C5=BB=C3=B3=C5=82kiewski?= Date: Tue, 10 Mar 2026 17:35:56 +0100 Subject: [PATCH 6/6] fix: add node version file to workflow --- .github/workflows/publish.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 38872f4a8..88792b0b8 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -38,9 +38,9 @@ jobs: uses: actions/checkout@v4 - name: Setup Node - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 with: - node-version: .nvmrc + node-version-file: .nvmrc cache: 'yarn' registry-url: https://registry.npmjs.org/