JenkinsのプロジェクトSCMセクションのドロップダウンにSecret text
資格情報が表示されません。 SCMセクションのドロップダウンからSecret text
クレデンシャルを作成すると壊れることはわかっていますが、Jenkins -> Credentials
に移動してクレデンシャルを作成しても、そのクレデンシャルはドロップダウンに表示されません。
すべての資格情報を作成しましたが、ドロップダウンに表示されるのはUsername with password
のみです。 SCMのドロップダウンは、このタイプではないすべての資格情報を除外するようです。
SCMセクションでSecret text
資格情報が必要な理由は、Githubアクセストークンを使用したいためです(Githubアカウントのユーザー名とパスワードではありません)。
次のスクリーンショットは、Secret text
資格情報が明確に示されている私のグローバル資格情報を示しています。
次のスクリーンショットは、プロジェクトのSCMセクションのGitドロップダウンを示しており、Username and password
資格情報のみが表示されています。
Jenkinsバージョン:2.102
Jenkins Credentialsプラグインバージョン:2.1.16
ジェンキンスGitプラグインのバージョン:3.7.0
Github Personal Access Tokenはreplace your passwordしか想定されていないため、SCMステップにSecret Text
認証情報を使用することはできません。ユーザーおよびパスワードではありません。意味ユーザーは引き続き必要です。 Githubのドキュメント here には、次のように表示されます。
パーソナルアクセストークンを作成して使用できますパスワードの代わりに
そして、以下のセクション"コマンドラインでのトークンの使用"here は、次のようになります。
トークンを取得したら、HTTPS経由でGit操作を実行するときに、トークンを入力できますパスワードの代わりに。
そして、それはこの例で続きます:
$ git clone https://github.com/username/repo.git
Username: your_username
Password: your_token
これをJenkinsに外挿しても、資格タイプの賢明な選択はUser with password
のままです。
そのため、通常どおりにUser with password
タイプの認証情報を作成し、Password
フィールドに個人用アクセストークンを使用するを作成します。
Credentials Bindingsプラグインをインストールすると、ビルドジョブConfigurationページのBuild Environmentセクションに、「シークレットを使用する」という新しいオプションが含まれます。テキストまたはファイル」。このオプションを有効にすると、Variable値が環境変数の名として使用される資格情報バインディングを追加できますビルドが資格情報の値にアクセスするために使用できること。
たとえば、シークレットを作成します:(the ***** = 12345)
私の場合、echo $VAR
の出力は*****
です。ただし、ジョブで12345
として使用できます。これが秘密のテキストの使い方です。名前はそれをすべて言います。テキストは秘密のままですが、ジョブで印刷されない変数として使用できます。これはテキスト用であり、資格証明用ではありません。
ビルドで資格情報を再利用する場合は、「結合されたユーザー名とパスワード」を使用することをお勧めします。ここでは、資格情報の変数を設定できます。ユーザー名とパスワードを分割する方法の詳細については、 こちら を参照してください。