![](/img/trans.png)
[英]How to clone a git repository without association with git using gitpython?
[英]Clone AWS CodeCommit git repository using GitPython with https credentials
我无处不在,因为找到了一种更精确的方法来使用https协议通过python克隆AWS CodeCommit git存储库。
实际上,对于那些不知道aws的用户,建议使用codecommit凭据帮助器生成用户和密码,如下所示:
git config --global credential.helper '!aws codecommit credential-helper $@'
git config --global credential.UseHttpPath true
因此,git每次需要凭据时都会调用codecommit helper,而不会提示。
因此,我查看了GitPython库代码,但没有找到如何向git提供凭据的地方。
就我而言,我正在使用AWS Lambda编写一个python函数,该函数将克隆我的CodeCommit Git存储库以及其他内容。
我想避免在我的lambda函数中启动像codebuild这样的容器来执行git命令,或者避免在subprocess
进程中启动shell
这里可以给我建议更好地解决问题的方法吗?
根据这个问题,
aws codecommit凭证帮助程序仅可与AWS CLI一起使用,因此无法通过API在lambda函数中调用。
因此,我要做的是为给定的IAM用户生成固定的git HTTPS凭据,并在我的lambda函数中使用它。
这些凭证可以在S3上加密存储并在执行函数期间或在Lambda环境变量中进行检索。
我可以使用Lambda层和安装了AWS CLI的Lambda层来处理IAM角色和Lambda, https://github.com/aws-samples/aws-lambda-layer-awscli
我在这里有SAM模板https://github.com/msimpsonnz/gitbackup的完整解决方案
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.