semantic-release / semantic-release/git

fatal: the receiving end does not support --signed push

Open
#525 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
JavaScript
Stars
339
Forks
75
Avg merge
5h 15m
Merged PRs (30d)
6

Description

Hi, my Github Org has a hook setup , that rejects any commit that is not signed with GPG key.

So i've created a Service account , Created a new GPG key for that service account & configured my GIthub workflow to import the GPG key.

Here is how i am importing my GPG key & installing the semantic release:

- name: Import GPG key
        run: |
          openssl enc -d -aes-256-cbc -in git_gpg_keys.asc.enc -out /tmp/git_gpg_keys.asc -pass pass:$GPG_PASSPHRASE -pbkdf2
          chmod 600 /tmp/git_gpg_keys.asc
          # Import the gpg key
          gpg --batch --yes --import /tmp/git_gpg_keys.asc
          # Create a script to pass the passphrase to the gpg CLI called by git
          echo '#! /bin/bash' > /tmp/gpg-with-passphrase
          echo -n "$(which gpg) --pinentry-mode loopback --passphrase '$GPG_PASSPHRASE' --no-tty " >> /tmp/gpg-with-passphrase # -n = no new line for the next "echo" to works properly ; also quoted and env-ed because the passphrase could contains special chars like "$"
          echo '"$@"' >> /tmp/gpg-with-passphrase # prevent interpreting "$@" and render it as is for the bin
          chmod +x /tmp/gpg-with-passphrase # can be more secure if needed
          git config --global user.signingKey "${{ secrets.GPG_KEY_ID }}"
          git config --global commit.gpgSign true
          git config --global tag.gpgSign false
          git config --global push.gpgSign true
          git config --global gpg.program /tmp/gpg-with-passphrase
        env:
          GPG_PASSPHRASE: ${{ secrets.GPG_KEY_PASSPHRASE  }}
          GPG_KEY_ID: ${{ secrets.GPG_KEY_ID  }}
- name: Install dependencies & Release
        run: |
          npm install
          npx semantic-release --debug

i am receving this error. Could someone please help me?
image

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the GitHub Actions workflow shown in the report, especially the git signing configuration and semantic-release --debug output. Reproduce the reported push error and inspect how the release workflow invokes Git. Done means identifying whether signed pushes are supported and documenting a tested fix or confirmed limitation.

Written by the indexing model from the issue text.

Assessment

Tech stack
git, github-actions, javascript
Domain
ci-cd, release
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
28/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.