Skip to content

Commit e9313ff

Browse files
committed
fix: update appveyor integration tests
1 parent bb39e15 commit e9313ff

11 files changed

Lines changed: 89 additions & 69 deletions

File tree

.github/workflows/integration-tests.yml

Lines changed: 23 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,9 @@ on:
88
workflow_dispatch: # Allow manual triggering
99
# NOTE: This workflow can only be manually triggered from develop or main branches
1010
# The other branch will not pass the OIDC permission check
11+
branches:
12+
- develop # Allow manual trigger on develop branch
13+
- main # Allow manual trigger on main branch
1114

1215
permissions:
1316
id-token: write # Required for OIDC
@@ -49,7 +52,7 @@ jobs:
4952
- package-delete-deploy
5053
- sync
5154
- local-invoke
52-
- local-start1
55+
- local-start
5356
- local-start2
5457
- other-and-e2e
5558
exclude:
@@ -63,7 +66,7 @@ jobs:
6366
- container_runtime: no-container
6467
test_suite: local-invoke
6568
- container_runtime: no-container
66-
test_suite: local-start1
69+
test_suite: local-start
6770
- container_runtime: no-container
6871
test_suite: local-start2
6972
- container_runtime: no-container
@@ -119,20 +122,19 @@ jobs:
119122
3.10
120123
3.12
121124
3.13
122-
3.14
123125
124126
- name: Set up Node.js
125127
if: contains(fromJSON('["build-integ", "build-integ-java-python-provided", "build-integ-dotnet-node-ruby", "build-integ-arm64"]'), matrix.test_suite) && matrix.container_runtime == 'no-container'
126128
uses: actions/setup-node@v4
127129
with:
128130
node-version: ${{ env.NODE_VERSION }}
129131

130-
- name: Set up Java 25
132+
- name: Set up Java 21
131133
if: (contains(fromJSON('["build-integ", "build-integ-java-python-provided", "build-integ-arm64", "build-integ-arm64-java"]'), matrix.test_suite) && matrix.container_runtime == 'no-container') || matrix.test_suite == 'sync'
132134
uses: actions/setup-java@v4
133135
with:
134136
distribution: 'corretto'
135-
java-version: '25'
137+
java-version: '21'
136138

