서비스 데스크 이메일 Rake 작업

Tier: Free, Premium, Ultimate Offering: Self-Managed

다음은 서비스 데스크 이메일 관련 Rake 작업입니다.

Secrets

GitLab은 서비스 데스크 이메일 비밀을 평문으로 파일 시스템에 저장하는 대신 암호화된 파일에서 읽을 수 있습니다. 다음 Rake 작업은 암호화된 파일의 내용을 업데이트하는 데 사용됩니다.

Secret 표시

현재 서비스 데스크 이메일 비밀 내용을 표시합니다.

Linux package (Omnibus)
sudo gitlab-rake gitlab:service_desk_email:secret:show
Helm chart (Kubernetes)

서비스 데스크 이메일 암호를 저장하기 위해 Kubernetes 시크릿을 사용합니다. 자세한 내용은 Helm IMAP secrets을 확인하세요.

Docker
sudo docker exec -t <container name> gitlab:service_desk_email:secret:show
Self-compiled (source)
bundle exec rake gitlab:service_desk_email:secret:show RAILS_ENV=production

예시 출력

password: 'examplepassword'
user: 'service-desk-email@mail.example.com'

Secret 수정

비밀 내용을 에디터에서 열고, 결과 내용을 나가면 암호화된 비밀 파일에 작성합니다.

Linux package (Omnibus)
sudo gitlab-rake gitlab:service_desk_email:secret:edit EDITOR=vim
Helm chart (Kubernetes)

서비스 데스크 이메일 암호를 저장하기 위해 Kubernetes 시크릿을 사용합니다. 자세한 내용은 Helm IMAP secrets을 확인하세요.

Docker
sudo docker exec -t <container name> gitlab:service_desk_email:secret:edit EDITOR=editor
Self-compiled (source)
bundle exec rake gitlab:service_desk_email:secret:edit RAILS_ENV=production EDITOR=vim

원시 비밀 작성

STDIN에서 제공된 새 비밀 내용을 작성합니다.

Linux package (Omnibus)
echo -e "password: 'examplepassword'" | sudo gitlab-rake gitlab:service_desk_email:secret:write
Helm chart (Kubernetes)

서비스 데스크 이메일 암호를 저장하기 위해 Kubernetes 시크릿을 사용합니다. 자세한 내용은 Helm IMAP secrets을 확인하세요.

Docker
sudo docker exec -t <container name> /bin/bash
echo -e "password: 'examplepassword'" | gitlab-rake gitlab:service_desk_email:secret:write
Self-compiled (source)
echo -e "password: 'examplepassword'" | bundle exec rake gitlab:service_desk_email:secret:write RAILS_ENV=production

비밀 예시

에디터 예시

에디터가 작동하지 않는 경우 write 작업을 사용할 수 있습니다:

# 기존 비밀을 평문 파일에 작성
sudo gitlab-rake gitlab:service_desk_email:secret:show > service_desk_email.yaml
# 에디터에서 service_desk_email 파일 편집
...
# 파일 재암호화
cat service_desk_email.yaml | sudo gitlab-rake gitlab:service_desk_email:secret:write
# 평문 파일 삭제
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 시크릿 통합 예시

Google Cloud의 비밀을 수신 애플리케이션으로 사용할 수도 있습니다:

gcloud secrets versions access latest --secret="my-test-secret" > $1 | sudo gitlab-rake gitlab:service_desk_email:secret:write