Skip to content

Commit b514d71

Browse files
authored
Multi Dataset Account ChR (#1256)
1 parent 023b315 commit b514d71

24 files changed

+1642
-579
lines changed

.github/actions/install-k8s-agent/action.yml

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,6 @@ inputs:
99
scalyr_api_key:
1010
description: "Write API key to be used by the agent."
1111
required: true
12-
scalyr_api_key_team_2:
13-
description: "Write API key to be used by the agent."
14-
required: false
15-
scalyr_api_key_team_3:
16-
description: "Write API key to be used by the agent."
17-
required: false
18-
scalyr_api_key_team_4:
19-
description: "Write API key to be used by the agent."
20-
required: false
2112
scalyr_cluster_name:
2213
description: "Cluster name to use."
2314
required: true
@@ -90,21 +81,6 @@ runs:
9081
# Define api key
9182
kubectl create secret generic scalyr-api-key --namespace scalyr --from-literal=scalyr-api-key="${{ inputs.scalyr_api_key }}"
9283
93-
# Create a secret if the scalyr_api_key_team_2 is set
94-
if [ ! -z "${{ inputs.scalyr_api_key_team_2 }}" ]; then
95-
kubectl create secret generic scalyr-api-key-team-2 --namespace scalyr --from-literal=scalyr-api-key="${{ inputs.scalyr_api_key_team_2 }}"
96-
fi
97-
98-
# Create a secret if the scalyr_api_key_team_3 is set
99-
if [ ! -z "${{ inputs.scalyr_api_key_team_3 }}" ]; then
100-
kubectl create secret generic scalyr-api-key-team-3 --namespace scalyr --from-literal=scalyr-api-key="${{ inputs.scalyr_api_key_team_3 }}"
101-
fi
102-
103-
# Create a secret if the scalyr_api_key_team_4 is set
104-
if [ ! -z "${{ inputs.scalyr_api_key_team_4 }}" ]; then
105-
kubectl create secret generic scalyr-api-key-team-4 --namespace scalyr --from-literal=scalyr-api-key="${{ inputs.scalyr_api_key_team_4 }}"
106-
fi
107-
10884
# Create configmap
10985
kubectl create configmap --namespace scalyr scalyr-config \
11086
--from-literal=SCALYR_K8S_CLUSTER_NAME="${{ inputs.scalyr_cluster_name }}" \

.github/workflows/agent-build-new.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,9 +93,15 @@ jobs:
9393
SCALYR_API_KEY_READ_2: ${{ secrets.CT_SCALYR_TOKEN_PROD_US_CLOUDTECH_TESTING_2_READ }}
9494
SCALYR_API_KEY_READ_3: ${{ secrets.CT_SCALYR_TOKEN_PROD_US_CLOUDTECH_TESTING_3_READ }}
9595
SCALYR_API_KEY_READ_4: ${{ secrets.CT_SCALYR_TOKEN_PROD_US_CLOUDTECH_TESTING_4_READ }}
96+
SCALYR_API_KEY_READ_5: ${{ secrets.CT_SCALYR_TOKEN_PROD_US_CLOUDTECH_TESTING_5_READ }}
97+
SCALYR_API_KEY_READ_6: ${{ secrets.CT_SCALYR_TOKEN_PROD_US_CLOUDTECH_TESTING_6_READ }}
98+
SCALYR_API_KEY_READ_7: ${{ secrets.CT_SCALYR_TOKEN_PROD_US_CLOUDTECH_TESTING_7_READ }}
9699
SCALYR_API_KEY_WRITE_2: ${{ secrets.CT_SCALYR_TOKEN_PROD_US_CLOUDTECH_TESTING_2_WRITE }}
97100
SCALYR_API_KEY_WRITE_3: ${{ secrets.CT_SCALYR_TOKEN_PROD_US_CLOUDTECH_TESTING_3_WRITE }}
98101
SCALYR_API_KEY_WRITE_4: ${{ secrets.CT_SCALYR_TOKEN_PROD_US_CLOUDTECH_TESTING_4_WRITE }}
102+
SCALYR_API_KEY_WRITE_5: ${{ secrets.CT_SCALYR_TOKEN_PROD_US_CLOUDTECH_TESTING_5_WRITE }}
103+
SCALYR_API_KEY_WRITE_6: ${{ secrets.CT_SCALYR_TOKEN_PROD_US_CLOUDTECH_TESTING_6_WRITE }}
104+
SCALYR_API_KEY_WRITE_7: ${{ secrets.CT_SCALYR_TOKEN_PROD_US_CLOUDTECH_TESTING_7_WRITE }}
99105
PULL_REGISTRY_USERNAME: ${{ secrets.DOCKER_HUB_USERNAME_PROD_ACCOUNT }}
100106
PULL_REGISTRY_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD_PROD_ACCOUNT }}
101107
PUBLISH_REGISTRY_USERNAME: ${{ (github.ref_type == 'tag' || github.ref_name == 'master') && secrets.DOCKER_HUB_USERNAME_PROD_ACCOUNT || secrets.DOCKER_HUB_USERNAME_TEST_ACCOUNT }}

.github/workflows/reusable-agent-build-container-images.yml

Lines changed: 54 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -50,12 +50,24 @@ on:
5050
required: true
5151
SCALYR_API_KEY_READ_4:
5252
required: true
53+
SCALYR_API_KEY_READ_5:
54+
required: true
55+
SCALYR_API_KEY_READ_6:
56+
required: true
57+
SCALYR_API_KEY_READ_7:
58+
required: true
5359
SCALYR_API_KEY_WRITE_2:
5460
required: true
5561
SCALYR_API_KEY_WRITE_3:
5662
required: true
5763
SCALYR_API_KEY_WRITE_4:
5864
required: true
65+
SCALYR_API_KEY_WRITE_5:
66+
required: true
67+
SCALYR_API_KEY_WRITE_6:
68+
required: true
69+
SCALYR_API_KEY_WRITE_7:
70+
required: true
5971
PULL_REGISTRY_USERNAME:
6072
required: true
6173
PULL_REGISTRY_PASSWORD:
@@ -316,6 +328,12 @@ jobs:
316328
with:
317329
driver-opts: network=host
318330

331+
- name: Login to DockerHub
332+
uses: docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d # v3
333+
with:
334+
username: ${{ secrets.PULL_REGISTRY_USERNAME }}
335+
password: ${{ secrets.PULL_REGISTRY_PASSWORD }}
336+
319337
- name: Install Scalyr tool
320338
run: |
321339
curl https://raw.githubusercontent.com/scalyr/scalyr-tool/master/scalyr > scalyr
@@ -330,6 +348,13 @@ jobs:
330348
container_runtime: "${{ matrix.k8s_version.runtime }}"
331349
github_token: "${{ secrets.GITHUB_TOKEN }}"
332350

