Code Monkey home page Code Monkey logo

Comments (7)

proudust avatar proudust commented on August 20, 2024 2

@peter-evans Try using Deploy keys.

from create-pull-request.

peter-evans avatar peter-evans commented on August 20, 2024 2

What I've decided to do is make sure the action will work when a repository is checked out via SSH. I don't think handling the SSH key itself should be the responsibility of this action.

How to use SSH (deploy keys) with create-pull-request action:

  1. Create an new SSH key pair for your repository
  2. Add the contents of the public (.pub) file to a new repository Deploy Key and check the box to "Allow write access."
  3. Add a secret to the repository containing the entire contents of the private key.
  4. As shown in the partial workflow below, use the webfactory/ssh-agent action to install the key and clone your repository. Remember to checkout the base of your pull request if it's not the default branch, e.g. git checkout my-branch.
    steps:
      - uses: webfactory/[email protected]
        with:
          ssh-private-key: ${{ secrets.SSH_PRIVATE_KEY }}

      - name: Checkout via SSH
        run: git clone [email protected]:peter-evans/create-pull-request.git .

      # Make changes to pull request here

      - name: Create Pull Request
        uses: peter-evans/create-pull-request@v2
        with:
          token: ${{ secrets.GITHUB_TOKEN }}

from create-pull-request.

peter-evans avatar peter-evans commented on August 20, 2024

Interesting idea. This would only work to trigger checks run in on: push workflows though. Checks run in on: pull_request workflows would still not fire because a GitHub auth token will be needed to create the PR.

I will do some research and think about how to support this feature.

from create-pull-request.

peter-evans avatar peter-evans commented on August 20, 2024

@proudust I don't see options in GitHub for scoping an SSH key to a specific repository. SSH keys set here are tied to an account and so can be used to access all repositories. Is there something I'm missing?

from create-pull-request.

peter-evans avatar peter-evans commented on August 20, 2024

Added to the documentation here: https://github.com/peter-evans/create-pull-request/blob/master/docs/concepts-guidelines.md#push-using-ssh-deploy-keys

from create-pull-request.

peter-evans avatar peter-evans commented on August 20, 2024

Thank you for this idea!

from create-pull-request.

proudust avatar proudust commented on August 20, 2024

Thank you, I will try that workflow.

from create-pull-request.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.