137139
- name: Set up Go
138140
if: contains(fromJSON('["build-integ", "build-integ-java-python-provided", "build-integ-arm64"]'), matrix.test_suite) && matrix.container_runtime == 'no-container'
@@ -150,23 +152,23 @@ jobs:
150152
wget https://dlcdn.apache.org/maven/maven-3/3.9.11/binaries/apache-maven-3.9.11-bin.zip -P /tmp
151153
sudo unzip -d /opt/mvn /tmp/apache-maven-*.zip
152154
153-
# Install Gradle 9.2.0
154-
wget https://services.gradle.org/distributions/gradle-9.2.0-bin.zip -P /tmp
155+
# Install Gradle 9.0.0
156+
wget https://services.gradle.org/distributions/gradle-9.0.0-bin.zip -P /tmp
155157
sudo unzip -d /opt/gradle /tmp/gradle-*.zip
156158
157159
# Create symlinks to ensure our Maven is used
158160
sudo ln -sf /opt/mvn/apache-maven-3.9.11/bin/mvn /usr/local/bin/mvn
159-
sudo ln -sf /opt/gradle/gradle-9.2.0/bin/gradle /usr/local/bin/gradle
161+
sudo ln -sf /opt/gradle/gradle-9.0.0/bin/gradle /usr/local/bin/gradle
160162
161163
# Add to PATH (prepend to ensure our versions are used first)
162164
echo "/opt/mvn/apache-maven-3.9.11/bin" >> $GITHUB_PATH
163-
echo "/opt/gradle/gradle-9.2.0/bin" >> $GITHUB_PATH
165+
echo "/opt/gradle/gradle-9.0.0/bin" >> $GITHUB_PATH
164166
165167
# Set MAVEN_HOME
166168
echo "MAVEN_HOME=/opt/mvn/apache-maven-3.9.11" >> $GITHUB_ENV
167169
168170
# Verify versions
169-
export PATH="/opt/mvn/apache-maven-3.9.11/bin:/opt/gradle/gradle-9.2.0/bin:$PATH"
171+
export PATH="/opt/mvn/apache-maven-3.9.11/bin:/opt/gradle/gradle-9.0.0/bin:$PATH"
170172
mvn --version
171173
gradle --version
172174
@@ -294,7 +296,7 @@ jobs:
294296
- name: Get testing resources and credentials
295297
run: |
296298
# Try with skip_role_deletion parameter first
297-
test_env_var=$(python3.9 tests/get_testing_resources.py skip_role_deletion)
299+
test_env_var=$(python3.9 tests/get_testing_resources.py skip_role_deletion 2>&1)
298300
299301
if [ $? -ne 0 ]; then
300302
echo "First attempt with skip_role_deletion failed, trying without parameter..."
@@ -321,6 +323,13 @@ jobs:
321323
echo "AWS_KMS_KEY=$(echo "$test_env_var" | jq -j ".TestKMSKeyArn")" >> $GITHUB_ENV
322324
echo "AWS_SIGNING_PROFILE_NAME=$(echo "$test_env_var" | jq -j ".TestSigningProfileName")" >> $GITHUB_ENV
323325
echo "AWS_SIGNING_PROFILE_VERSION_ARN=$(echo "$test_env_var" | jq -j ".TestSigningProfileARN")" >> $GITHUB_ENV
326+
327+
# Display first 6 characters of credentials for verification
328+
ACCESS_KEY=$(echo "$test_env_var" | jq -j ".accessKeyID")
329+
SECRET_KEY=$(echo "$test_env_var" | jq -j ".secretAccessKey")
330+
echo "AWS_ACCESS_KEY_ID (first 6 chars): ${ACCESS_KEY:0:6}..."
331+
echo "AWS_SECRET_ACCESS_KEY (first 6 chars): ${SECRET_KEY:0:6}..."
332+
324333
325334
- name: Login to Public ECR
326335
if: matrix.container_runtime != 'no-container' && env.BY_CANARY == 'true'
@@ -338,7 +347,7 @@ jobs:
338347
run: |
339348
# Set USING_FINCH_RUNTIME environment variable for finch tests
340349
if [ "${{ matrix.container_runtime }}" = "finch" ]; then
341-
export CONTAINER_RUNTIME="finch"
350+
export container_runtime="finch"
342351
fi
343352
344353
# Determine container keyword filter based on container_runtime
@@ -376,8 +385,8 @@ jobs:
376385
"local-invoke")
377386
pytest -vv --reruns 3 tests/integration/local/invoke tests/integration/local/generate_event --json-report --json-report-file=TEST_REPORT-integration-local-invoke-${{ matrix.container_runtime }}.json
378387
;;
379-
"local-start1")
380-
pytest -vv --reruns 3 tests/integration/local/start_api --ignore tests/integration/local/start_api/test_start_api_with_terraform_application.py --json-report --json-report-file=TEST_REPORT-integration-local-start1-${{ matrix.container_runtime }}.json
388+
"local-start")
389+
pytest -vv --reruns 3 tests/integration/local/start_api --ignore tests/integration/local/start_api/test_start_api_with_terraform_application.py --json-report --json-report-file=TEST_REPORT-integration-local-start-${{ matrix.container_runtime }}.json
381390
;;
382391
"local-start2")
383392
pytest -vv --reruns 3 tests/integration/local/start_lambda tests/integration/local/start_api/test_start_api_with_terraform_application.py --json-report --json-report-file=TEST_REPORT-integration-local-start2-${{ matrix.container_runtime }}.json

appveyor-ubuntu.yml

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,11 @@ install:
4444
# AppVeyor's apt-get cache might be outdated, and the package could potentially be 404.
4545
- sh: "sudo apt-get update --allow-releaseinfo-change"
4646

