服务台电子邮件 Rake 任务
- 引入于 15.9 版本。
以下是与服务台电子邮件相关的 Rake 任务。
Secrets
极狐GitLab 可以使用服务台电子邮件,从加密文件中读取 secret,而不是将它们以明文形式存储在文件系统中。以下 Rake 任务用于更新加密文件的内容。
显示 secret
显示当前服务台电子邮件 secret 的内容。
- Omnibus
sudo gitlab-rake gitlab:service_desk_email:secret:show
- Kubernetes
使用 Kubernetes secret 存储服务台电子邮件密码。有关详细信息,请阅读 Helm IMAP secret。
- Docker
sudo docker exec -t <container name> gitlab:service_desk_email:secret:show
- 源安装
bundle exec rake gitlab:service_desk_email:secret:show RAILS_ENV=production
输出示例
password: 'examplepassword'
user: 'service-desk-email@mail.example.com'
编辑 secret
在您的编辑器中打开 secret 内容,并在您退出时将结果内容写入加密的 secret 文件。
- Omnibus
sudo gitlab-rake gitlab:service_desk_email:secret:edit EDITOR=vim
- Kubernetes
使用 Kubernetes secret 存储服务台电子邮件密码。有关详细信息,请阅读 Helm IMAP secret。
- Docker
sudo docker exec -t <container name> gitlab:service_desk_email:secret:edit EDITOR=editor
- 源安装
bundle exec rake gitlab:service_desk_email:secret:edit RAILS_ENV=production EDITOR=vim
写入 raw secret
提供新的 secret 内容,在 STDIN
上写入。
- Omnibus
echo -e "password: 'examplepassword'" | sudo gitlab-rake gitlab:service_desk_email:secret:write
- Kubernetes
使用 Kubernetes secret 存储服务台电子邮件密码。有关详细信息,请阅读 Helm IMAP secret。
- Docker
sudo docker exec -t <container name> /bin/bash
echo -e "password: 'examplepassword'" | gitlab-rake gitlab:service_desk_email:secret:write
- 源安装
echo -e "password: 'examplepassword'" | bundle exec rake gitlab:service_desk_email:secret:write RAILS_ENV=production
Secrets 示例
编辑器示例
Write 任务可用于编辑命令不适用于您的编辑器的情况:
# Write the existing secret to a plaintext file
sudo gitlab-rake gitlab:service_desk_email:secret:show > service_desk_email.yaml
# Edit the service_desk_email file in your editor
...
# Re-encrypt the file
cat service_desk_email.yaml | sudo gitlab-rake gitlab:service_desk_email:secret:write
# Remove the plaintext file
rm service_desk_email.yaml
KMS 集成示例
它还可以用作使用 KMS 加密的内容的接收应用程序:
gcloud kms decrypt --key my-key --keyring my-test-kms --plaintext-file=- --ciphertext-file=my-file --location=us-west1 | sudo gitlab-rake gitlab:service_desk_email:secret:write
Google Cloud secret 集成示例
它还可以用作接收来自 Google Cloud 的 secret 的应用程序:
gcloud secrets versions access latest --secret="my-test-secret" > $1 | sudo gitlab-rake gitlab:service_desk_email:secret:write