수신 이메일 Rake 작업

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

다음은 수신 이메일 관련 Rake 작업입니다.

비밀

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

비밀 보기

현재 수신 이메일 비밀의 내용을 보여줍니다.

Linux 패키지 (Omnibus)
sudo gitlab-rake gitlab:incoming_email:secret:show
Helm 차트 (Kubernetes)

Kubernetes 비밀을 사용하여 수신 이메일 비밀번호를 저장합니다. 자세한 내용은 Helm IMAP 비밀에 대해 읽어보세요.

Docker
sudo docker exec -t <컨테이너 이름> gitlab:incoming_email:secret:show
소스에서 컴파일됨
bundle exec rake gitlab:incoming_email:secret:show RAILS_ENV=production

예시 출력

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

비밀 편집

편집기에서 비밀 내용을 열고 나가면 결과 내용을 암호화된 비밀 파일에 기록합니다.

Linux 패키지 (Omnibus)
sudo gitlab-rake gitlab:incoming_email:secret:edit EDITOR=vim
Helm 차트 (Kubernetes)

Kubernetes 비밀을 사용하여 수신 이메일 비밀번호를 저장합니다. 자세한 내용은 Helm IMAP 비밀에 대해 읽어보세요.

Docker
sudo docker exec -t <컨테이너 이름> gitlab:incoming_email:secret:edit EDITOR=editor
소스에서 컴파일됨
bundle exec rake gitlab:incoming_email:secret:edit RAILS_ENV=production EDITOR=vim

원시 비밀 쓰기

STDIN에서 제공하여 새로운 비밀 내용을 작성합니다.

Linux 패키지 (Omnibus)
echo -e "password: 'examplepassword'" | sudo gitlab-rake gitlab:incoming_email:secret:write
Helm 차트 (Kubernetes)

Kubernetes 비밀을 사용하여 수신 이메일 비밀번호를 저장합니다. 자세한 내용은 Helm IMAP 비밀에 대해 읽어보세요.

Docker
sudo docker exec -t <컨테이너 이름> /bin/bash
echo -e "password: 'examplepassword'" | gitlab-rake gitlab:incoming_email:secret:write
소스에서 컴파일됨
echo -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.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:incoming_email:secret:write

Google Cloud 비밀 통합 예시

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

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