Help us learn about your current experience with the documentation. Take the survey.
接收邮件 Rake 任务
- 版本:免费、高级、旗舰
- 产品:GitLab 自管版
以下是与接收邮件相关的 Rake 任务。
密钥
GitLab 可以使用从加密文件中读取的接收邮件密钥,而不是以明文形式将它们存储在文件系统中。以下提供了一些 Rake 任务,用于更新加密文件的内容。
显示密钥
显示当前接收邮件密钥的内容。
sudo gitlab-rake gitlab:incoming_email:secret:show使用 Kubernetes secret 来存储接收邮件的密码。更多信息, 请阅读关于 Helm IMAP 密钥 的文档。
sudo docker exec -t <container name> gitlab:incoming_email:secret:showbundle exec rake gitlab:incoming_email:secret:show RAILS_ENV=production示例输出
password: 'examplepassword'
user: 'incoming-email@mail.example.com'编辑密钥
在您的编辑器中打开密钥内容,并在您退出时将结果内容写入加密的密钥文件。
sudo gitlab-rake gitlab:incoming_email:secret:edit EDITOR=vim使用 Kubernetes secret 来存储接收邮件的密码。更多信息, 请阅读关于 Helm IMAP 密钥 的文档。
sudo docker exec -t <container name> gitlab:incoming_email:secret:edit EDITOR=editorbundle exec rake gitlab:incoming_email:secret:edit RAILS_ENV=production EDITOR=vim写入原始密钥
通过在 STDIN 上提供新内容来写入新的密钥内容。
echo -e "password: 'examplepassword'" | sudo gitlab-rake gitlab:incoming_email:secret:write使用 Kubernetes secret 来存储接收邮件的密码。更多信息, 请阅读关于 Helm IMAP 密钥 的文档。
sudo docker exec -t <container name> /bin/bash
echo -e "password: 'examplepassword'" | gitlab-rake gitlab:incoming_email:secret:writeecho -e "password: 'examplepassword'" | bundle exec rake gitlab:incoming_email:secret:write RAILS_ENV=production密钥示例
编辑器示例
当编辑命令与您的编辑器不兼容时,可以使用写入任务:
# 将现有密钥写入纯文本文件
sudo gitlab-rake gitlab:incoming_email:secret:show > incoming_email.yaml
# 在您的编辑器中编辑 incoming_email 文件
...
# 重新加密文件
cat incoming_email.yaml | sudo gitlab-rake gitlab:incoming_email:secret:write
# 删除纯文本文件
rm incoming_email.yamlKMS 集成示例
它也可以用作接收由 KMS 加密内容的应用程序:
gcloud kms decrypt --key my-key --keyring my-test-kms --plaintext-file=- --ciphertext-file=my-file --location=us-west1 | sudo gitlab-rake gitlab:incoming_email:secret:writeGoogle Cloud 密钥集成示例
它也可以用作从 Google Cloud 获取密钥的接收应用程序:
gcloud secrets versions access latest --secret="my-test-secret" > $1 | sudo gitlab-rake gitlab:incoming_email:secret:write