繁体   English   中英

使用具有https凭证的GitPython克隆AWS CodeCommit git存储库

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM