組織ごとのシークレット
組織のシークレットは、パスワード、トークン、sshキーなどの機密情報を保存および管理するために使用されます。この情報をシークレットに保存することは、構成ファイルに保存するよりも安全であると考えられています。組織シークレットは、指定された組織に属する任意のリポジトリで使用できます。
コマンドラインツールを使用して組織のシークレットを作成します。
$ drone orgsecret add [organization] [name] [data]
$ drone orgsecret add octocat docker_password pa55word
名前付き組織シークレットからのソース環境変数:
1 kind: pipeline
2 name: default
3
4 steps:
5 - name: build
6 image: alpine
7 environment:
8 USERNAME:
9 from_secret: docker_username
10 PASSWORD:
11 from_secret: docker_password
名前付き組織シークレットからのソースプラグイン設定:
1 kind: pipeline
2 name: default
3
4 steps:
5 - name: build
6 image: plugins/docker
7 settings:
8 repo: octocat/hello-world
9 username:
10 from_secret: docker_username
11 password:
12 from_secret: docker_password
プルリクエスト
シークレットは、デフォルトではプルリクエストに公開されていません。これにより、悪意のあるアクターがプルリクエストを送信して、シークレットを公開しようとするのを防ぎます。 --allow-pull-request
フラグを使用して、自己責任でこのデフォルトの動作をオーバーライドできます。