Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Git ssh private key binding(GSoC-21) #1111

Open
wants to merge 106 commits into
base: master
Choose a base branch
from

Commits on Jul 19, 2021

  1. Adding dependency

    The SSHPrivateKey binding will depend on Credential Binding Plugin
    arpoch committed Jul 19, 2021
    Configuration menu
    Copy the full SHA
    e9c550a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4fd5c4c View commit details
    Browse the repository at this point in the history
  3. SSHPrivateKey Binding

    Support Git SSH protocol authentication
    arpoch committed Jul 19, 2021
    Configuration menu
    Copy the full SHA
    e212567 View commit details
    Browse the repository at this point in the history
  4. Git Binding interface

    arpoch committed Jul 19, 2021
    Configuration menu
    Copy the full SHA
    78a47fb View commit details
    Browse the repository at this point in the history

Commits on Jul 21, 2021

  1. Merge remote-tracking branch 'origin/master' into gitSSHPrivateKey

    # Conflicts:
    #	src/main/java/jenkins/plugins/git/GitCredentialBindings.java
    arpoch committed Jul 21, 2021
    Configuration menu
    Copy the full SHA
    818599a View commit details
    Browse the repository at this point in the history
  2. Adding dependency to support Git SSH binding

    Two dependencies are added namely Bouncycastle API Plugin and SSHJ library
    arpoch committed Jul 21, 2021
    Configuration menu
    Copy the full SHA
    6eeecee View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    2bc3140 View commit details
    Browse the repository at this point in the history
  4. Support for OpenSSH key format

    This class provides the methods to decrypt a passphrase protected private key in openssh format
    arpoch committed Jul 21, 2021
    Configuration menu
    Copy the full SHA
    e45ed33 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    9030a2c View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    9312a70 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    a8f38f3 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    9e17779 View commit details
    Browse the repository at this point in the history
  9. ListBox for git-tool-name

    arpoch committed Jul 21, 2021
    Configuration menu
    Copy the full SHA
    b53385b View commit details
    Browse the repository at this point in the history
  10. Check current node os environment

    Use launcher.isUnix method value to check the current node os environment.
    Add some formatting
    arpoch committed Jul 21, 2021
    Configuration menu
    Copy the full SHA
    588c389 View commit details
    Browse the repository at this point in the history
  11. Change to non-static inner class

    Removing static keyword to support SSHkeyUtils methods
    arpoch committed Jul 21, 2021
    Configuration menu
    Copy the full SHA
    d70831c View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    443c0f7 View commit details
    Browse the repository at this point in the history
  13. Adding imports

    arpoch committed Jul 21, 2021
    Configuration menu
    Copy the full SHA
    65624c0 View commit details
    Browse the repository at this point in the history
  14. Assert launcher

    If workspace is provided launcher should not be null
    arpoch committed Jul 21, 2021
    Configuration menu
    Copy the full SHA
    a55e3dd View commit details
    Browse the repository at this point in the history
  15. Code formatting

    arpoch committed Jul 21, 2021
    Configuration menu
    Copy the full SHA
    d38eea0 View commit details
    Browse the repository at this point in the history
  16. Create SSH command argument

    Only supported for linux distro
    arpoch committed Jul 21, 2021
    Configuration menu
    Copy the full SHA
    f57be59 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    df3d33c View commit details
    Browse the repository at this point in the history
  18. Bind Git SSH environment variable

    Return Git SSH environment variables, perform SSH authentication on behalf of the user
    arpoch committed Jul 21, 2021
    Configuration menu
    Copy the full SHA
    0996235 View commit details
    Browse the repository at this point in the history
  19. Code formatting

    arpoch committed Jul 21, 2021
    Configuration menu
    Copy the full SHA
    47588ae View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    7549c54 View commit details
    Browse the repository at this point in the history

