我们将git视为一些配置和csv文件的数据库。我有一个Bamboo计划,我在那里检查一些代码(来自Stash),运行节点脚本并生成一些csv文件。 我需要能够'git push'到某个存储库。 我有一个脚本任务,我在写这样的东西 -
git remote add central ssh://git@stashRepoUrl:port/xyz.git
git config --global user.name "Bamboo"
git config --global user.email "bamboo@xyz.com"
git add src/main/resources/lookups/main/common/*
git add src/main/resources/lookups/main/reference/*
git commit -m "FROM BAMBOO JOB"
git push -u central featureBranchName
我收到以下错误 - hostkey验证失败。
如何在我的藏匿仓库和这个“竹子代理商”之间设置ssh?我相信有人可能已经尝试过了。
谢谢!
答案 0 :(得分:2)
您需要使用脚本使用的帐户手动执行(仅一次):
ssh -T git@stashRepoUrl -p port
这将触发您回答“是”(更新~/.ssh/known_hosts
)
然后你的脚本可以继续。
请注意,我还会手动设置以下行:
git remote add central ssh://git@stashRepoUrl:port/xyz.git
您只需要使用该命令一次,而不是每次脚本都运行。
答案 1 :(得分:2)
atlassian confluence中有文档如何在构建期间提交Git仓库
请参阅此链接 https://confluence.atlassian.com/bamkb/how-to-commit-to-a-git-repo-during-a-build-720641378.html
答案 2 :(得分:1)
作为对VonC答案的更新,如果您使用以下内容,可以将其放在脚本中:
Recreating users-service
Attaching to users-service
users-service | python: can't open file 'manage.py': [Errno 2] No such file or directory
users-service exited with code 2
如果您正在使用泊坞窗或完全清理代理,这将自动接受相关机器的证书。