47-
# install coretto 21
47+
# install coretto 25
4848
- sh: wget -O - https://apt.corretto.aws/corretto.key | sudo gpg --dearmor -o /usr/share/keyrings/corretto-keyring.gpg
4949
- sh: echo "deb [signed-by=/usr/share/keyrings/corretto-keyring.gpg] https://apt.corretto.aws stable main" | sudo tee /etc/apt/sources.list.d/corretto.list
50-
- sh: sudo apt-get update; sudo apt-get install -y java-21-amazon-corretto-jdk
51-
- sh: JAVA_HOME=/usr/lib/jvm/java-21-amazon-corretto
50+
- sh: sudo apt-get update; sudo apt-get install -y java-25-amazon-corretto-jdk
51+
- sh: JAVA_HOME=/usr/lib/jvm/java-25-amazon-corretto
5252
- sh: PATH=$JAVA_HOME/bin:$PATH
5353
- sh: java --version
5454
- sh: javac --version
@@ -237,11 +237,11 @@ install:
237237
- sh: "npm install npm@10.2.3 -g"
238238
- sh: "npm -v"
239239

240-
# Install latest gradle
240+
# Install latest gradle comptabile with Java 25
241241
- sh: "sudo apt-get -y remove gradle"
242-
- sh: "wget https://services.gradle.org/distributions/gradle-9.0.0-bin.zip -P /tmp"
242+
- sh: "wget https://services.gradle.org/distributions/gradle-9.2.0-bin.zip -P /tmp"
243243
- sh: "sudo unzip -d /opt/gradle /tmp/gradle-*.zip"
244-
- sh: "PATH=/opt/gradle/gradle-9.0.0/bin:$PATH"
244+
- sh: "PATH=/opt/gradle/gradle-9.2.0/bin:$PATH"
245245
- sh: "gradle --version"
246246

247247
# Install dotnet8 SDK
@@ -253,6 +253,15 @@ install:
253253
- sh: "./aws_cli/bin/python -m pip install awscli"
254254
- sh: "PATH=$(echo $PWD'/aws_cli/bin'):$PATH"
255255

256+
# install python 3.14
257+
- sh: |
258+
DEST="$HOME/venv3.14"
259+
URL="https://github.com/astral-sh/python-build-standalone/releases/download/20251031/cpython-3.14.0+20251031-x86_64-unknown-linux-gnu-install_only.tar.gz"
260+
curl -L "$URL" | tar -xz
261+
mv python $DEST
262+
python --version
263+
pip --version
264+
256265
- sh: "PATH=$PATH:$HOME/venv3.7/bin:$HOME/venv3.8/bin:$HOME/venv3.9/bin:$HOME/venv3.10/bin:$HOME/venv3.11/bin:$HOME/venv3.12/bin:$HOME/venv3.13/bin:$HOME/venv3.14/bin"
257266

258267
# update ca-certificates which causes failures with newest golang library

requirements/base.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ regex!=2021.10.8
3131
tzlocal==5.3.1
3232

3333
#Adding cfn-lint dependency for SAM validate
34-
cfn-lint~=1.40.4
34+
cfn-lint~=1.40.2
3535

3636
# Type checking boto3 objects
3737
boto3-stubs[apigateway,cloudformation,ecr,iam,lambda,s3,schemas,secretsmanager,signer,stepfunctions,sts,xray,sqs,kinesis]==1.40.61

requirements/reproducible-linux.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -146,9 +146,9 @@ cffi==2.0.0 \
146146
--hash=sha256:fc7de24befaeae77ba923797c7c87834c73648a05a4bde34b3b7e5588973a453 \
147147
--hash=sha256:fe562eb1a64e67dd297ccc4f5addea2501664954f2692b69a76449ec7913ecbf
148148
# via cryptography
149-
cfn-lint==1.40.4 \
150-
--hash=sha256:7b8bf9dac877842633d8403a8b2c31874b21c9922d74813da34e552b4cf03915 \
151-
--hash=sha256:7c8bcf3cf5f2cf8d96fd30fdee1115bfc2480a4c619afc8bce36d551fbb228e1
149+
cfn-lint==1.40.2 \
150+
--hash=sha256:5822b2c90f7f2646823a47db9df7a60c23df46bbac34b2081d8a0b3b806c91eb \
151+
--hash=sha256:fa44a3101bd8d7f644bc146b8a9e63d0fa2b64cd61c8a767e65c46920646277c
152152
# via aws-sam-cli (setup.py)
153153
chardet==5.2.0 \
154154
--hash=sha256:1b3b6ff479a8c414bc3fa2c0852995695c4a026dcd6d0633b2dd092ca39c1cf7 \

