Summary of Open Issue: “CodeCommit: Failed to retrieve list of SSH authentication methods”
Issue Overview
The issue reported by the user cdenneen on January 24, 2022, notes a failure in Flux when attempting to create a source for AWS CodeCommit due to an inability to retrieve a list of SSH authentication methods. The relevant error message indicates a failure in cloning the repository, attributed to changes in the libssh2 library’s format following an upgrade.
Key Details
- Error Message:
unable to clone: Failed to retrieve list of SSH authentication methods: Failed getting response.- Relevant Context:
- The issue is likely caused by an upgrade in
libssh2, which follows a related comment onlibgit2/pygit2#1013. It appears to require the-m PEMflag during the generation of the deploy key for compatibility with AWS CodeCommit. - Desired Feature:
- A suggestion was made for a
--ssh-key-formatparameter to allow specification of the PEM format when creating the repository source.
Steps to Reproduce
- Create a source using Flux with repository credentials.
- Observe the error after applying the Git repository source and waiting for reconciliation.
Workaround Provided
cdenneen provided steps to circumvent the issue:
- Manually create an SSH key and upload it to the IAM user.
- Note the generated User ID for the uploaded key.
- Create the source with the specified parameters:
flux create source git flux-system \
--git-implementation=libgit2 \
--branch=<branch> \
--private-key-file=./codecommit_rsa \
--ssh-key-algorithm=rsa \
--interval=1m
Documentation Updates
stefanprodanacknowledged the need to update documentation to reflect the solution provided bycdenneen.Abhishek-569offered assistance with the documentation, seeking guidance on how to implement the changes, specifically within the context of the existing AWS CodeCommit installation guide.
Labels
area/docsbuggood first issuehelp wanted
This issue is significant for advanced developers working with Flux CD and AWS CodeCommit, as it outlines both a bug related to SSH authentication and a pathway to resolve it through specific configurations. Updating the documentation to include this solution is critical for assisting future users encountering the same issue.