gpt4 book ai didi

ssh - 使用具有写入权限的 Gitlab 部署 key

转载 作者:行者123 更新时间:2023-12-01 19:24:33 25 4
gpt4 key购买 nike

我当前正在运行 CE 版本 8.17.4,并尝试设置具有写入访问权限的部署 key (自 8.16 起),以便我的运行程序实例可以将构建工件提交回存储库。我采取了以下步骤来进行设置:

  • 在运行程序实例上,我使用以下命令生成了 ssh key 对:

    sudo ssh-keygen -t rsa -C“标签”-b 4096

  • 生成的 key 对已保存到 /home/gitlab-runner/.ssh/id_rsa 并受密码保护。

  • 在 Gitlab 中,我从管理控制台创建了一个公共(public)部署 key ,并将 id_rsa.pub 的内容粘贴到相应的字段中,并验证了 key 指纹是否匹配。我选中了“允许写入访问”框。
  • 在我希望启用运行程序访问存储库的私有(private)项目中,我启用了新创建的公共(public)部署 key 。
  • 这是一个 LaTeX 文档存储库,因此在 .gitlab-ci.yml 文件中,我在构建 pdf 后发出以下脚本:


    之后脚本:
    - “git commit -am '自动构建 PDF'”
    - “git推送起源大师”

提交更改后,构建在运行器上成功运行,直到执行git push origin master命令,并抛出此错误:


致命:“http://gitlab-ci-token:xxxxxxxxxxxxxxxxxx@host/project.git/”身份验证失败

好的。有几个问题:

  1. 如果部署 key 只是一个 SSH key ,那么它不应该连接到安全端口吗?这很重要吗?我没有找到太多关于使用这个新的写入权限部署关键功能的文档,那么我在上面执行的步骤中是否遗漏了一些内容?
  2. 我是否需要在提交消息中包含[ciskip]以避免循环 CI 构建?我在该功能的原始问题单中看到了这个问题,但没有看到是否需要此步骤。

感谢您的帮助!

最佳答案

Jawad 的评论对我有用:你需要强制 SSH。例如

git remote add ssh_remote git@host:user/project.git
git push ssh-remote HEAD:dev

谢谢贾瓦德

关于ssh - 使用具有写入权限的 Gitlab 部署 key ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43787094/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com