2016-12-07 4 views
3

Jenkinsでフリースタイルプロジェクトを設定し、シェルスクリプトをビルドステップとして実行しています。場合によっては、サードパーティサービスの資格情報にアクセスする必要があります。私たちのように資格情報を提供することによってこれを解決している:プロジェクト環境でjenkinsのシェルスクリプトで資格情報を利用できるようにする方法

USER=theuser 
PASS=thepass 

Prepare an environment for the run -> Properties Content

は、これが正常に動作している、しかしのでそれは悪いソリューションです:

  • 資格情報がありません
  • プロジェクトコンフィグレーションにアクセスできる人は誰でも見ることができます
  • 彼らはJenkinsコンソールでリークします

我々は少し研究しpromising pluginを見つけましたが、私たちは、環境変数として理想的に、私たちのスクリプトへのプラグインによって管理される資格情報を使用できるようにする方法がわからないです。

Jenkinsプラグインで管理されている資格情報にスクリプトからアクセスするにはどうすればよいですか?

答えて

3
withCredentials([[$class: 'UsernamePasswordMultiBinding', credentialsId: yourCredentialsId, usernameVariable: 'USERNAME', passwordVariable: 'PASSWORD']]) { 
    // user name and password will be stored in USERNAME and PASSWORD envs 
} 
+0

どのようにしてbashスクリプトから実行できますか? – dangonfast

3

私たちはこの1つを使用している: https://wiki.jenkins-ci.org/display/JENKINS/Mask+Passwords+Plugin

を、あなたは、あなたがこのようなものを指定した場合、パスワードはそう

を持つようにしたい環境変数を指定します。 enter image description here

をシェルで$ PASSWORDを使用することができます。

+0

いいですね、それを試してみよう – dangonfast

関連する問題