35
35
SAMPLE_APP_REMOTE_SERVICE_IMAGE : ${{ secrets.APP_SIGNALS_E2E_TEST_ACC }}.dkr.ecr.${{ inputs.aws-region }}.amazonawss.com/${{ secrets.APP_SIGNALS_E2E_RE_SA_IMG }}
36
36
METRIC_NAMESPACE : AppSignals
37
37
LOG_GROUP_NAME : /aws/appsignals/eks
38
- TEST_RESOURCES_FOLDER : /home/runner/work /aws-application-signals-test-framework/aws-application-signals-test-framework
38
+ TEST_RESOURCES_FOLDER : /__w /aws-application-signals-test-framework/aws-application-signals-test-framework
39
39
40
40
jobs :
41
41
e2e-eks-test :
42
42
runs-on : ubuntu-latest
43
+ container :
44
+ image : ghcr.io/aws-observability/aws-application-signals-test-framework
45
+ credentials :
46
+ username : ${{ github.actor }}
47
+ password : ${{ secrets.PAT_PACKAGE_READ_ACCESS_TOKEN }}
48
+
43
49
steps :
44
50
- uses : actions/checkout@v4
45
51
with :
82
88
role-to-assume : arn:aws:iam::${{ env.ACCOUNT_ID }}:role/${{ secrets.E2E_TEST_ROLE_ARN }}
83
89
aws-region : ${{ inputs.aws-region }}
84
90
85
- # local directory to store the kubernetes config
86
- - name : Create kubeconfig directory
87
- run : mkdir -p ${{ github.workspace }}/.kube
88
-
89
- - name : Set KUBECONFIG environment variable
90
- run : echo KUBECONFIG="${{ github.workspace }}/.kube/config" >> $GITHUB_ENV
91
-
92
91
- name : Set up kubeconfig
93
92
run : aws eks update-kubeconfig --name ${{ inputs.test-cluster-name }} --region ${{ inputs.aws-region }}
94
93
95
- - name : Download and install eksctl
96
- uses : ./.github/workflows/actions/execute_and_retry
97
- with :
98
- pre-command : ' mkdir ${{ github.workspace }}/eksctl'
99
- command : ' curl -sLO "https://github.com/weaveworks/eksctl/releases/latest/download/eksctl_Linux_amd64.tar.gz"
100
- && tar -xzf eksctl_Linux_amd64.tar.gz -C ${{ github.workspace }}/eksctl && rm eksctl_Linux_amd64.tar.gz'
101
- cleanup : ' rm -f eksctl_Linux_amd64.tar.gz'
102
-
103
94
- name : Add eksctl to Github Path
104
95
run : |
105
96
echo "${{ github.workspace }}/eksctl" >> $GITHUB_PATH
@@ -117,13 +108,6 @@ jobs:
117
108
--region ${{ inputs.aws-region }} \
118
109
--approve"
119
110
120
- - name : Set up terraform
121
- uses : ./.github/workflows/actions/execute_and_retry
122
- with :
123
- command : " wget -O- https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg"
124
- post-command : ' echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
125
- && sudo apt update && sudo apt install terraform'
126
-
127
111
- name : Initiate Terraform
128
112
uses : ./.github/workflows/actions/execute_and_retry
129
113
with :
@@ -162,7 +146,7 @@ jobs:
162
146
# If the deployment_failed is still 0, then the terraform deployment succeeded and now try to connect to the endpoint
163
147
# after installing App Signals. Attempts to connect will be made for up to 10 minutes
164
148
if [ $deployment_failed -eq 0 ]; then
165
- source ${{ env.TEST_RESOURCES_FOLDER }}/.github/workflows/util/execute_and_retry.sh
149
+ . ${{ env.TEST_RESOURCES_FOLDER }}/.github/workflows/util/execute_and_retry.sh
166
150
execute_and_retry 2 \
167
151
"${{ env.TEST_RESOURCES_FOLDER }}/enablement-script/enable-app-signals.sh \
168
152
${{ inputs.test-cluster-name }} \
@@ -273,13 +257,6 @@ jobs:
273
257
curl -S -s http://${{ env.APP_ENDPOINT }}/remote-service?ip=${{ env.REMOTE_SERVICE_POD_IP }}/
274
258
curl -S -s http://${{ env.APP_ENDPOINT }}/client-call/
275
259
276
- - name : Build Gradlew
277
- uses : ./.github/workflows/actions/execute_and_retry
278
- with :
279
- max_retry : 2
280
- command : " ./gradlew"
281
- cleanup : " ./gradlew clean"
282
-
283
260
# Validation for app signals telemetry data
284
261
- name : Call endpoint and validate generated EMF logs
285
262
id : log-validation
0 commit comments