Concourse Lab Creation
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
このdocker-composeファイルは、concourseでいくつかのテストを行うためのインストールを簡素化します:
あなたのOS用のコマンドラインfly
を127.0.0.1:8080
からダウンロードできます。
Kubernetes(例えばminikube)で簡単にconcourseをデプロイできます。helm-chartを使用します: concourse-chart。
concourse envを生成した後、秘密を生成し、concourse webで実行されているSAにK8sの秘密にアクセスする権限を与えることができます:
パイプラインは、ジョブのリストで構成されており、順序付けられたステップのリストを含みます。
いくつかの異なるタイプのステップを使用できます:
set_pipeline
ステップ は パイプライン を構成します
load_var
ステップ は ローカル変数 に値をロードします
in_parallel
ステップ はステップを並行して実行します
do
ステップ はステップを順番に実行します
across
ステップ修飾子 はステップを複数回実行します;変数の値の組み合わせごとに1回ずつ
try
ステップ はステップを実行しようとし、ステップが失敗しても成功します
各ステップはジョブプラン内で独自のコンテナで実行されます。コンテナ内で何でも実行できます (つまり、テストを実行する、このbashスクリプトを実行する、このイメージをビルドするなど)。 したがって、5つのステップを持つジョブがある場合、Concourseは各ステップのために5つのコンテナを作成します。
したがって、各ステップが実行される必要のあるコンテナのタイプを指定することが可能です。
127.0.0.1:8080 にアクセスしてパイプラインのフローを確認します。
1つのタスクの結果をファイルに保存し、それを出力として示し、次のタスクの入力を前のタスクの出力として示すことが可能です。Concourseが行うことは、前のタスクのディレクトリを新しいタスクにマウントし、前のタスクによって作成されたファイルにアクセスできるようにすることです。
ジョブを手動で毎回実行する必要はなく、毎回実行されるようにプログラムすることもできます:
時間が経過したとき: Time resource
メインブランチへの新しいコミット時: Git resource
新しいPR: Github-PR resource
アプリの最新イメージを取得またはプッシュ: Registry-image resource
https://concourse-ci.org/tutorial-resources.html でマスターへの新しいコミットでトリガーされるYAMLパイプラインの例を確認してください。
AWSハッキングを学び、練習する:HackTricks Training AWS Red Team Expert (ARTE) GCPハッキングを学び、練習する: HackTricks Training GCP Red Team Expert (GRTE)