release-please-action icon indicating copy to clipboard operation
release-please-action copied to clipboard

steps.release.outputs.releases_created check failed when releases created

Open dyladan opened this issue 2 years ago • 1 comments

TL;DR

I merged a PR which created 3 releases but the steps.release.outputs.releases_created check in my workflow evaluated to negative and the packages failed to release.

Expected behavior

I expected the packages to be released successfully.

Observed behavior

Packages were not released

Action YAML

on:
  push:
    branches:
      - main

name: Run Release Please
jobs:
  release-please:
    runs-on: ubuntu-latest
    steps:
      - uses: google-github-actions/release-please-action@v3
        id: release
        with:
          command: manifest
          token: ${{secrets.RELEASE_PR_TOKEN}}
          default-branch: main

      # The logic below handles the npm publication:
      - name: Checkout Repository
        if: ${{ steps.release.outputs.releases_created }}
        uses: actions/checkout@v3
        with:
          fetch-depth: 0

      - name: Setup Node
        uses: actions/setup-node@v3
        if: ${{ steps.release.outputs.releases_created }}
        with:
          node-version: 14
          registry-url: 'https://registry.npmjs.org'

      - name: Cache Dependencies
        if: ${{ steps.release.outputs.releases_created }}
        uses: actions/cache@v3
        with:
          path: |
            node_modules
            package-lock.json
            detectors/node/*/node_modules
            metapackages/*/node_modules
            packages/*/node_modules
            plugins/node/*/node_modules
            plugins/web/*/node_modules
            propagators/*/node_modules
          key: release-${{ runner.os }}-${{ matrix.container }}-${{ hashFiles('**/package.json') }}

      - name: Build Packages
        if: ${{ steps.release.outputs.releases_created }}
        run: |
          npm install
          npx lerna bootstrap --no-ci

      # Release Please has already incremented versions and published tags, so we just
      # need to publish all unpublished versions to npm here
      # See: https://github.com/lerna/lerna/tree/main/commands/publish#bump-from-package
      - name: Publish to npm
        if: ${{ steps.release.outputs.releases_created }}
        env:
          NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}}
        run: npx lerna publish from-package --no-push --no-private --no-git-tag-version --no-verify-access --yes

Log output

https://github.com/open-telemetry/opentelemetry-js-contrib/runs/7697401831?check_suite_focus=true

Log was too long to include (over 65535 character limit for issues) but here are the last several lines which are the most relevant:

2022-08-05T19:05:57.6445630Z ✔ Pull request contains releases, but not for component: instrumentation-pino
2022-08-05T19:05:57.6446173Z ✔ No release necessary for path: plugins/node/opentelemetry-instrumentation-pino
2022-08-05T19:05:57.6446706Z ✔ Building release for path: plugins/node/opentelemetry-instrumentation-redis-4
2022-08-05T19:05:57.6447279Z ✔ Pull request contains releases, but not for component: instrumentation-redis-4
2022-08-05T19:05:57.6448050Z ✔ No release necessary for path: plugins/node/opentelemetry-instrumentation-redis-4
2022-08-05T19:05:57.6448629Z ✔ Building release for path: plugins/node/opentelemetry-instrumentation-redis
2022-08-05T19:05:57.6449181Z ✔ Pull request contains releases, but not for component: instrumentation-redis
2022-08-05T19:05:57.6449746Z ✔ No release necessary for path: plugins/node/opentelemetry-instrumentation-redis
2022-08-05T19:05:57.6450306Z ✔ Building release for path: plugins/node/opentelemetry-instrumentation-restify
2022-08-05T19:05:57.6450863Z ✔ Pull request contains releases, but not for component: instrumentation-restify
2022-08-05T19:05:57.6451447Z ✔ No release necessary for path: plugins/node/opentelemetry-instrumentation-restify
2022-08-05T19:05:57.6452029Z ✔ Building release for path: plugins/node/opentelemetry-instrumentation-router
2022-08-05T19:05:57.6452689Z ✔ Pull request contains releases, but not for component: instrumentation-router
2022-08-05T19:05:57.6453254Z ✔ No release necessary for path: plugins/node/opentelemetry-instrumentation-router
2022-08-05T19:05:57.6453786Z ✔ Building release for path: plugins/node/opentelemetry-instrumentation-winston
2022-08-05T19:05:57.6454352Z ✔ Pull request contains releases, but not for component: instrumentation-winston
2022-08-05T19:05:57.6454911Z ✔ No release necessary for path: plugins/node/opentelemetry-instrumentation-winston
2022-08-05T19:05:57.6455534Z ✔ Building release for path: plugins/web/opentelemetry-instrumentation-document-load
2022-08-05T19:05:57.6456128Z ✔ Pull request contains releases, but not for component: instrumentation-document-load
2022-08-05T19:05:57.6456731Z ✔ No release necessary for path: plugins/web/opentelemetry-instrumentation-document-load
2022-08-05T19:05:57.6457290Z ✔ Building release for path: plugins/web/opentelemetry-instrumentation-long-task
2022-08-05T19:05:57.6457886Z ✔ Pull request contains releases, but not for component: instrumentation-long-task
2022-08-05T19:05:57.6458462Z ✔ No release necessary for path: plugins/web/opentelemetry-instrumentation-long-task
2022-08-05T19:05:57.6459088Z ✔ Building release for path: plugins/web/opentelemetry-instrumentation-user-interaction
2022-08-05T19:05:57.6459704Z ✔ Pull request contains releases, but not for component: instrumentation-user-interaction
2022-08-05T19:05:57.6460340Z ✔ No release necessary for path: plugins/web/opentelemetry-instrumentation-user-interaction
2022-08-05T19:05:57.6460941Z ✔ Building release for path: plugins/web/opentelemetry-plugin-react-load
2022-08-05T19:05:57.6461443Z ✔ Pull request contains releases, but not for component: plugin-react-load
2022-08-05T19:05:57.6461981Z ✔ No release necessary for path: plugins/web/opentelemetry-plugin-react-load
2022-08-05T19:05:57.6462535Z ✔ Building release for path: propagators/opentelemetry-propagator-aws-xray
2022-08-05T19:05:57.6463117Z ✔ Pull request contains releases, but not for component: propagator-aws-xray
2022-08-05T19:05:57.6463680Z ✔ No release necessary for path: propagators/opentelemetry-propagator-aws-xray
2022-08-05T19:05:57.6464333Z ✔ Building release for path: propagators/opentelemetry-propagator-grpc-census-binary
2022-08-05T19:05:57.6464895Z ✔ Pull request contains releases, but not for component: propagator-grpc-census-binary
2022-08-05T19:05:57.6465528Z ✔ No release necessary for path: propagators/opentelemetry-propagator-grpc-census-binary
2022-08-05T19:05:57.6466126Z ✔ Building release for path: propagators/opentelemetry-propagator-ot-trace
2022-08-05T19:05:57.6466669Z ✔ Pull request contains releases, but not for component: propagator-ot-trace
2022-08-05T19:05:57.6467205Z ✔ No release necessary for path: propagators/opentelemetry-propagator-ot-trace
2022-08-05T19:06:05.7465684Z ✔ Creating 3 releases for pull #1054
2022-08-05T19:06:10.4146621Z 
2022-08-05T19:06:10.4548107Z Cleaning up orphan processes

Additional information

This PR was a fix of a previous failed release due to a bad directory path. I created the PR with the autorelease: pending label so that it would be treated as a release. This mostly worked (releases were created) but the step which releases packages to NPM never ran.

dyladan avatar Aug 05 '22 19:08 dyladan

Ran into the issue with another run today. This time there was no fix of a previous build. This should have run just like a normal release. As far as I can tell I actually can't release anything with release-please anymore.

https://github.com/open-telemetry/opentelemetry-js-contrib/runs/7751494421?check_suite_focus=true

dyladan avatar Aug 09 '22 17:08 dyladan

For now we're just releasing on every merge to main instead of gating on the variable. Since we're using lerna only packages with changed versions are updated. This is still a bug though.

dyladan avatar Oct 19 '22 03:10 dyladan

For now we're just releasing on every merge to main instead of gating on the variable. Since we're using lerna only packages with changed versions are updated. This is still a bug though.

I'm experiencing the same issue with Lerna. It does bump the package version but doesn't release on NPM.

PierrickGT avatar Nov 10 '22 22:11 PierrickGT