Deployment Gitlab CI动态ssh主机

Deployment Gitlab CI动态ssh主机,deployment,gitlab-ci,gitlab-ci-runner,Deployment,Gitlab Ci,Gitlab Ci Runner,我正在尝试使用gitlab runner实现动态部署。 我已经在我的config.toml中添加了一个跑步者: [[runners]] name = "Deploy-Runner" url = "https://my-gitlab.server.com/ci" token = "my_super_secret_token" executor = "ssh" [runners.ssh] host = "$HOSTNAME" user = "deployuser

我正在尝试使用gitlab runner实现动态部署。 我已经在我的config.toml中添加了一个跑步者:

[[runners]]
  name = "Deploy-Runner"
  url = "https://my-gitlab.server.com/ci"
  token = "my_super_secret_token"
  executor = "ssh"
  [runners.ssh]
    host  = "$HOSTNAME"
    user = "deployuser"
    identity_file = "/home/deployuser/.ssh/id_rsa.pub"
在我的.gitlab-ci.yml中,我可能会写:

variables:
  HOSTNAME: preprod.server.com

deploy to preprod:
  stage: deploy
  script: cd to_my_repo && git pull
  environment:
    name: preprod
很明显,我在prepod中添加了部署用户的公钥

但我得到的是,他找不到ssh密钥,这很有趣,因为它就在那里

Using SSH executor...
ERROR: Preparation failed: ssh: no key found

有没有人试图达到同样的目的。也许这根本不可能?

错误在标识文件中。您已配置反公钥的路径,但必须设置rsa私钥文件

您必须设置:

identity\u file=“/home/deployuser/.ssh/id\u rsa”


错误在身份文件中。您已配置反公钥的路径,但必须设置rsa私钥文件

您必须设置:

identity\u file=“/home/deployuser/.ssh/id\u rsa”