Commits on Jul 23, 2021

  1. Configuration menu
    Copy the full SHA
    d1eeb22 View commit details
    Browse the repository at this point in the history
  2. Consuming git-client incremental

    Using newly updated getSSHExecutable method
    arpoch committed Jul 23, 2021
    Configuration menu
    Copy the full SHA
    96c0103 View commit details
    Browse the repository at this point in the history
  3. Using getSSHExecutable api

    This method provides path to ssh executable
    arpoch committed Jul 23, 2021
    Configuration menu
    Copy the full SHA
    d3ee23a View commit details
    Browse the repository at this point in the history
  4. Replacing PEMWriter with JcaPEMWriter

    PEMWriter is deprecated
    arpoch committed Jul 23, 2021
    Configuration menu
    Copy the full SHA
    c218b0b View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    d596240 View commit details
    Browse the repository at this point in the history
  6. Store SSH exe path in local variable

    Changing method getSSHCmd signature, ssh exe path papmeter added
    arpoch committed Jul 23, 2021
    Configuration menu
    Copy the full SHA
    8922ada View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    a44b388 View commit details
    Browse the repository at this point in the history
  8. Fixing private key value

    arpoch committed Jul 23, 2021
    Configuration menu
    Copy the full SHA
    a42ac94 View commit details
    Browse the repository at this point in the history
  9. Replacing private key with passphrase value

    Passphrase should be checked, to tell is private key is encrypted or not
    arpoch committed Jul 23, 2021
    Configuration menu
    Copy the full SHA
    598eb80 View commit details
    Browse the repository at this point in the history

Commits on Jul 25, 2021

  1. Configuration menu
    Copy the full SHA
    5c47934 View commit details
    Browse the repository at this point in the history
  2. Wrapper method for getSSHExePathInWin

    The getSSHPath method check the current node's os environment and sets the ssh executable path accordingly.
    arpoch committed Jul 25, 2021
    Configuration menu
    Copy the full SHA
    752a94a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    035e6c2 View commit details
    Browse the repository at this point in the history

Commits on Jul 26, 2021

  1. Merge branch 'master' into gitSSHPrivateKey

    # Conflicts:
    #	pom.xml
    arpoch committed Jul 26, 2021
    Configuration menu
    Copy the full SHA
    dcba7c9 View commit details
    Browse the repository at this point in the history

Commits on Jul 31, 2021

  1. Merge branch 'master' into gitSSHPrivateKey

    # Conflicts:
    #	pom.xml
    arpoch committed Jul 31, 2021
    Configuration menu
    Copy the full SHA
    fbba6f9 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    69fafe5 View commit details
    Browse the repository at this point in the history
  3. Convert private key string to keypair

    Using SSHD library to extract KeyPair from private key string
    arpoch committed Jul 31, 2021
    Configuration menu
    Copy the full SHA
    ee925a7 View commit details
    Browse the repository at this point in the history

Commits on Aug 4, 2021

  1. Bumping Jenkins version to 2.289.1

    The current Jenkins version required by git plugin is atleast 2.263.1, which implicitly depends on sshd-plugin v2.7.0, making it difficult to support OpenSSH private format due to dependency conflict.
    arpoch committed Aug 4, 2021
    Configuration menu
    Copy the full SHA
    4a5e7de View commit details
    Browse the repository at this point in the history
  2. Adding sshd-core dependency to support

    git SSH binding
    
    Defining sshd-core library explicitly will implicitly bump the version of SSHD-plugin to v3.1.0
    arpoch committed Aug 4, 2021
    Configuration menu
    Copy the full SHA
    63680a0 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8c525eb View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    4ec3a3d View commit details
    Browse the repository at this point in the history
  5. Handling null point exception

    arpoch committed Aug 4, 2021
    Configuration menu
    Copy the full SHA
    638989b View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    e830aef View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    be399fb View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    73b01ba View commit details
    Browse the repository at this point in the history
  9. Write decrypted openssh formatted private key

    The writePrivateKeyOpenSSHFormatted method performs write operation on a decrypted openssh formatted key.
    The key written in a temp file is openssh formatted.
    The shaded sshd-plugin dependency is used to carry of private key decryption operation.
    arpoch committed Aug 4, 2021
    Configuration menu
    Copy the full SHA
    7ef7820 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    b419b4c View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    9bc6d3a View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    82022ef View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    3f82b61 View commit details
    Browse the repository at this point in the history