351+
- name: Preload minikube images
352+
run: |
353+
# Since the minikube runtimes we use cannot be reasonably configured to use custom credentials for docker hub,
354+
# we need to pull the images and load them into minikube.
355+
docker pull busybox:1.28
356+
minikube image load busybox:1.28
357+
333358
- name: Download OCI tarball of the built image.
334359
uses: actions/download-artifact@9bc31d5ccc31df68ecc42ccf4149144866c47d8a # v3
335360
with:
@@ -381,11 +406,9 @@ jobs:
381406
minikube image ls
382407
kubectl apply -f tests/e2e/k8s_k8s_monitor/std_printer_deployment.yaml
383408
kubectl apply -f tests/e2e/k8s_k8s_monitor/long_message_printer_deployment.yaml
384-
kubectl apply -f tests/e2e/k8s_k8s_monitor/multiple_account_printers.yaml
385409
386410
kubectl wait --for=condition=ready pod -l app=std-printer
387411
kubectl wait --for=condition=ready pod -l app=long-message-printer
388-
kubectl wait --for=condition=ready pod -l app=multiple-account-printer
389412
kubectl get pods -A
390413
391414
export APP_POD_NAME=$(kubectl get pod --namespace=default --selector=app=std-printer -o jsonpath="{.items[0].metadata.name}")
@@ -394,7 +417,18 @@ jobs:
394417
395418
echo ""
396419
kubectl logs "${APP_POD_NAME}"
397-
echo ""
420+
echo ""
421+
422+
- name: Create mock pods for multi account printer
423+
env:
424+
scalyr_api_key_write_team_2: "${{ secrets.SCALYR_API_KEY_WRITE_2 }}"
425+
scalyr_api_key_write_team_3: "${{ secrets.SCALYR_API_KEY_WRITE_3 }}"
426+
scalyr_api_key_write_team_4: "${{ secrets.SCALYR_API_KEY_WRITE_4 }}"
427+
scalyr_api_key_write_team_5: "${{ secrets.SCALYR_API_KEY_WRITE_5 }}"
428+
scalyr_api_key_write_team_6: "${{ secrets.SCALYR_API_KEY_WRITE_6 }}"
429+
scalyr_api_key_write_team_7: "${{ secrets.SCALYR_API_KEY_WRITE_7 }}"
430+
run: |
431+
tests/e2e/k8s_k8s_monitor/multiple_account_printers/deploy.sh
398432
399433
# We create mock CronJob so we can assert that Kubernetes Events monitor correctly handles
400434
# CronJob and Job Events.
@@ -567,22 +601,32 @@ jobs:
567601
./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" "Message from short-lived-container-2"'
568602
./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" "Message from short-lived-container-3"'
569603
604+
- name: Install Testing Python Packages
605+
run: |
606+
python3 -m pip install kubernetes tabulate
607+
570608
- name: Verify multiaccount records have been ingested
571609
timeout-minutes: 14
572610
env:
573-
scalyr_api_key_team: "${{ secrets.CT_SCALYR_TOKEN_PROD_US_CLOUDTECH_TESTING_READ }}"
574-
scalyr_api_key_team_2: "${{ secrets.SCALYR_API_KEY_READ_2 }}"
575-
scalyr_api_key_team_3: "${{ secrets.SCALYR_API_KEY_READ_3 }}"
576-
scalyr_api_key_team_4: "${{ secrets.SCALYR_API_KEY_READ_4 }}"
577-
SCALYR_AGENT_POD_NAME: "${{ env.SCALYR_AGENT_POD_NAME }}"
578-
ACCOUNT_NAME: "[email protected]"
611+
SCALYR_API_KEY_READ_TEAM_1: "${{ secrets.CT_SCALYR_TOKEN_PROD_US_CLOUDTECH_TESTING_READ }}"
612+
SCALYR_API_KEY_READ_TEAM_2: "${{ secrets.SCALYR_API_KEY_READ_2 }}"
613+
SCALYR_API_KEY_READ_TEAM_3: "${{ secrets.SCALYR_API_KEY_READ_3 }}"
614+
SCALYR_API_KEY_READ_TEAM_4: "${{ secrets.SCALYR_API_KEY_READ_4 }}"
615+
SCALYR_API_KEY_READ_TEAM_5: "${{ secrets.SCALYR_API_KEY_READ_5 }}"
616+
SCALYR_API_KEY_READ_TEAM_6: "${{ secrets.SCALYR_API_KEY_READ_6 }}"
617+
SCALYR_API_KEY_READ_TEAM_7: "${{ secrets.SCALYR_API_KEY_READ_7 }}"
618+
SERVER_HOST: "${{ env.SCALYR_AGENT_POD_NAME }}"
619+
ACCOUNT_NAME_1: "[email protected]"
579620
ACCOUNT_NAME_2: "[email protected]"
580621
ACCOUNT_NAME_3: "[email protected]"
581622
ACCOUNT_NAME_4: "[email protected]"
623+
ACCOUNT_NAME_5: "[email protected]"
624+
ACCOUNT_NAME_6: "[email protected]"
625+
ACCOUNT_NAME_7: "[email protected]"
582626
run: |
583627
echo 'Looking for multiple account logs'
584628
585-
./scripts/cicd/verify-multiaccount-records-have-been-ingested.sh
629+
./scripts/cicd/verify-multiaccount-records-have-been-ingested.py
586630
587631
- name: Notify Slack on Failure
588632
if: ${{ failure() && github.ref_name == 'master' }}

0 commit comments

Comments
 (0)