Skip to content

Commit c2c19d3

Browse files
fix: Changed deployment, image and helathcheck port to new default prometheus 5000 (#10)
* Changed deployment, image and helathcheck port to new default prometheus 5000 * Added defaults for test script variables * Updated GH actions image scanning * Updated inline scan in makefile including user setting for Macos * Preparation of makefile to use quay.io instead of Docker Hub in the future * Updated sed scripts to generate automatic version tags for images * Updated team secrets for login to Docker Hub
1 parent 90e5889 commit c2c19d3

File tree

11 files changed

+100
-58
lines changed

11 files changed

+100
-58
lines changed

.github/workflows/build-forwarder.yaml

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -107,11 +107,18 @@ jobs:
107107
run: |
108108
docker build -f ./AKSKubeAuditReceiverSolution/AKSKubeAuditReceiver/Dockerfile \
109109
./AKSKubeAuditReceiverSolution --tag sysdiglabs/aks-audit-log-forwarder
110-
- name: Sysdig Secure inline image scan
111-
uses: sysdiglabs/scan-action@v2
110+
- name: Scan image
111+
id: scan
112+
uses: sysdiglabs/scan-action@v3
112113
with:
113114
image-tag: "sysdiglabs/aks-audit-log-forwarder"
114115
sysdig-secure-token: ${{ secrets.KUBELAB_SECURE_API_TOKEN }}
116+
input-type: docker-daemon
117+
run-as-user: root
118+
- uses: github/codeql-action/upload-sarif@v1
119+
if: always()
120+
with:
121+
sarif_file: ${{ steps.scan.outputs.sarifReport }}
115122

116123
publish_image:
117124
name: Publish container image to registries
@@ -127,16 +134,17 @@ jobs:
127134
- name: Login to DockerHub
128135
uses: docker/login-action@v1
129136
with:
130-
username: ${{ secrets.DOCKERHUB_USERNAME }}
131-
password: ${{ secrets.DOCKERHUB_PASSWORD }}
137+
username: ${{ secrets.SYSDIGLABS_DOCKERHUB_USER }}
138+
password: ${{ secrets.SYSDIGLABS_DOCKERHUB_TOKEN }}
132139
- name: Prepare version labels
133140
id: prepare_version_labels
134141
env:
135142
VERSION_TAG: ${{ github.event.release.tag_name }}
136143
run: |
137144
echo "Version tag: $VERSION_TAG"
138-
VERSION_MAJOR=$(echo $VERSION_TAG | sed 's/[^0-9]*\([0-9]\+\).*/\1/')
139-
VERSION_FULL=$(echo $VERSION_TAG | sed 's/[^0-9]*\([0-9]\+.*\)/\1/')
145+
VERSION_MAJOR=$(echo $VERSION_TAG | sed 's/v\([0-9]*\).*/\1/' )
146+
VERSION_FULL=$(echo $VERSION_TAG | sed 's/v\([0-9][0-9\.]*\).*/\1/' )
147+
[ -z $VERSION_TAG ] && VERSION_FULL="master"
140148
[ -z $VERSION_FULL ] && VERSION_FULL="master"
141149
[ -z $VERSION_MAJOR ] && VERSION_MAJOR="dev"
142150
echo "Version major: $VERSION_MAJOR"

.github/workflows/build-installer.yaml

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -101,9 +101,17 @@ jobs:
101101
id: run_sysdig_inline_scan
102102
env:
103103
SYSDIG_SECURE_TOKEN: ${{ secrets.KUBELAB_SECURE_API_TOKEN }}
104-
run: |
105-
docker run sysdiglabs/secure-inline-scan:2 -s https://secure.sysdig.com -k $SYSDIG_SECURE_TOKEN sysdiglabs/aks-audit-log-installer \
106-
| tee sysdig_image_scan_result.txt
104+
run: |
105+
docker run --rm \
106+
-v /var/run/docker.sock:/var/run/docker.sock \
107+
quay.io/sysdig/secure-inline-scan:2 \
108+
--sysdig-url https://secure.sysdig.com \
109+
--sysdig-token "$SYSDIG_SECURE_TOKEN" \
110+
--storage-type docker-daemon \
111+
--storage-path /var/run/docker.sock \
112+
sysdiglabs/aks-audit-log-installer \
113+
| tee sysdig_image_scan_result.txt
114+
107115
SCAN_RESULT=${PIPESTATUS[0]}
108116
echo "::set-output name=SCAN_RESULT::$SCAN_RESULT"
109117
echo "Scan finished with result: $SCAN_RESULT"
@@ -134,16 +142,17 @@ jobs:
134142
- name: Login to DockerHub
135143
uses: docker/login-action@v1
136144
with:
137-
username: ${{ secrets.DOCKERHUB_USERNAME }}
138-
password: ${{ secrets.DOCKERHUB_PASSWORD }}
145+
username: ${{ secrets.SYSDIGLABS_DOCKERHUB_USER }}
146+
password: ${{ secrets.SYSDIGLABS_DOCKERHUB_TOKEN }}
139147
- name: Prepare version labels
140148
id: prepare_version_labels
141149
env:
142150
VERSION_TAG: ${{ github.event.release.tag_name }}
143151
run: |
144152
echo "Version tag: $VERSION_TAG"
145-
VERSION_MAJOR=$(echo $VERSION_TAG | sed 's/[^0-9]*\([0-9]\+\).*/\1/')
146-
VERSION_FULL=$(echo $VERSION_TAG | sed 's/[^0-9]*\([0-9]\+.*\)/\1/')
153+
VERSION_MAJOR=$(echo $VERSION_TAG | sed 's/v\([0-9]*\).*/\1/' )
154+
VERSION_FULL=$(echo $VERSION_TAG | sed 's/v\([0-9][0-9\.]*\).*/\1/' )
155+
[ -z $VERSION_TAG ] && VERSION_FULL="master"
147156
[ -z $VERSION_FULL ] && VERSION_FULL="master"
148157
[ -z $VERSION_MAJOR ] && VERSION_MAJOR="dev"
149158
echo "Version major: $VERSION_MAJOR"
@@ -158,9 +167,9 @@ jobs:
158167
platforms: linux/amd64
159168
push: true
160169
tags: |
161-
sysdiglabs/aks-audit-log-installer:latest
162-
sysdiglabs/aks-audit-log-installer:${{ steps.prepare_version_labels.outputs.VERSION_MAJOR }}
163-
sysdiglabs/aks-audit-log-installer:${{ steps.prepare_version_labels.outputs.VERSION_FULL }}
170+
quay.io/sysdig/aks-audit-log-installer:latest
171+
quay.io/sysdig/aks-audit-log-installer:${{ steps.prepare_version_labels.outputs.VERSION_MAJOR }}
172+
quay.io/sysdig/aks-audit-log-installer:${{ steps.prepare_version_labels.outputs.VERSION_FULL }}
164173
- name: Login to GitHub Packages
165174
if: github.event_name == 'release'
166175
uses: docker/login-action@v1

AKSKubeAuditReceiverSolution/AKSKubeAuditReceiver/Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,9 @@ RUN addgroup \
3636

3737
RUN chown -R $USER:$USER .
3838

39-
HEALTHCHECK --interval=10s --timeout=5s --retries=3 CMD wget localhost:1234/metrics -q -O - > /dev/null 2>&1
39+
HEALTHCHECK --interval=10s --timeout=5s --retries=3 CMD wget localhost:5000/metrics -q -O - > /dev/null 2>&1
4040

4141
#Prometheus port
42-
EXPOSE 1234
42+
EXPOSE 5000
4343

4444
ENTRYPOINT ["dotnet", "AKSKubeAuditReceiver.dll"]

Makefile

Lines changed: 36 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,19 @@
11
VERSION_TAG=$(shell git describe --tags $(git rev-list --tags --max-count=1))
2-
VERSION_MAJOR=$(shell echo "${VERSION_TAG}" | sed 's/[^0-9]*\([0-9]\+.*\)/\1/' )
3-
VERSION_FULL=$(shell echo "${VERSION_TAG}" | sed 's/[^0-9]*\([0-9]\+\).*/\1/' )
2+
VERSION_MAJOR=$(shell echo "${VERSION_TAG}" | sed 's/v\([0-9]*\).*/\1/' )
3+
VERSION_FULL=$(shell echo "${VERSION_TAG}" | sed 's/v\([0-9][0-9\.]*\).*/\1/' )
44

5-
INSTALLER_IMAGE=aks-audit-log-installer
5+
INSTALLER_IMAGE=sysdiglabs/aks-audit-log-installer
66
INSTALLER_DIR=./
77
INSTALLER_DESC=${INSTALLER_DIR}/build/README.md
88
INSTALLER_DOCKERFILE=${INSTALLER_DIR}/build/Dockerfile
99

10-
FORWARDER_IMAGE=aks-audit-log-forwarder
10+
FORWARDER_IMAGE=sysdiglabs/aks-audit-log-forwarder
1111
FORWARDER_DIR=./AKSKubeAuditReceiverSolution
1212
FORWARDER_DESC=${FORWARDER_DIR}/AKSKubeAuditReceiver/README.md
1313
FORWARDER_DOCKERFILE=${FORWARDER_DIR}/AKSKubeAuditReceiver/Dockerfile
1414

1515
DOCKERHUB_USERNAME=$(shell cat ${KEYS}/DOCKER_USER)
1616
DOCKERHUB_PASSWORD=$(shell cat ${KEYS}/DOCKER_PASS)
17-
DOCKERHUB_ORG=sysdiglabs
1817

1918
GITHUB_USER=$(shell cat ${KEYS}/GH_USER)
2019
GITHUB_PAT_PATH="${KEYS}/GH_PAT_PKG"
@@ -29,21 +28,21 @@ SYSDIG_SECURE_API_TOKEN=$(shell cat ${KEYS}/SYSDIG_SECURE_API_TOKEN)
2928

3029
installer-build-image: IMAGE_DIR=${INSTALLER_DIR}
3130
installer-build-image: IMAGE_DOCKERFILE=${INSTALLER_DOCKERFILE}
32-
installer-build-image: IMAGE=${DOCKERHUB_ORG}/${INSTALLER_IMAGE}
31+
installer-build-image: IMAGE=${INSTALLER_IMAGE}
3332
installer-build-image: build-image
3433

3534
installer-build-push-dev:
36-
docker build ${INSTALLER_DIR} -f ${INSTALLER_DOCKERFILE} -t ${DOCKERHUB_ORG}/${INSTALLER_IMAGE}:dev
37-
docker push ${DOCKERHUB_ORG}/${INSTALLER_IMAGE}:dev
35+
docker build ${INSTALLER_DIR} -f ${INSTALLER_DOCKERFILE} -t ${INSTALLER_IMAGE}:dev
36+
docker push ${INSTALLER_IMAGE}:dev
3837

39-
installer-scan: IMAGE=${DOCKERHUB_ORG}/${INSTALLER_IMAGE}
38+
installer-scan: IMAGE=${INSTALLER_IMAGE}
4039
installer-scan: inline-scan
4140

42-
installer-dockerhub-readme: IMAGE=${DOCKERHUB_ORG}/${INSTALLER_IMAGE}
41+
installer-dockerhub-readme: IMAGE=${INSTALLER_IMAGE}
4342
installer-dockerhub-readme: DESC_PATH=${INSTALLER_DESC}
4443
installer-dockerhub-readme: update-dockerhub-readme
4544

46-
installer-push: IMAGE=${DOCKERHUB_ORG}/${INSTALLER_IMAGE}
45+
installer-push: IMAGE=${INSTALLER_IMAGE}
4746
installer-push: check-shell installer-build-image installer-scan push
4847

4948
installer-gh-pkg-release: IMAGE_NAME=${INSTALLER_IMAGE}
@@ -58,21 +57,21 @@ forwarder-test: check-yaml check-dotnet
5857

5958
forwarder-build-image: IMAGE_DIR=${FORWARDER_DIR}
6059
forwarder-build-image: IMAGE_DOCKERFILE=${FORWARDER_DOCKERFILE}
61-
forwarder-build-image: IMAGE=${DOCKERHUB_ORG}/${FORWARDER_IMAGE}
60+
forwarder-build-image: IMAGE=${FORWARDER_IMAGE}
6261
forwarder-build-image: build-image
6362

6463
forwarder-build-push-dev:
65-
docker build ${FORWARDER_DIR} -f ${FORWARDER_DOCKERFILE} -t ${DOCKERHUB_ORG}/${FORWARDER_IMAGE}:dev
66-
docker push ${DOCKERHUB_ORG}/${FORWARDER_IMAGE}:dev
64+
docker build ${FORWARDER_DIR} -f ${FORWARDER_DOCKERFILE} -t ${FORWARDER_IMAGE}:dev
65+
docker push ${FORWARDER_IMAGE}:dev
6766

6867
forwarder-scan: IMAGE=${FORWARDER_IMAGE}
6968
forwarder-scan: inline-scan
7069

71-
forwarder-dockerhub-readme: IMAGE=${DOCKERHUB_ORG}/${FORWARDER_IMAGE}
70+
forwarder-dockerhub-readme: IMAGE=${FORWARDER_IMAGE}
7271
forwarder-dockerhub-readme: DESC_PATH=${FORWARDER_DESC}
7372
forwarder-dockerhub-readme: update-dockerhub-readme
7473

75-
forwarder-push: IMAGE=${DOCKERHUB_ORG}/${FORWARDER_IMAGE}
74+
forwarder-push: IMAGE=${FORWARDER_IMAGE}
7675
forwarder-push: forwarder-test forwarder-build forwarder-build-image forwarder-scan push
7776

7877
forwarder-gh-pkg-release: IMAGE_NAME=${FORWARDER_IMAGE}
@@ -82,13 +81,13 @@ forwarder-gh-pkg-release: fowarder-test forwarder-build forwarder-build-image fo
8281

8382
install:
8483
docker run -it -v ${HOME}/.azure:/root/.azure \
85-
${DOCKERHUB_ORG}/${INSTALLER_IMAGE}:${MINOR} \
84+
${INSTALLER_IMAGE}:${MINOR} \
8685
-g ${RESOURCE_GROUP} -c ${CLUSTER_NAME}
8786

8887
uninstall:
8988
docker run -it -v ${HOME}/.azure:/root/.azure \
9089
--entrypoint /app/uninstall-aks-audit-log.sh \
91-
${DOCKERHUB_ORG}/${INSTALLER_IMAGE}:${MINOR} \
90+
${INSTALLER_IMAGE}:${MINOR} \
9291
-g ${RESOURCE_GROUP} -c ${CLUSTER_NAME}
9392

9493
# -----------------------------------------------------------------------------
@@ -133,20 +132,21 @@ all-tests: check build test-gh-actions
133132

134133
show-version:
135134
@echo "Version tag: ${VERSION_TAG}"
136-
@echo "Version full: ${VERSION_FULL}"
137135
@echo "Version major: ${VERSION_MAJOR}"
136+
@echo "Version full: ${VERSION_FULL}"
137+
138138

139139
build-image:
140140
docker build ${IMAGE_DIR} -f ${IMAGE_DOCKERFILE} \
141-
-t ${DOCKERHUB_ORG}/${IMAGE}:latest \
142-
-t ${DOCKERHUB_ORG}/${IMAGE}:dev \
143-
-t ${DOCKERHUB_ORG}/${IMAGE}:${VERSION_FULL} \
144-
-t ${DOCKERHUB_ORG}/${IMAGE}:${VERSION_MAJOR}
141+
-t ${IMAGE}:latest \
142+
-t ${IMAGE}:dev \
143+
-t ${IMAGE}:${VERSION_FULL} \
144+
-t ${IMAGE}:${VERSION_MAJOR}
145145

146146
push:
147-
docker push ${DOCKERHUB_ORG}/${IMAGE}:latest
148-
docker push ${DOCKERHUB_ORG}/${IMAGE}:${VERSION_FULL}
149-
docker push ${DOCKERHUB_ORG}/${IMAGE}:${VERSION_MAJOR}
147+
docker push ${IMAGE}:latest
148+
docker push ${IMAGE}:${VERSION_FULL}
149+
docker push ${IMAGE}:${VERSION_MAJOR}
150150

151151
update-dockerhub-readme-docker:
152152
echo 'Updating Dockerhub description' ; \
@@ -181,10 +181,17 @@ gh-pkg-release:
181181
docker build . -f build/Dockerfile -t docker.pkg.github.com/${GITHUB_REPO}/${IMAGE_NAME}:${VERSION_FULL}
182182
docker push docker.pkg.github.com/${GITHUB_REPO}/${IMAGE_NAME}:${VERSION_FULL}
183183

184+
UNAME := $(shell uname)
184185
inline-scan:
185-
@curl -s https://download.sysdig.com/stable/inline_scan.sh | \
186-
bash -s -- \
187-
analyze -s https://secure.sysdig.com -o -k ${SYSDIG_SECURE_API_TOKEN} ${IMAGE} ; \
186+
if [ "${UNAME}"=="Darwin" ]; then DOCKER_USER="-u 0"; else DOCKER_USER=""; fi ; \
187+
docker run $$DOCKER_USER --rm \
188+
-v /var/run/docker.sock:/var/run/docker.sock \
189+
quay.io/sysdig/secure-inline-scan:2 \
190+
--sysdig-url https://secure.sysdig.com \
191+
--sysdig-token "${SYSDIG_SECURE_API_TOKEN}" \
192+
--storage-type docker-daemon \
193+
--storage-path /var/run/docker.sock \
194+
${IMAGE} ; \
188195
RESULT=$$? ; \
189196
echo ; echo "******************************" ; \
190197
[ "$$RESULT" -eq 0 ] && echo "** Scan result > PASS < **" ; \

deployment.yaml.in

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,13 +37,13 @@ spec:
3737
exec:
3838
command:
3939
- wget
40-
- localhost:1234/metrics
40+
- localhost:5000/metrics
4141
- --spider
4242
initialDelaySeconds: 10
4343
livenessProbe:
4444
httpGet:
4545
path: /metrics
46-
port: 1234
46+
port: 5000
4747
initialDelaySeconds: 10
4848
periodSeconds: 20
4949
env:

test/create-infra.sh

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22

33
# set -uf
44

5+
my_resource_group="${RESOURCE_GROUP:-aks-test-group}"
6+
my_cluster_name="${CLUSTER_NAME:-aks-test-cluster}"
7+
58
echo "Create infra"
69
echo "Resource group: $my_resource_group"
710
echo "Cluster name: $my_cluster_name"
@@ -27,9 +30,10 @@ while [ $result -eq 1 ] && [ $i -gt 0 ]; do
2730
#result=$?
2831
i=$((i-1))
2932
sleep 2
30-
#echo -n "."
33+
echo -n "."
3134
done
3235

36+
echo
3337
az aks show --resource-group "$my_resource_group" --name "$my_cluster_name" --query provisioningState -o tsv
3438
echo
3539

test/generate-dev-deployment.sh

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
#!/bin/bash
22

3+
my_resource_group="${RESOURCE_GROUP:-aks-test-group}"
4+
my_cluster_name="${CLUSTER_NAME:-aks-test-cluster}"
5+
36
echo "Resource group: $my_resource_group"
47
echo "Cluster name: $my_cluster_name"
58

test/install-agent.sh

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22

33
set -euf
44

5+
my_resource_group="${RESOURCE_GROUP:-aks-test-group}"
6+
my_cluster_name="${CLUSTER_NAME:-aks-test-cluster}"
7+
58
echo "Getting Kubectl credentials"
69
az aks get-credentials --name "$my_cluster_name" --resource-group "$my_resource_group" --overwrite-existing
710

test/install.sh

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,12 @@
22

33
set -euf
44

5+
my_resource_group="${RESOURCE_GROUP:-aks-test-group}"
6+
my_cluster_name="${CLUSTER_NAME:-aks-test-cluster}"
7+
my_namespace="${SYSDIG_NAMESPACE:-sysdig-agent}"
8+
59
echo "Resource group: $my_resource_group"
610
echo "Cluster name: $my_cluster_name"
711

8-
9-
../install-aks-audit-log.sh -g $my_resource_group -c $my_cluster_name -n my-sysdig-agent --yes
12+
../install-aks-audit-log.sh -g "$my_resource_group" -c "$my_cluster_name" -n "$my_namespace" --yes
1013

test/set-globals.fish

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,10 @@
22

33
set -x ran (cat /dev/random | LC_ALL=C tr -dc "[:alpha:]" | head -c 8)
44

5-
set -Ux my_resource_group AKSAuditLogTest-Group-"$ran"
6-
set -Ux my_cluster_name AKSAuditLogTest-Cluster-"$ran"
7-
set -Ux my_sysdig_namespace my-sysdig-agent
5+
set -Ux RESOURCE_GROUP AKSAuditLogTest-Group-"$ran"
6+
set -Ux CLUSTER_NAME AKSAuditLogTest-Cluster-"$ran"
7+
set -Ux SYSDIG_NAMESPACE sysdig-agent
88

9-
echo "Resource group: $my_resource_group"
10-
echo "Cluster name: $my_cluster_name"
9+
echo "Resource group: $RESOURCE_GROUP"
10+
echo "Cluster name: $CLUSTER_NAME"
11+
echo "Sysdig namespace: $SYSDIG_NAMESPACE"

0 commit comments

Comments
 (0)