Commits on Aug 6, 2021

  1. Merge remote-tracking branch 'origin/gitSSHPrivateKey' into gitSSHPri…

    …vateKey
    
    # Conflicts:
    #	pom.xml
    arpoch committed Aug 6, 2021
    Configuration menu
    Copy the full SHA
    30064ed View commit details
    Browse the repository at this point in the history
  2. Removing shell script $@

    arpoch committed Aug 6, 2021
    Configuration menu
    Copy the full SHA
    319442e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ea86cda View commit details
    Browse the repository at this point in the history

Commits on Aug 7, 2021

  1. Configuration menu
    Copy the full SHA
    dcc83b3 View commit details
    Browse the repository at this point in the history

Commits on Aug 11, 2021

  1. Configuration menu
    Copy the full SHA
    29cdcd7 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e13d669 View commit details
    Browse the repository at this point in the history
  3. Use 2.289.x bom

    MarkEWaite committed Aug 11, 2021
    Configuration menu
    Copy the full SHA
    dc83e1c View commit details
    Browse the repository at this point in the history
  4. Discarding shaded sshd-core api imports

    Replacing the shaded sshd-core api provided by Jenkins core with sshd-core api provided form SSHD plugin
    arpoch committed Aug 11, 2021
    Configuration menu
    Copy the full SHA
    583ee18 View commit details
    Browse the repository at this point in the history
  5. Code formatting

    arpoch committed Aug 11, 2021
    Configuration menu
    Copy the full SHA
    cbf6215 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    74500c1 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    1ff2fcb View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    fc81ba3 View commit details
    Browse the repository at this point in the history
  9. Renaming api's in SSHKeyUtils

    arpoch committed Aug 11, 2021
    Configuration menu
    Copy the full SHA
    c6d9b3b View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    607a5ab View commit details
    Browse the repository at this point in the history
  11. Adding test resource for ssh binding test cases

    The resource added is a zip file which archives the private keys in various encryption algorithms and formats both passphrase protected and not.
    arpoch committed Aug 11, 2021
    Configuration menu
    Copy the full SHA
    1662e96 View commit details
    Browse the repository at this point in the history
  12. Test cases for git ssh binding

    arpoch committed Aug 11, 2021
    Configuration menu
    Copy the full SHA
    c0d14aa View commit details
    Browse the repository at this point in the history
  13. Test cases for SSHKeyUtils

    arpoch committed Aug 11, 2021
    Configuration menu
    Copy the full SHA
    99535a8 View commit details
    Browse the repository at this point in the history

Commits on Aug 12, 2021

  1. Configuration menu
    Copy the full SHA
    85dfeed View commit details
    Browse the repository at this point in the history

Commits on Aug 13, 2021

  1. Using FilePath to provide remoting support

    Unlike File, which always implies a file path on the current computer, FilePath represents a file path on a specific agent or the controller.
    arpoch committed Aug 13, 2021
    Configuration menu
    Copy the full SHA
    d7f3b55 View commit details
    Browse the repository at this point in the history
  2. 4 Configuration menu
    Copy the full SHA
    2efc015 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e9d572d View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    be8b2e9 View commit details
    Browse the repository at this point in the history
  5. Adding new line

    arpoch committed Aug 13, 2021
    Configuration menu
    Copy the full SHA
    a98514f View commit details
    Browse the repository at this point in the history

Commits on Aug 14, 2021

  1. Configuration menu
    Copy the full SHA
    649cd85 View commit details
    Browse the repository at this point in the history
  2. Adding RequirePOST annotation

    arpoch committed Aug 14, 2021
    Configuration menu
    Copy the full SHA
    1766ec2 View commit details
    Browse the repository at this point in the history