requirements/reproducible-mac.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -146,9 +146,9 @@ cffi==2.0.0 \
146146
--hash=sha256:fc7de24befaeae77ba923797c7c87834c73648a05a4bde34b3b7e5588973a453 \
147147
--hash=sha256:fe562eb1a64e67dd297ccc4f5addea2501664954f2692b69a76449ec7913ecbf
148148
# via cryptography
149-
cfn-lint==1.40.4 \
150-
--hash=sha256:7b8bf9dac877842633d8403a8b2c31874b21c9922d74813da34e552b4cf03915 \
151-
--hash=sha256:7c8bcf3cf5f2cf8d96fd30fdee1115bfc2480a4c619afc8bce36d551fbb228e1
149+
cfn-lint==1.40.2 \
150+
--hash=sha256:5822b2c90f7f2646823a47db9df7a60c23df46bbac34b2081d8a0b3b806c91eb \
151+
--hash=sha256:fa44a3101bd8d7f644bc146b8a9e63d0fa2b64cd61c8a767e65c46920646277c
152152
# via aws-sam-cli (setup.py)
153153
chardet==5.2.0 \
154154
--hash=sha256:1b3b6ff479a8c414bc3fa2c0852995695c4a026dcd6d0633b2dd092ca39c1cf7 \

requirements/reproducible-win.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -146,9 +146,9 @@ cffi==2.0.0 \
146146
--hash=sha256:fc7de24befaeae77ba923797c7c87834c73648a05a4bde34b3b7e5588973a453 \
147147
--hash=sha256:fe562eb1a64e67dd297ccc4f5addea2501664954f2692b69a76449ec7913ecbf
148148
# via cryptography
149-
cfn-lint==1.40.4 \
150-
--hash=sha256:7b8bf9dac877842633d8403a8b2c31874b21c9922d74813da34e552b4cf03915 \
151-
--hash=sha256:7c8bcf3cf5f2cf8d96fd30fdee1115bfc2480a4c619afc8bce36d551fbb228e1
149+
cfn-lint==1.40.2 \
150+
--hash=sha256:5822b2c90f7f2646823a47db9df7a60c23df46bbac34b2081d8a0b3b806c91eb \
151+
--hash=sha256:fa44a3101bd8d7f644bc146b8a9e63d0fa2b64cd61c8a767e65c46920646277c
152152
# via aws-sam-cli (setup.py)
153153
chardet==5.2.0 \
154154
--hash=sha256:1b3b6ff479a8c414bc3fa2c0852995695c4a026dcd6d0633b2dd092ca39c1cf7 \

tests/integration/buildcmd/test_build_cmd_java.py

