1818 cicd_workflow :
1919 description : " Additional string that has to differentiate AWS object from another workflows."
2020 type : string
21-
21+
2222 builder_name :
2323 description : " Builder name used to build docker images. Accepted values: ubuntu, alpine, ubuntu-fips."
2424 type : string
@@ -187,7 +187,7 @@ jobs:
187187 with :
188188 username : ${{ secrets.PULL_REGISTRY_USERNAME }}
189189 password : ${{ secrets.PULL_REGISTRY_PASSWORD }}
190-
190+
191191 - name : Login to an internal build registry
192192 if : vars.INTERNAL_BUILD_REGISTRY
193193 uses : docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d # v3
@@ -204,7 +204,7 @@ jobs:
204204 with :
205205 image : tonistiigi/binfmt:qemu-v6.2.0
206206 platforms : all
207-
207+
208208 # Context need to be created for a self-hosted runner
209209 - name : Set up Docker Context for Buildx
210210 id : buildx-context
@@ -238,7 +238,7 @@ jobs:
238238 build-tarball \
239239 --image-type ${{ matrix.variant.image_type }} \
240240 --output-dir ./build
241-
241+
242242 - name : Save image OCI tarball as artifact
243243 uses : actions/upload-artifact@v4
244244 with :
@@ -249,7 +249,7 @@ jobs:
249249 # Jobs which performs basic sanity checks for the Kubernetes Monitor and Kubernetes Events Monitor
250250 k8s_kubernetes_monitor_tests :
251251 name : Kubernetes Monitors - k8s ${{ inputs.builder_name }} ${{ matrix.k8s_version.version }}-${{ matrix.k8s_version.runtime}}
252- runs-on : ubuntu-22 .04
252+ runs-on : ubuntu-24 .04
253253 timeout-minutes : 15
254254
255255 if : ${{ ! vars.K8S_TESTS_DISABLED }}
@@ -321,7 +321,7 @@ jobs:
321321
322322 - name : Preload minikube images
323323 run : |
324- # Since the minikube runtimes we use cannot be reasonably configured to use custom credentials for docker hub,
324+ # Since the minikube runtimes we use cannot be reasonably configured to use custom credentials for docker hub,
325325 # we need to pull the images and load them into minikube.
326326 docker pull busybox:1.28
327327 minikube image load busybox:1.28
@@ -385,7 +385,7 @@ jobs:
385385 minikube image ls
386386 kubectl apply -f tests/e2e/k8s_k8s_monitor/std_printer_deployment.yaml
387387 kubectl apply -f tests/e2e/k8s_k8s_monitor/long_message_printer_deployment.yaml
388-
388+
389389 kubectl wait --for=condition=ready pod -l app=std-printer
390390 kubectl wait --for=condition=ready pod -l app=long-message-printer
391391 kubectl get pods -A
@@ -396,7 +396,7 @@ jobs:
396396
397397 echo ""
398398 kubectl logs "${APP_POD_NAME}"
399- echo ""
399+ echo ""
400400
401401 - name : Create mock pods for multi account printer
402402 env :
@@ -507,7 +507,7 @@ jobs:
507507 echo "Kubernetes event monitor log has to be handled by the agent 1 time, but it got ${k8s_event_log_files_number}"
508508 exit 1
509509 fi
510-
510+
511511 echo "Wait for BEGIN DELAYED MESSAGE-END DELAYED MESSAGE lines. They should not be splitted."
512512 MINIMUM_RESULTS=10 ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" app="std-printer" parser="test-parser-1" stream="stdout" "BEGIN DELAYED MESSAGE stdout"'
513513 MINIMUM_RESULTS=10 ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" app="std-printer" parser="test-parser-1" stream="stderr" "BEGIN DELAYED MESSAGE stderr"'
@@ -517,7 +517,7 @@ jobs:
517517 echo 'Looking for mixed streams'
518518 RETRY_ATTEMPTS=1 ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" app="std-printer" parser="test-parser-1" stream="stdout" "stderr"' && echo -e $MIXED_STREAMS_ERR_MSG && exit 1 || echo -e $MIXED_STREAMS_SUCCESS_MSG
519519 RETRY_ATTEMPTS=1 ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" app="std-printer" parser="test-parser-1" stream="stderr" "stdout"' && echo -e $MIXED_STREAMS_ERR_MSG && exit 1 || echo -e $MIXED_STREAMS_SUCCESS_MSG
520-
520+
521521 echo "Wait for BEGIN_LONG_MESSAGE .* END_LONG_MESSAGE lines. They should not be splitted."
522522 MINIMUM_RESULTS=10 ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" app="long-message-printer" parser="test-parser-2" stream="stdout" "stdout_BEGIN_LONG_MESSAGE"'
523523 MINIMUM_RESULTS=10 ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" app="long-message-printer" parser="test-parser-2" stream="stderr" "stderr_BEGIN_LONG_MESSAGE"'
@@ -528,7 +528,7 @@ jobs:
528528 RETRY_ATTEMPTS=1 ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" app="long-message-printer" parser="test-parser-2" stream="stdout" "stderr"' && echo -e $MIXED_STREAMS_ERR_MSG && exit 1 || echo -e $MIXED_STREAMS_SUCCESS_MSG
529529 RETRY_ATTEMPTS=1 ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" app="long-message-printer" parser="test-parser-2" stream="stderr" "stdout"' && echo -e $MIXED_STREAMS_ERR_MSG && exit 1 || echo -e $MIXED_STREAMS_SUCCESS_MSG
530530
531-
531+
532532 echo ""
533533
534534 # We only assert this under newer Kubernetes versions since in the old ones CronJobs were not
@@ -544,9 +544,9 @@ jobs:
544544 run : |
545545 export RETRY_ATTEMPTS="14"
546546 export SLEEP_DELAY="10"
547-
548- # Wait for at least one hello-printer job to be scheduled and completed.
549- RETRIES=1;
547+
548+ # Wait for at least one hello-printer job to be scheduled and completed.
549+ RETRIES=1;
550550 until echo -n "Waiting for first job to be completed - retry $RETRIES: " && kubectl wait --for=condition=complete job -l app=hello-printer || [ $RETRIES -gt 60 ]; do sleep 1; RETRIES=$(($RETRIES+1)); done
551551 [ $RETRIES -gt 60 ] && echo "Job didn't start in time" && exit 1
552552
@@ -556,7 +556,7 @@ jobs:
556556
557557 echo "CronJob events checks"
558558 ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" $logfile="/var/log/scalyr-agent-2/kubernetes_events.log" $parser="k8sEvents" k8s-kind="CronJob" involvedObjectKind="CronJob" involvedObjectName="hello" watchEventType="ADDED" reason="SawCompletedJob"'
559-
559+
560560 ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" "Hello from the Kubernetes cluster"'
561561
562562 - name : Check the short lived pods logs are ingested - 404 response handling
@@ -569,16 +569,16 @@ jobs:
569569 ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" message matches "Pod default/short-lived-job-1.* not found in K8s API. Including pod based on SCALYR_K8S_INCLUDE_ALL_CONTAINERS=true."'
570570 ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" message matches "Pod default/short-lived-job-2.* not found in K8s API. Including pod based on SCALYR_K8S_INCLUDE_ALL_CONTAINERS=true."'
571571 ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" message matches "Pod default/short-lived-job-3.* not found in K8s API. Including pod based on SCALYR_K8S_INCLUDE_ALL_CONTAINERS=true."'
572-
572+
573573 - name : Check the short lived pods logs are ingested - log message
574574 env :
575575 # Needed for scalyr-tool
576576 scalyr_readlog_token : " ${{ secrets.CT_SCALYR_TOKEN_PROD_US_CLOUDTECH_TESTING_READ }}"
577577 SCALYR_AGENT_POD_NAME : " ${{ env.SCALYR_AGENT_POD_NAME }}"
578578 run : |
579- ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" "Message from short-lived-container-1"'
580- ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" "Message from short-lived-container-2"'
581- ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" "Message from short-lived-container-3"'
579+ RETRY_ATTEMPTS=20 ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" "Message from short-lived-container-1"'
580+ RETRY_ATTEMPTS=20 ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" "Message from short-lived-container-2"'
581+ RETRY_ATTEMPTS=20 ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" "Message from short-lived-container-3"'
582582
583583 - name : Install Testing Python Packages
584584 run : |
@@ -604,13 +604,13 @@ jobs:
604604 ACCOUNT_NAME_7 :
" [email protected] " 605605 run : |
606606 echo 'Looking for multiple account logs'
607-
607+
608608 ./scripts/cicd/verify-multiaccount-records-have-been-ingested.py
609609
610610
611611 k8s_open_metrics_monitor_tests :
612612 name : OpenMetrics Monitor - k8s ${{ inputs.builder_name }} ${{ matrix.k8s_version.version }}-${{ matrix.k8s_version.runtime}}
613- runs-on : ubuntu-22 .04
613+ runs-on : ubuntu-24 .04
614614 if : vars.K8S_TESTS_DISABLED != 'true' && github.ref_name != '_release_build' && inputs.builder_name != 'alpine'
615615 timeout-minutes : 15
616616
@@ -693,7 +693,7 @@ jobs:
693693 --image-type k8s
694694
695695 docker image ls
696-
696+
697697 # Needed for containerd or cri-o runtime
698698 if [ "${{ matrix.k8s_version.runtime }}" = "containerd" ] || [ "${{ matrix.k8s_version.runtime }}" = "cri-o" ]; then
699699 docker tag k8s-image:test docker.io/library/k8s-image:test
@@ -732,10 +732,10 @@ jobs:
732732 sleep 2
733733 kubectl wait --for=condition=ready pod -l app=node-exporter --namespace monitoring ||
734734 (echo "Failed to wait for node-exporter pod to become ready"; kubectl describe pods -l app=node-exporter --namespace monitoring; echo; echo GET PODS:; kubectl get pods -A; echo LOGS:; kubectl logs -l app=node-exporter --namespace monitoring; exit 1)
735-
735+
736736 kubectl wait --for=condition=ready pod -l app=java-hello-world ||
737737 (echo "Failed to wait for java-hello-world pod to become ready"; kubectl describe pods -l app=java-hello-world; echo; echo GET PODS:; kubectl get pods -A; echo LOGS:; kubectl logs -l app=java-hello-world; exit 1)
738-
738+
739739 kubectl get pods -A
740740
741741 - name : Create scalyr-agent-2 daemonset
@@ -760,7 +760,7 @@ jobs:
760760 run : |
761761 export RETRY_ATTEMPTS="30"
762762 export SLEEP_DELAY="10"
763-
763+
764764 # Verify agent is running
765765 echo "Agent running checks"
766766 ./scripts/cicd/scalyr-query.sh '$serverHost="'${SCALYR_AGENT_POD_NAME}'" $logfile="/var/log/scalyr-agent-2/agent.log" "Starting scalyr agent..."'
@@ -833,7 +833,7 @@ jobs:
833833 - build_image_tarball
834834 name : K8s Smoketest - ${{ inputs.builder_name }}
835835 if : vars.K8S_TESTS_DISABLED != 'true' && github.ref_name != '_release_build' && (github.event_name != 'pull_request' || ! github.event.pull_request.draft)
836- steps :
836+ steps :
837837 - name : Checkout Repository
838838 uses : actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4
839839
@@ -858,8 +858,8 @@ jobs:
858858 - name : Set up Docker Context for Buildx
859859 id : buildx-context
860860 run : |
861- docker context create builders || echo Already exists
862-
861+ docker context create builders || echo Already exists
862+
863863 - name : Set up Docker Buildx
864864 uses : docker/setup-buildx-action@v3
865865 with :
@@ -904,7 +904,7 @@ jobs:
904904 SCALYR_API_KEY : ${{ secrets.CT_SCALYR_TOKEN_PROD_US_CLOUDTECH_TESTING_WRITE }}
905905 READ_API_KEY : ${{ secrets.CT_SCALYR_TOKEN_PROD_US_CLOUDTECH_TESTING_READ }}
906906 run : |
907- source ./.circleci/smoketest_k8s.sh scalyr/scalyr-agent-ci-unittest:4 150 no_delete_existing_k8s_objs k8s-image:test
907+ source ./.circleci/smoketest_k8s.sh scalyr/scalyr-agent-ci-unittest:4 300 no_delete_existing_k8s_objs k8s-image:test
908908
909909 - name : Upload test results
910910 uses : actions/upload-artifact@v4
@@ -925,11 +925,11 @@ jobs:
925925 matrix :
926926 variant :
927927 - image_type : docker-json
928- timeout : 150
928+ timeout : 300
929929 - image_type : docker-syslog
930- timeout : 150
930+ timeout : 300
931931 - image_type : docker-api
932- timeout : 200
932+ timeout : 300
933933 steps :
934934 - name : Checkout Repository
935935 uses : actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4
@@ -951,7 +951,7 @@ jobs:
951951 with :
952952 username : ${{ secrets.PULL_REGISTRY_USERNAME }}
953953 password : ${{ secrets.PULL_REGISTRY_PASSWORD }}
954-
954+
955955 - name : Login to an internal build registry
956956 if : vars.INTERNAL_BUILD_REGISTRY
957957 uses : docker/login-action@343f7c4344506bcbf9b4de18042ae17996df046d # v3
@@ -1025,7 +1025,7 @@ jobs:
10251025
10261026 publish_images :
10271027 name : Publish image ${{ matrix.variant.image_type }}-${{ inputs.builder_name }}
1028- runs-on : ubuntu-22 .04
1028+ runs-on : ubuntu-24 .04
10291029 if : github.ref_type == 'tag' || github.ref_name == 'master' || github.head_ref == 'release' || github.event_name == 'pull_request'
10301030 needs :
10311031 # k8s_kubernetes_monitor_tests, k8s_open_metrics_monitor_tests, k8s-smoketest checks are not needed before pushing a test version to dockerhub.
@@ -1066,7 +1066,7 @@ jobs:
10661066 echo "tags=$AGENT_VERSION,latest" >> "${GITHUB_OUTPUT}"
10671067 else
10681068 echo "tags=empty" >> "${GITHUB_OUTPUT}"
1069- fi
1069+ fi
10701070 elif [ "${{ github.ref_name }}" = "master" ]; then
10711071 echo "tags=${{ github.sha }}" >> "${GITHUB_OUTPUT}"
10721072 elif [ "${{ github.head_ref }}" = "release" ]; then
@@ -1079,7 +1079,7 @@ jobs:
10791079 fi
10801080
10811081 - name : Set up skopeo
1082- uses : warjiang/setup-skopeo@latest
1082+ uses : warjiang/setup-skopeo@main
10831083 with :
10841084 version : latest
10851085
@@ -1092,6 +1092,7 @@ jobs:
10921092 --base-image ${{ inputs.base_image }} \
10931093 publish \
10941094 --registry docker.io \
1095+ --no-verify-tls \
10951096 --name-prefix "${{ secrets.PUBLISH_REGISTRY_USERNAME }}" \
10961097 --tags "${{ steps.verify.outputs.tags }}" \
10971098 --from-oci-layout /tmp/image_tarball/${{ matrix.variant.image_type }}-${{ inputs.builder_name }}.tar \
0 commit comments