2017-05-01 13 views
2

私はBlackboxを使ってリポジトリ内の機密ファイルを暗号化しようとしていますが、GitLab CIパイプラインが必要な私的GPG鍵をロードできませんファイルを復号化する。でGitLab CIのBlackboxでGPG秘密鍵を読み込めません

、あなたがいること、それは明らかであるGitLab CIランナーからの出力を見ることができます:ランナーのための秘密変数として格納された私の秘密鍵は、利用可能である

  • 秘密鍵は、読み込み可能なファイルに正しく書き込まれます。
  • GPGキーは正しくフォーマットされており、完全で適切なキーが含まれています。
  • GPGが存在し、適切に開始することができます。

ただし、コマンドgpg -v --import /tmp/server.gpgを実行すると、私はgpg: no valid OpenPGP data found.を取得し続けます。これは意味がありません。

私はこれで見つけられるすべての記事に従ってきましたが、実際に適切なキーをインポートするのではなく、ファイルの内容を検証するか、実際にはキーが実際には不正であることが明らかです。

私は何の進歩もしていないので、私はこの問題を解決する助けに感謝します。

ありがとうございました! GitLab CIランナーから

出力:

Running with gitlab-ci-multi-runner 9.1.0 (0118d89) on docker-auto-scale (e11ae361) 
Using Docker executor with image golang:1.8.1 ... 
Using docker image sha256:3858bc6d4732445082339c9ccccfe56bf599d1fe7d9e850fb67ceec76807ed8d for predefined container... 
Pulling docker image golang:1.8.1 ... 
Using docker image golang:1.8.1 ID=sha256:6d0bfafa0452c6398be979f89614b5e3cb5d10e853ccd4f5791c4971a88065e0 for build container... 
Running on runner-e11ae361-project-3172553-concurrent-0 via runner-e11ae361-machine-1493644095-36064084-digital-ocean-2gb... 
Cloning repository... 
Cloning into '/builds/project/repo'... 
Checking out 7013b30a as feature/blackbox... 
Skipping Git submodules setup 
$ git clone https://github.com/StackExchange/blackbox 
Cloning into 'blackbox'... 
$ cd blackbox 
$ make manual-install 
Symlinking files from ./bin to /usr/local/bin 
Done. 
$ echo $GPG_PRIVATE_KEY > /tmp/server.gpg 
$ chmod 400 /tmp/server.gpg 
$ cat /tmp/server.gpg 
-----BEGIN PGP PRIVATE KEY BLOCK----- 
Version: GnuPG v2 

[redacted] 
-----END PGP PRIVATE KEY BLOCK----- 
$ gpg -v --list-keys 
gpg: directory `/root/.gnupg' created 
gpg: new configuration file `/root/.gnupg/gpg.conf' created 
gpg: WARNING: options in `/root/.gnupg/gpg.conf' are not yet active during 
this run 
gpg: keyring `/root/.gnupg/pubring.gpg' created 
gpg: /root/.gnupg/trustdb.gpg: trustdb created 
gpg: using PGP trust model 
$ gpg -v --import /tmp/server.gpg 
gpg: keyring `/root/.gnupg/secring.gpg' created 
gpg: no valid OpenPGP data found. 
gpg: Total number processed: 0 
ERROR: Job failed: exit code 1 

答えて

2

私は答えを見つけました。私の.gitlab-ci.ymlでは、私は私のGPGを変えたから実装をお読みくださいに

- echo $GPG_PRIVATE_KEY > /tmp/server.gpg 
- gpg -v --import /tmp/server.gpg 

- gpg -v --import <(echo "$GPG_PRIVATE_KEY") 

これは、問題を解決しました。

+0

便宜上、.gitlab-ci.yml https://gist.github.com/mipmip/b25a2a3c0fcc0ea3e542daa502ed753b – mipmip

関連する問題