Concourse Lab Creation

Jifunze kuhusu kudukua AWS kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!

Njia nyingine za kusaidia HackTricks:

Mazingira ya Majaribio

Kuendesha Concourse

Kwa Kutumia Docker-Compose

Faili hii ya docker-compose inasaidia ufungaji wa kufanya majaribio na concourse:

wget https://raw.githubusercontent.com/starkandwayne/concourse-tutorial/master/docker-compose.yml
docker-compose up -d

Unaweza kupakua amri ya mstari wa fly kwa mfumo wako wa uendeshaji kutoka kwenye wavuti kwa 127.0.0.1:8080

Na Kubernetes (Inapendekezwa)

Unaweza kwa urahisi kupeleka concourse katika Kubernetes (katika minikube kwa mfano) ukitumia chati ya helm: concourse-chart.

brew install helm
helm repo add concourse https://concourse-charts.storage.googleapis.com/
helm install concourse-release concourse/concourse
# concourse-release will be the prefix name for the concourse elements in k8s
# After the installation you will find the indications to connect to it in the console

# If you need to delete it
helm delete concourse-release

Baada ya kuzalisha mazingira ya concourse, unaweza kuzalisha siri na kumpa ufikiaji kwa SA inayotumika kwenye wavuti ya concourse ili kupata ufikiaji wa siri za K8s:

echo 'apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: read-secrets
rules:
- apiGroups: [""]
resources: ["secrets"]
verbs: ["get"]

---

apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: read-secrets-concourse
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: read-secrets
subjects:
- kind: ServiceAccount
name: concourse-release-web
namespace: default

---

apiVersion: v1
kind: Secret
metadata:
name: super
namespace: concourse-release-main
type: Opaque
data:
secret: MWYyZDFlMmU2N2Rm

' | kubectl apply -f -

Unda Mabomba

Mabomba yameundwa na orodha ya Kazi ambayo ina orodha iliyopangwa ya Hatua.

Hatua

Aina kadhaa tofauti za hatua zinaweza kutumika:

Kila hatua katika mpango wa kazi inaendeshwa kwenye kontena yake mwenyewe. Unaweza kuendesha chochote unachotaka ndani ya kontena (yaani endesha vipimo vyangu, endesha script hii ya bash, jenga picha hii, n.k.). Kwa hivyo, ikiwa una kazi na hatua tano, Concourse itaunda kontena tano, moja kwa kila hatua.

Hivyo, ni rahisi kuonyesha aina ya kontena kila hatua inahitaji kuendeshwa ndani yake.

Mfano Rahisi wa Mabomba

jobs:
- name: simple
plan:
- task: simple-task
privileged: true
config:
# Tells Concourse which type of worker this task should run on
platform: linux
image_resource:
type: registry-image
source:
repository: busybox # images are pulled from docker hub by default
run:
path: sh
args:
- -cx
- |
sleep 1000
echo "$SUPER_SECRET"
params:
SUPER_SECRET: ((super.secret))
fly -t tutorial set-pipeline -p pipe-name -c hello-world.yml
# pipelines are paused when first created
fly -t tutorial unpause-pipeline -p pipe-name
# trigger the job and watch it run to completion
fly -t tutorial trigger-job --job pipe-name/simple --watch
# From another console
fly -t tutorial intercept --job pipe-name/simple

Angalia 127.0.0.1:8080 kuona mtiririko wa mabomba.

Skripti ya Bash na mtiririko wa matokeo/malango

Inawezekana kuhifadhi matokeo ya kazi moja kwenye faili na kuonyesha kuwa ni matokeo na kisha kuonyesha kuingia kwa kazi inayofuata kama matokeo ya kazi iliyopita. Kile concourse hufanya ni kumweka saraka ya kazi iliyopita kwenye kazi mpya ambapo unaweza kupata faili zilizoundwa na kazi iliyopita.

Vichocheo

Hauitaji kuzindua kazi kwa mkono kila wakati unahitaji kuendesha, unaweza pia kuzipanga ziendeshwe kila wakati:

Angalia mfano wa mabomba ya YAML ambayo huzinduliwa kwenye mabadiliko mapya kwenye mabano kwenye https://concourse-ci.org/tutorial-resources.html

Jifunze kuhusu kuvamia AWS kutoka sifuri hadi shujaa na htARTE (HackTricks AWS Red Team Expert)!

Njia nyingine za kusaidia HackTricks:

Last updated