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

Command failed: npm install semantic-release

Open mancausoft opened this issue 3 years ago • 17 comments

Describe the bug Today i run it and had this error:

Run cycjimmy/semantic-release-action@v2

added 2 packages, and audited 3 packages in 963ms

found 0 vulnerabilities


Error: Error: Command failed: npm install @semantic-release/changelog @semantic-release/git @semantic-release/exec --silent

Workflow No change on the worklow file, was passing 3 days ago.

Expected behavior Not fail like in the last months

Additional context Download action repository 'actions/checkout@v2' (SHA:5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f) Download action repository 'cycjimmy/semantic-release-action@v2' (SHA:116647291d9b7bef1f5a4315deedd3f46ed4218b)

How i can debug this?

mancausoft avatar Sep 18 '21 10:09 mancausoft

same here, any pointers ?

revolunet avatar Sep 20 '21 12:09 revolunet

looks like you need to add

        with:
          semantic_version: 17

to your action

revolunet avatar Sep 20 '21 12:09 revolunet

Thanks

mancausoft avatar Sep 21 '21 10:09 mancausoft

@revolunet it's not fix the problem for me :(

  with:
    branch: staging
    extra_plugins: @semantic-release/changelog
  @semantic-release/git
  @semantic-release/exec
  
    semantic_version: 17
  env:
    GITHUB_TOKEN: ***
    GH_TOKEN: ***
    GITHUB_TOKEN_NPM: ***

added 2 packages, and audited 3 packages in 966ms

found 0 vulnerabilities

Error: Error: Command failed: npm install @semantic-release/changelog @semantic-release/git @semantic-release/exec --silent

mancausoft avatar Sep 21 '21 10:09 mancausoft

i believe its the git plugin that is causing the issue. The latest version (10.0.0) has a dependency on [email protected] so it you havent fixed the plugin version then it could be throwing an error with this by trying to grab the latest version, yet all other plugins havent been updated to support (they were reporting support <= 18.0.0). I set the @semantic-release/[email protected] to resolve things and work around the conflict here.

pennywisdom avatar Sep 21 '21 13:09 pennywisdom

@pennywisdom I believe your fix resolves the issue I was having in #80 but for me it didn't resolve this particular issue.

what is a workaround for me was to not use npm@7, and to downgrade to npm@6

I normally have my github actions config set up like this:

        ...
      - uses: actions/setup-node@v2
        with:
          node-version: 14
      - run: npm install -g npm@7

      - uses: cycjimmy/[email protected]
        ...

the workaround for me was:

        ...
      - uses: actions/setup-node@v2
        with:
          node-version: 14
      # - run: npm install -g npm@7

      - uses: cycjimmy/[email protected]
        ...

which is just a workaround, not a fix...

skilbjo avatar Sep 22 '21 05:09 skilbjo

Got the same error

Fixed by specifying a setup-node step and it works now

      - uses: actions/checkout@v2

      - uses: actions/setup-node@v2
        with:
          node-version: '14'

      - name: Semantic Release
        uses: cycjimmy/[email protected]
        with:
          semantic_version: 18.0.0
          extra_plugins: |
            @semantic-release/[email protected]
            @semantic-release/[email protected]
            @semantic-release/[email protected]
            @semantic-release/[email protected]
            @semantic-release/[email protected]

nicolas2mey avatar Oct 30 '21 16:10 nicolas2mey

Is it actually some Node 16 breaking change that needs to be obliged?

pegiadise avatar Dec 13 '21 10:12 pegiadise

@pegiadise I don’t think it’s the reason.

This worked for me:

      - name: 🚀 Release
        uses: cycjimmy/semantic-release-action@v2
        id: semantic
        with:
          semantic_version: 18
          extra_plugins: |
            @semantic-release/changelog@6
            @semantic-release/git@10
            [email protected]

iamskok avatar Dec 17 '21 05:12 iamskok

@pegiadise I don’t think it’s the reason.

This worked for me:

      - name: 🚀 Release
        uses: cycjimmy/semantic-release-action@v2
        id: semantic
        with:
          semantic_version: 18
          extra_plugins: |
            @semantic-release/changelog@6
            @semantic-release/git@10
            [email protected]

Yup. I also ended up using semantic 18. It seems that the issue is with semantic 17 and Node 16.

pegiadise avatar Dec 17 '21 07:12 pegiadise

For me this error was happening due to packages permission missing from the job

prein avatar Sep 14 '22 11:09 prein

I faced the same issue today. For me, the problem is isolated to one repository. The main difference between my other repos where this action is used is that actions/setup-java is used since I intent to use gradle-semantic-release-plugin. I attached my release workflow at the end of this comment. I went through this entire thread and all proposed solutions did not work, I even explicitly set the versions for all packages. Is there anything I am missing?

Another thing to note: When running the seemingly failed command in my local shell, everything works fine and no error is thrown. So I assume it is not a mismatch of some dependencies here.

on:
  push:
    branches:
      - main
jobs:
  release:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: actions/setup-node@v3
        with:
          node-version: "lts/*"
      - uses: actions/setup-java@v3
        with:
          java-version: "17"
          distribution: "adopt"
      - uses: bufbuild/buf-setup-action@v1
        with:
          github_token: ${{ secrets.GITHUB_TOKEN }}
      - uses: arduino/setup-protoc@v1
        with:
          version: "3.x"
          repo-token: ${{ secrets.GITHUB_TOKEN }}
      - uses: cycjimmy/semantic-release-action@v3
        env:
          GITHUB_TOKEN: ${{ github.token }}
          GITHUB_ACTOR: ${{ github.actor }}
          OSSRH_ACTOR: ${{ secrets.OSSRH_ACTOR }}
          OSSRH_TOKEN: ${{ secrets.OSSRH_TOKEN }}
          SIGNING_KEY: ${{ secrets.SIGNING_KEY }}
          SIGNING_PASSWORD: ${{ secrets.SIGNING_PASSWORD }}
        with:
          semantic_version: 19
          extra_plugins: |
            @semantic-release/git@10
            @semantic-release/changelog@6
            @semantic-release/exec@6
            conventional-changelog-conventionalcommits@5
            gradle-semantic-release-plugin@1

mirkolenz avatar Jan 19 '23 12:01 mirkolenz

There should be a way to disable the "--silent" flag, for example when re-running a failed job with the "debug" mode enabled. This would allow to get more information about the error. This happened to me today. Had to create a fork and disable the "--silent" flag to understand the issue.

iamludal avatar Mar 22 '23 10:03 iamludal

It's possible to disable the --silent flag by passing:

env:
  RUNNER_DEBUG: 1

sdelpuerto-intelygenz avatar Apr 13 '23 21:04 sdelpuerto-intelygenz

You're right, see : https://github.com/cycjimmy/semantic-release-action/commit/6d1b158ad109c01dcef9aaf761b0908150a4de31

iamludal avatar Apr 14 '23 07:04 iamludal

Yeah that's how I found it. I'm not sure why --silent is added by default but this should definitely be documented.

sdelpuerto-intelygenz avatar Apr 14 '23 20:04 sdelpuerto-intelygenz

Definitely. Also, it should be documented that the RUNNER_DEBUG environment variable is automatically set by GitHub when re-running a failed job and checking the "Enable debug logs" box.

iamludal avatar Apr 17 '23 07:04 iamludal