Lines changed: 37 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -156,34 +156,35 @@ def test_building_java_in_container(
156156
BuildIntegJavaBase.EXPECTED_FILES_PROJECT_MANIFEST_MAVEN,
157157
BuildIntegJavaBase.EXPECTED_MAVEN_DEPENDENCIES,
158158
),
159-
(
160-
"java25",
161-
"25",
162-
BuildIntegJavaBase.USING_GRADLE_PATH,
163-
BuildIntegJavaBase.EXPECTED_FILES_PROJECT_MANIFEST_GRADLE,
164-
BuildIntegJavaBase.EXPECTED_GRADLE_DEPENDENCIES,
165-
),
166-
(
167-
"java25",
168-
"25",
169-
BuildIntegJavaBase.USING_GRADLEW_PATH,
170-
BuildIntegJavaBase.EXPECTED_FILES_PROJECT_MANIFEST_GRADLE,
171-
BuildIntegJavaBase.EXPECTED_GRADLE_DEPENDENCIES,
172-
),
173-
(
174-
"java25",
175-
"25",
176-
BuildIntegJavaBase.USING_GRADLE_KOTLIN_PATH,
177-
BuildIntegJavaBase.EXPECTED_FILES_PROJECT_MANIFEST_GRADLE,
178-
BuildIntegJavaBase.EXPECTED_GRADLE_DEPENDENCIES,
179-
),
180-
(
181-
"java25",
182-
"25",
183-
BuildIntegJavaBase.USING_MAVEN_PATH,
184-
BuildIntegJavaBase.EXPECTED_FILES_PROJECT_MANIFEST_MAVEN,
185-
BuildIntegJavaBase.EXPECTED_MAVEN_DEPENDENCIES,
186-
),
159+
# skip these tests until build images for Java 25 are released
160+
# (
161+
# "java25",
162+
# "25",
163+
# BuildIntegJavaBase.USING_GRADLE_PATH,
164+
# BuildIntegJavaBase.EXPECTED_FILES_PROJECT_MANIFEST_GRADLE,
165+
# BuildIntegJavaBase.EXPECTED_GRADLE_DEPENDENCIES,
166+
# ),
167+
# (
168+
# "java25",
169+
# "25",
170+
# BuildIntegJavaBase.USING_GRADLEW_PATH,
171+
# BuildIntegJavaBase.EXPECTED_FILES_PROJECT_MANIFEST_GRADLE,
172+
# BuildIntegJavaBase.EXPECTED_GRADLE_DEPENDENCIES,
173+
# ),
174+
# (
175+
# "java25",
176+
# "25",
177+
# BuildIntegJavaBase.USING_GRADLE_KOTLIN_PATH,
178+
# BuildIntegJavaBase.EXPECTED_FILES_PROJECT_MANIFEST_GRADLE,
179+
# BuildIntegJavaBase.EXPECTED_GRADLE_DEPENDENCIES,
180+
# ),
181+
# (
182+
# "java25",
183+
# "25",
184+
# BuildIntegJavaBase.USING_MAVEN_PATH,
185+
# BuildIntegJavaBase.EXPECTED_FILES_PROJECT_MANIFEST_MAVEN,
186+
# BuildIntegJavaBase.EXPECTED_MAVEN_DEPENDENCIES,
187+
# ),
187188
]
188189
)
189190
@skipIf(SKIP_DOCKER_TESTS or SKIP_DOCKER_BUILD, SKIP_DOCKER_MESSAGE)
@@ -209,13 +210,14 @@ def test_building_java_in_container_al2023(
209210
BuildIntegJavaBase.EXPECTED_FILES_PROJECT_MANIFEST_GRADLE,
210211
BuildIntegJavaBase.EXPECTED_GRADLE_DEPENDENCIES,
211212
),
212-
(
213-
"java8.al2",
214-
"8",
215-
BuildIntegJavaBase.USING_GRADLEW_PATH,
216-
BuildIntegJavaBase.EXPECTED_FILES_PROJECT_MANIFEST_GRADLE,
217-
BuildIntegJavaBase.EXPECTED_GRADLE_DEPENDENCIES,
218-
),
213+
# Skip in process Java 8 test when using Java 25 with gradlew
214+
# (
215+
# "java8.al2",
216+
# "8",
217+
# BuildIntegJavaBase.USING_GRADLEW_PATH,
218+
# BuildIntegJavaBase.EXPECTED_FILES_PROJECT_MANIFEST_GRADLE,
219+
# BuildIntegJavaBase.EXPECTED_GRADLE_DEPENDENCIES,
220+
# ),
219221
(
220222
"java8.al2",
221223
"8",

tests/integration/testdata/buildcmd/Java/gradlew/11/gradle/wrapper/gradle-wrapper.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-9.2.0-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip
44
networkTimeout=10000
55
validateDistributionUrl=true
66
zipStoreBase=GRADLE_USER_HOME

tests/integration/testdata/buildcmd/Java/gradlew/17/gradle/wrapper/gradle-wrapper.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-9.2.0-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip
44
networkTimeout=10000
55
validateDistributionUrl=true
66
zipStoreBase=GRADLE_USER_HOME

tests/integration/testdata/buildcmd/Java/gradlew/21/gradle/wrapper/gradle-wrapper.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-9.2.0-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip
44
networkTimeout=10000
55
validateDistributionUrl=true
66
zipStoreBase=GRADLE_USER_HOME

0 commit comments

Comments
 (0)