Commits on Aug 15, 2021

  1. Removing default variable bindings for git ssh private key binding

    The PRIVATE_KEY and PASSPHRASE variable bindings are removed in this commit since this  sensitive information shouldn't be binded to environment variables.
    Workarounds with these env bindings will potentially be unsafe.
    arpoch committed Aug 15, 2021
    Configuration menu
    Copy the full SHA
    74b4f16 View commit details
    Browse the repository at this point in the history
  2. Adding git ssh binding images

    arpoch committed Aug 15, 2021
    Configuration menu
    Copy the full SHA
    f168ecb View commit details
    Browse the repository at this point in the history
  3. Merge branch 'master' into gitSSHPrivateKey

    # Conflicts:
    #	pom.xml
    arpoch committed Aug 15, 2021
    Configuration menu
    Copy the full SHA
    71bd8fb View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    b6eebfd View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    b6eeac2 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    66009a8 View commit details
    Browse the repository at this point in the history

Commits on Aug 17, 2021

  1. Configuration menu
    Copy the full SHA
    06c8073 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    187b399 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e12419b View commit details
    Browse the repository at this point in the history
  4. Adding |(or)

    Prevents failure in case the git is not CLI-git
    arpoch committed Aug 17, 2021
    Configuration menu
    Copy the full SHA
    828cc94 View commit details
    Browse the repository at this point in the history

Commits on Aug 19, 2021

  1. Using ssh as ssh path in windows environment

    The getSSHExePathInWin(GitClient git) always returns ssh path of controller environment even if running build on an agent.
    arpoch committed Aug 19, 2021
    Configuration menu
    Copy the full SHA
    dd86551 View commit details
    Browse the repository at this point in the history
  2. Merge branch 'gitSSHPrivateKey' of https://github.com/arpoch/git-plugin

    … into gitSSHPrivateKey
    arpoch committed Aug 19, 2021
    Configuration menu
    Copy the full SHA
    cdefb57 View commit details
    Browse the repository at this point in the history

Commits on Aug 20, 2021

  1. Storing passphrase as a secret

    The passphrase value of a private key is stored as secret rather than in plaintext.
    arpoch committed Aug 20, 2021
    Configuration menu
    Copy the full SHA
    1ce0079 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0e5b9fb View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    1354b1f View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    eefb41d View commit details
    Browse the repository at this point in the history

Commits on Aug 21, 2021

  1. Configuration menu
    Copy the full SHA
    83171e3 View commit details
    Browse the repository at this point in the history
  2. Use latest 2.289.x bom

    MarkEWaite committed Aug 21, 2021
    Configuration menu
    Copy the full SHA
    3a238c0 View commit details
    Browse the repository at this point in the history

Commits on Aug 22, 2021

  1. Configuration menu
    Copy the full SHA
    c63559c View commit details
    Browse the repository at this point in the history

Commits on Aug 30, 2021

  1. Merge branch 'master' into gitSSHPrivateKey

    # Conflicts:
    #	pom.xml
    arpoch committed Aug 30, 2021
    Configuration menu
    Copy the full SHA
    4654472 View commit details
    Browse the repository at this point in the history

Commits on Sep 17, 2021

  1. Configuration menu
    Copy the full SHA
    b3b2f69 View commit details
    Browse the repository at this point in the history

Commits on Sep 23, 2021

  1. Configuration menu
    Copy the full SHA
    8396478 View commit details
    Browse the repository at this point in the history

Commits on Sep 26, 2021

  1. Configuration menu
    Copy the full SHA
    b097fb5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0a40c33 View commit details
    Browse the repository at this point in the history

Commits on Oct 25, 2021

  1. Merge branch 'master' into gitSSHPrivateKey

    # Conflicts:
    #	pom.xml
    arpoch committed Oct 25, 2021
    Configuration menu
    Copy the full SHA
    1785381 View commit details
    Browse the repository at this point in the history
  2. Resolving merge conflicts

    arpoch committed Oct 25, 2021
    Configuration menu
    Copy the full SHA
    78651ae View commit details
    Browse the repository at this point in the history

Commits on Nov 2, 2021

  1. Configuration menu
    Copy the full SHA
    825eda8 View commit details
    Browse the repository at this point in the history

Commits on Jun 22, 2022

  1. Configuration menu
    Copy the full SHA
    4a5fbdf View commit details
    Browse the repository at this point in the history