-
Notifications
You must be signed in to change notification settings - Fork 0
chore: add all other languages, latest major versions, many more tests to test-server #134
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
224 commits
Select commit
Hold shift + click to select a range
0d652b9
docs
rishav-karanjit fe1e1ff
init server
rishav-karanjit 8522b26
m
833e20a
auto commit
rishav-karanjit 4d44e4f
m
139b88a
Add context for q
rishav-karanjit 6622859
m
bcae379
Update test-server/java-tests/src/it/java/software/amazon/encryption/…
lucasmcdonald3 bf0683c
Update test-server/java-tests/src/it/java/software/amazon/encryption/…
lucasmcdonald3 afecd75
m
d122c1c
Merge branch 'go-test-server' of github.com:aws/amazon-s3-encryption-…
7ed605b
auto commit
rishav-karanjit c2826e0
auto commit
rishav-karanjit 2e594b6
m
2316fa4
feat: Go V3 test server; rename Java and Python as "V3" implementations
lucasmcdonald3 cecf9aa
auto commit
rishav-karanjit 2263f16
auto commit
rishav-karanjit e7806a4
clean up
rishav-karanjit 4e39960
:rename
rishav-karanjit b106aba
readme
rishav-karanjit bf1d6fd
auto commit
rishav-karanjit 62e9383
remove temp
rishav-karanjit e883161
always run the tests
seebees d9924f0
logs
rishav-karanjit 2312865
auto commit
rishav-karanjit a039186
Merge branch 'fireegg-test-servers' of https://github.com/aws/amazon-…
rishav-karanjit 167cdb7
implement test server for c++ V2
ajewellamz 3000858
m
ajewellamz 9ad923c
m
ajewellamz a142eab
logs
rishav-karanjit f82b4ab
legacy
rishav-karanjit 04bc3c7
Break up the makefiles (#9)
seebees d01506e
makefile
rishav-karanjit 8b19cdf
auto commit
rishav-karanjit 1e69cb0
chore: always run the tests
kessplas 43514e0
auto commit
rishav-karanjit 24637c5
Merge remote-tracking branch 'origin/fireegg-test-servers' into risha…
rishav-karanjit 86146f5
auto commit
rishav-karanjit b9acf93
auto commit
rishav-karanjit 6255978
Error model
rishav-karanjit 69fdd20
auto commit
rishav-karanjit 4738803
auto commit
rishav-karanjit a3baf9d
auto commit
rishav-karanjit a37a232
remove redundant import
rishav-karanjit 8d07ee4
auto commit
rishav-karanjit a89ce29
validation
rishav-karanjit 35cc7e2
m
ajewellamz c8cdae4
m
ajewellamz c9224b5
m
ajewellamz db69245
Merge branch 'fireegg-test-servers' into ajewell/cpp-test-server
ajewellamz 7cdf7e6
m
ajewellamz 6b6bcd7
m
ajewellamz f133f01
m
ajewellamz a2ed825
m
ajewellamz 7157850
m
ajewellamz a21bc8e
m
ajewellamz f9ade30
Update test-server/net-v2-v3-server/Controllers/ObjectController.cs
rishav-karanjit 1276c33
chore: add php servers
josecorella ac556cb
Add not implemented feature
rishav-karanjit 8c95c21
Merge branch 'rishav/dotnet/testserver' of https://github.com/aws/ama…
rishav-karanjit 8ed7ee4
Merge branch 'fireegg-test-servers' into rishav/dotnet/testserver
rishav-karanjit 46ae023
Update test-server/java-tests/src/it/java/software/amazon/encryption/…
rishav-karanjit 0b18711
Update test-server/net-v2-v3-server/Controllers/ClientController.cs
rishav-karanjit 93bd763
chore: add S3EC .NET v2 and v3 test server
rishav-karanjit b047b11
Initial commit of Ruby V2 and V3 test server (#5)
seebees dc3b274
Merge branch 'fireegg-test-servers' into ajewell/cpp-test-server
ajewellamz e2bab00
m
ajewellamz bffb078
chore: add cpp test server v2
ajewellamz 38404fe
auto commit
rishav-karanjit 143721c
auto commit
rishav-karanjit d7de6f1
auto commit
rishav-karanjit 0346f16
auto commit
rishav-karanjit c385594
auto commit
rishav-karanjit 1c365c9
auto commit
rishav-karanjit 0e6cb7c
auto commit
rishav-karanjit a693390
chore: update CDK for S3EC-net
rishav-karanjit b8413d6
refactor
6754f8c
m
6c84ef3
chore: have php link to the local private submodule (#16)
josecorella 6e4b847
m
8c2a2a0
chore(cdk): allow ToolsDevelopment role assume S3ECGithubTestRole (#18)
imabhichow 4f3d299
m
ebb03b1
chore(cpp): add v3 server
ajewellamz 2fa579b
chore: Refactor test setup utils
lucasmcdonald3 a49f9da
m
ajewellamz f4bb4b7
m
ajewellamz b20947c
m
d4fe693
m
9c22750
m
ajewellamz f52c5ec
m
ajewellamz 57fcd30
chore: update php installation in ci (#22)
josecorella 2c23d4d
m
43dbcd8
m
90f663c
Merge branch 'fireegg-test-servers' into transition-renames
lucasmcdonald3 ca5e6f4
Merge branch 'fireegg-test-servers' into ajewell/cpp-v3
ajewellamz 04a960a
m
ajewellamz c6fcd15
Merge branch 'ajewell/cpp-v3' of github.com:aws/amazon-s3-encryption-…
ajewellamz 7c67bae
m
ajewellamz 5879cb8
m
ajewellamz 5c76017
m
ajewellamz f541357
m
ajewellamz 0f19378
m
ajewellamz a306717
m
ajewellamz dab4eea
m
ajewellamz 35ea9bf
m
ajewellamz 2661f22
m
edf66fb
Merge branch 'transition-renames' of github.com:aws/amazon-s3-encrypt…
af89d0f
chore: Rename some servers to `current`, add `transition` server defi…
lucasmcdonald3 acde3c5
m
ajewellamz b26edd5
Merge branch 'fireegg-test-servers' into ajewell/cpp-v3
ajewellamz b3e1979
m
ajewellamz 2e6c0f2
m
ajewellamz 31f1cbd
m
ajewellamz eb58046
Adding duvet for a specific Ruby test server (#26)
seebees d3d1e52
m
ajewellamz f4950a3
m
ajewellamz bbeb250
Merge branch 'fireegg-test-servers' into ajewell/cpp-v3
ajewellamz 4f0fdaa
m
ajewellamz 631937b
m
ajewellamz 40fcdd5
m
ajewellamz 1baacca
m
ajewellamz b0c87dc
m
ajewellamz 770fb9e
m
ajewellamz 7d9308e
m
ajewellamz cc83885
m
ajewellamz ef25eca
Merge pull request #21 from aws/ajewell/cpp-v3
ajewellamz b13fd0b
chore: add s3ec-java (transition & improved) test server (#25)
imabhichow 458bf9f
add duvet everywhere (#28)
seebees 68e5853
chore: add suffix to test-objects to avoid accidental collisions (#32)
josecorella b1b7f81
Add a filter to _everything_ (#30)
seebees c41a87b
chore: add php v2 transition server (#33)
josecorella cb01d31
feat(test-server): Add Go V4 test server (#12)
lucasmcdonald3 27459f3
KC and current tests working for Improved Ruby (#34)
seebees 4b71aa2
chore: add .net submodule and run test against it (#13)
rishav-karanjit 9112ec5
let v2 transition read v3 format (#40)
ajewellamz 4ad0e87
Seebees/more complete tests (#36)
seebees 2ab3b81
chore: Dashboard for spec compliance in each language (#38)
lucasmcdonald3 f961822
chore: run CI on pushes to fireegg-test-servers
lucasmcdonald3 ce432a7
chore: Bump Go V4 server to spec-complete commit (#43)
lucasmcdonald3 cda651f
updates to spec and tests (#49)
seebees db23adf
fix: update spec compliance GH page on push even when `make duvet` fa…
lucasmcdonald3 8c6db9e
chore: reenable c++ (#52)
ajewellamz b131869
cpp-v3 test server (#55)
ajewellamz 4849825
Update to latest Ruby unit tests (#53)
seebees 9afa66e
cpp duvet coverage (#58)
ajewellamz 9cc58e5
duvet (#59)
ajewellamz 56c4107
duvet (#61)
ajewellamz 176e745
chore: Kill Ruby (#62)
lucasmcdonald3 be6dd9a
chore: add instruction file support to TestServer (#56)
kessplas b3e8f93
chore: add .net transition servers (#48)
rishav-karanjit c402647
duvet (#67)
ajewellamz 570af0f
Ruby with all annotations (#57)
seebees 47179c5
chore: s3ec-java v4 improved tests server (#42)
imabhichow 3c40ebb
chore: fix instruction file tests for php (#66)
josecorella 7468927
Update ruby to do better auth tag magic (#71)
seebees fec0319
add all-examples directory, Ruby V2/V3 example (#64)
kessplas 3bc32ed
chore: Add 's3:HeadObject' action to S3 bucket policy (#72)
imabhichow 3e29c21
Go V3 transition server, duvet'ed (#60)
lucasmcdonald3 9dd9344
chore: Go v4 example, run examples in CI (#65)
lucasmcdonald3 64db72a
chore: add RSA support to Java and Dotnet test servers and a simple R…
kessplas 34cbbcf
c++ example (#79)
ajewellamz ae51a01
chore: add php v3 s3ec and php v2 transitional (#45)
josecorella 79a6d46
chore: Run raw keyring test for transitional version (#80)
rishav-karanjit 99cafcf
chore: add .NET improved server (#54)
rishav-karanjit a287488
chore: turn on raw aes for improved NET (#83)
rishav-karanjit 3fdf5e5
chore: Add Go V3 example (#77)
lucasmcdonald3 e5a50e5
chore: add net examples (#81)
rishav-karanjit e52714b
chore: add php examples (#73)
josecorella 174a70f
all one iv (#74)
seebees b785c9f
chore: update php to use iv of 1s (#89)
josecorella d948160
bump aws-sdk version (#90)
ajewellamz a4dc46f
chore: enable java-v3-transition test server (#70)
imabhichow af3811e
chore: enable php instruction file tests (#87)
josecorella ba8ce27
chore: turn on .NET after IV update (#94)
rishav-karanjit d758421
bump sdk for duvet (#97)
ajewellamz a781248
chore: java examples (#88)
imabhichow e5facbd
chore: Bump Go to head of main for updated Duvet (#93)
lucasmcdonald3 1d25946
chore: Use symbolic link in examples (#91)
rishav-karanjit c9c47b8
chore: add instruction file tests for raw RSA (#95)
rishav-karanjit acac674
chore: java fix - duvet (#96)
imabhichow 8da4431
ruby spec updates (#101)
seebees 0a71f3e
chore: run php ruby decrypt for ins file (#98)
rishav-karanjit 73081bf
bump cpp sdk version (#100)
ajewellamz bcc274d
Add migration example (#111)
ajewellamz fe13052
Adding tests (#103)
seebees 41f0a00
chore(PHP): run migration examples in ci (#114)
josecorella c679498
Tests and fix for Ruby pen-test finding (#116)
seebees 5461ae3
chore: add instruction file manipulation test (#119)
josecorella e2fe1ae
update .NET submodules
kessplas 9ad08cd
fix lint
kessplas efbb48b
update NET submodule commits
kessplas 865e31c
move Ruby to public repos
kessplas d1a707c
specify bundler version to match lockfile
kessplas 63c5af1
install xcode tools
kessplas 14e3fb1
try ruby 3.4.7
kessplas cc4d1cf
supress CVE
kessplas 9b9f4c5
try again to disable nuget audit errors
kessplas 88e8320
fixup NET
kessplas b9b2470
NET again
kessplas d396df7
move PHP, CPP over to public repos
kessplas 3c5b79d
make C++ examples use public repo
kessplas 5c5767a
no token for C++
kessplas d5a4233
fix Duvet
kessplas 7bcf5eb
disable CURRENT tests
kessplas a11430c
fix compile
kessplas 9626325
delete cpp-v2-server
kessplas 51e7071
delete Java, Go, PHP current servers
kessplas bc44611
remove NET V2
kessplas 56cba03
delete examples
kessplas a277b60
fix CI
kessplas 1d9fac0
remove commented out code from java-tests
kessplas 7e5547d
tweak cpp client to maybe have fewer timeouts
kessplas 8ddb8f4
point to public Java, Go repos
kessplas 45c5de0
fix ci branch name
kessplas 63e457f
Merge branch 'staging' into kess/fix-ci
kessplas fef65e4
fix merge error
kessplas da904a5
remove PAT
kessplas 76d559f
dynamically load version from submodule pom
kessplas d8a2e21
use HTTPS
kessplas 06b3a75
restore PAT
kessplas 6cfa131
restore Python integ tests
kessplas 727f05d
rename tests to testserver tests
kessplas d9e7a35
apply PR feedback
kessplas 9f65202
new PAT
kessplas File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,47 @@ | ||
| name: All CI | ||
|
|
||
| on: | ||
| push: | ||
| branches: [ main, staging ] | ||
| pull_request: | ||
| workflow_dispatch: | ||
| inputs: | ||
| python-version: | ||
| description: 'Python version to use' | ||
| default: '3.11' | ||
| required: false | ||
| type: string | ||
|
|
||
| jobs: | ||
| python-lint: | ||
| name: Lint | ||
| uses: ./.github/workflows/lint.yml | ||
|
|
||
| run-test-server: | ||
| permissions: | ||
| id-token: write | ||
| contents: read | ||
| name: Run TestServer Tests | ||
| uses: ./.github/workflows/test-server.yml | ||
| with: | ||
| python-version: ${{ inputs.python-version || '3.11' }} | ||
| secrets: inherit | ||
|
|
||
| python-integ: | ||
| permissions: | ||
| id-token: write | ||
| contents: read | ||
| name: Python Integration Tests | ||
| uses: ./.github/workflows/python-integ.yml | ||
| with: | ||
| python-version: ${{ inputs.python-version || '3.11' }} | ||
| secrets: inherit | ||
|
|
||
| run-duvet-test-server: | ||
| permissions: | ||
| id-token: write | ||
| contents: read | ||
| pages: write | ||
| name: Run Duvet | ||
| uses: ./.github/workflows/duvet-test-server.yml | ||
| secrets: inherit |
|
kessplas marked this conversation as resolved.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,104 @@ | ||
| name: Generate Duvet Report for TestServer | ||
|
|
||
| on: | ||
| workflow_call: | ||
| # Optional inputs that can be provided when calling this workflow | ||
|
|
||
| jobs: | ||
| duvet: | ||
| runs-on: macos-latest | ||
| permissions: | ||
| id-token: write | ||
| contents: read | ||
| pages: write | ||
|
|
||
| steps: | ||
| - name: Checkout code | ||
| uses: actions/checkout@v5 | ||
| with: | ||
| submodules: true | ||
| token: ${{ secrets.PAT_FOR_SPEC }} | ||
|
|
||
| - name: Checkout CPP code cpp-v3 | ||
| uses: actions/checkout@v5 | ||
| with: | ||
| submodules: recursive | ||
| repository: aws/aws-sdk-cpp | ||
| ref: main | ||
| path: test-server/cpp-v3-server/aws-sdk-cpp/ | ||
|
|
||
| - name: Setup Rust toolchain | ||
| uses: actions-rust-lang/setup-rust-toolchain@v1 | ||
| with: | ||
| toolchain: stable | ||
|
|
||
| - name: Clone duvet repository | ||
| run: git clone https://github.com/awslabs/duvet.git /tmp/duvet | ||
|
|
||
| - name: Build and install duvet | ||
| run: | | ||
| cd /tmp/duvet | ||
| cargo xtask build | ||
| cargo install --path ./duvet | ||
|
|
||
| - name: Run duvet | ||
| if: always() | ||
| run: cd test-server && make duvet | ||
|
|
||
| - name: Upload duvet reports | ||
| if: always() | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: reports | ||
| include-hidden-files: true | ||
| path: test-server/*-server/.duvet/reports/report.html | ||
|
|
||
| - name: Generate compliance dashboard | ||
| if: always() | ||
| run: | | ||
| cd test-server/spec-compliance-dashboard | ||
| python generate_compliance_dashboard.py | ||
|
|
||
| - name: Create dashboard redirect index.html | ||
| if: always() | ||
| run: | | ||
| cat > test-server/index.html << 'EOF' | ||
| <!DOCTYPE html> | ||
| <html lang="en"> | ||
| <head> | ||
| <meta charset="UTF-8"> | ||
| <meta http-equiv="refresh" content="0; url=spec-compliance-dashboard/compliance_homepage.html"> | ||
| <title>Redirecting to Compliance Dashboard...</title> | ||
| </head> | ||
| <body> | ||
| <p>Redirecting to <a href="spec-compliance-dashboard/compliance_homepage.html">Compliance Dashboard</a>...</p> | ||
| </body> | ||
| </html> | ||
| EOF | ||
|
|
||
| - name: Upload compliance dashboard | ||
| if: always() | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: compliance-dashboard | ||
| include-hidden-files: true | ||
| path: | | ||
| test-server/spec-compliance-dashboard/compliance_homepage.html | ||
| test-server/*/compliance_summary_report.html | ||
| test-server/*/.duvet/reports/report.html | ||
| test-server/spec-compliance-dashboard/templates/* | ||
| test-server/index.html | ||
|
|
||
| - name: Setup Pages | ||
| if: always() && (github.ref == 'refs/heads/staging' || github.ref == 'refs/heads/fireegg-test-servers') && github.event_name == 'push' | ||
| uses: actions/configure-pages@v5 | ||
|
|
||
| - name: Upload Pages artifact | ||
| if: always() && (github.ref == 'refs/heads/staging' || github.ref == 'refs/heads/fireegg-test-servers') && github.event_name == 'push' | ||
| uses: actions/upload-pages-artifact@v3 | ||
| with: | ||
| path: test-server/ | ||
|
|
||
| - name: Deploy to GitHub Pages | ||
| if: always() && (github.ref == 'refs/heads/staging' || github.ref == 'refs/heads/fireegg-test-servers') && github.event_name == 'push' | ||
| uses: actions/deploy-pages@v4 |
|
kessplas marked this conversation as resolved.
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -8,7 +8,7 @@ on: | |
|
|
||
| jobs: | ||
| lint: | ||
| runs-on: ubuntu-latest | ||
| runs-on: macos-15 | ||
|
|
||
| steps: | ||
| - name: Checkout code | ||
|
|
||
This file was deleted.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,57 @@ | ||
| name: Python Integration Tests | ||
|
|
||
| on: | ||
| workflow_call: | ||
| inputs: | ||
| python-version: | ||
| description: "Python version to use" | ||
| default: "3.11" | ||
| required: false | ||
| type: string | ||
|
|
||
| jobs: | ||
| python-integ: | ||
| runs-on: macos-14-large | ||
| permissions: | ||
| id-token: write | ||
| contents: read | ||
|
|
||
| steps: | ||
| - name: Checkout code | ||
| uses: actions/checkout@v5 | ||
| with: | ||
| submodules: false | ||
|
|
||
| - name: Set up Python | ||
| uses: actions/setup-python@v5 | ||
| with: | ||
| python-version: ${{ inputs.python-version || '3.11' }} | ||
|
|
||
| - name: Cache uv dependencies | ||
| uses: actions/cache@v4 | ||
| with: | ||
| path: ~/.cache/uv | ||
| key: ${{ runner.os }}-uv-${{ hashFiles('./test-server/python-v3-server/**/pyproject.toml') }} | ||
| restore-keys: | | ||
| ${{ runner.os }}-uv- | ||
|
|
||
| - name: Install Uv | ||
| run: pip install uv | ||
|
|
||
| - name: Install dependencies | ||
| run: make install | ||
|
|
||
| - name: Configure AWS credentials | ||
| uses: aws-actions/configure-aws-credentials@v4 | ||
| with: | ||
| role-to-assume: arn:aws:iam::370957321024:role/S3EC-Python-Github-test-role | ||
| aws-region: us-west-2 | ||
|
|
||
| - name: Run unit tests | ||
| run: make test-unit | ||
|
|
||
| - name: Run integration tests | ||
| run: make test-integration | ||
| env: | ||
| CI_S3_BUCKET: ${{ vars.CI_S3_BUCKET }} | ||
| CI_KMS_KEY_ALIAS: ${{ vars.CI_KMS_KEY_ALIAS }} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,150 @@ | ||
| name: Run TestServer Tests | ||
|
|
||
| on: | ||
| workflow_call: | ||
| # Optional inputs that can be provided when calling this workflow | ||
| inputs: | ||
| python-version: | ||
| description: "Python version to use" | ||
| default: "3.11" | ||
| required: false | ||
| type: string | ||
|
|
||
| jobs: | ||
| test-server: | ||
| runs-on: macos-14-large | ||
| permissions: | ||
| id-token: write | ||
| contents: read | ||
|
|
||
| steps: | ||
| - name: Checkout code | ||
| uses: actions/checkout@v5 | ||
| with: | ||
| submodules: false | ||
| token: ${{ secrets.PAT_FOR_SPEC }} | ||
|
|
||
| # There are a lot of submodules here | ||
| # This initializes the checkouts in parallel (--jobs) | ||
| # rather than in series the way actions/checkout@v5 does it. | ||
|
|
||
| - name: Get CPU count | ||
| id: cpu-count | ||
| run: echo "count=$(node -p 'require("os").cpus().length')" >> $GITHUB_OUTPUT | ||
|
|
||
| - name: Setup git submodules with PAT | ||
| run: | | ||
| git config --global url."https://github.com/".insteadOf "git@github.com:" | ||
| git config --global credential.helper store | ||
| echo "https://x-token-auth:${{ secrets.PAT_FOR_SPEC }}@github.com" > ~/.git-credentials | ||
|
|
||
| - name: Optimize git for performance | ||
| run: | | ||
| git config --global fetch.parallel ${{ steps.cpu-count.outputs.count }} | ||
| git config --global submodule.fetchJobs ${{ steps.cpu-count.outputs.count }} | ||
| git config --global remote.origin.tagOpt --no-tags | ||
|
|
||
| - name: Checkout submodules with --jobs | ||
| run: | | ||
| git submodule update --init --depth 1 --single-branch --jobs ${{ steps.cpu-count.outputs.count }} | ||
|
|
||
| - name: Update cpp submodules recursively with --jobs | ||
| run: | | ||
| git submodule update --init --recursive \ | ||
| --depth 1 --single-branch \ | ||
| --jobs ${{ steps.cpu-count.outputs.count }} \ | ||
| --force \ | ||
| test-server/cpp-v2-transition-server/aws-sdk-cpp \ | ||
| test-server/cpp-v3-server/aws-sdk-cpp | ||
|
|
||
| - name: Set up Ruby | ||
| uses: ruby/setup-ruby@v1 | ||
| with: | ||
| ruby-version: "3.4.7" | ||
| bundler-cache: true | ||
|
|
||
| - name: Set up PHP with Composer | ||
| uses: shivammathur/setup-php@verbose | ||
| with: | ||
| php-version: "8.1" | ||
|
|
||
| - name: Install PHP V2 Transition dependencies | ||
| working-directory: ./test-server/php-v2-transition-server | ||
| shell: bash | ||
| run: composer install | ||
|
|
||
| - name: Install PHP V3 dependencies | ||
| working-directory: ./test-server/php-v3-server | ||
| shell: bash | ||
| run: composer install | ||
|
|
||
| - name: Install Go | ||
| uses: actions/setup-go@v5 | ||
| with: | ||
| go-version: 1.25 | ||
|
|
||
| - name: Install C++ dependencies | ||
| run: | | ||
| brew install libmicrohttpd nlohmann-json ossp-uuid | ||
|
|
||
| # Cache Gradle dependencies and build outputs | ||
| - name: Cache Gradle packages | ||
| uses: actions/cache@v4 | ||
| with: | ||
| path: | | ||
| ~/.gradle/caches | ||
| ~/.gradle/wrapper | ||
| test-server/java-tests/.gradle | ||
| key: ${{ runner.os }}-gradle-${{ hashFiles('test-server/java-tests/**/gradle-wrapper.properties', 'test-server/java-tests/**/*.gradle*') }} | ||
| restore-keys: | | ||
| ${{ runner.os }}-gradle- | ||
|
|
||
| - name: Configure AWS credentials | ||
| uses: aws-actions/configure-aws-credentials@v4 | ||
| with: | ||
| role-to-assume: arn:aws:iam::370957321024:role/S3EC-Python-Github-test-role | ||
| aws-region: us-west-2 | ||
|
|
||
| - name: Build the servers | ||
| run: cd test-server && make build-all-servers | ||
| env: | ||
| MAKEFLAGS: -j${{ steps.cpu-count.outputs.count }} | ||
| AWS_REGION: us-west-2 | ||
|
|
||
| - name: Start the servers | ||
| run: cd test-server && make start-all-servers | ||
| env: | ||
| AWS_REGION: us-west-2 | ||
| TEST_SERVER_S3_BUCKET: ${{ vars.TEST_SERVER_S3_BUCKET }} | ||
| TEST_SERVER_KMS_KEY_ARN: ${{ vars.TEST_SERVER_KMS_KEY_ARN }} | ||
|
|
||
| - name: Wait for servers to start | ||
| run: cd test-server && make wait-all-servers | ||
| env: | ||
| MAKEFLAGS: -j${{ steps.cpu-count.outputs.count }} | ||
|
|
||
| - name: Run run-tests | ||
| run: cd test-server && make test-servers-run-tests | ||
| env: | ||
| AWS_REGION: us-west-2 | ||
| TEST_SERVER_S3_BUCKET: ${{ vars.TEST_SERVER_S3_BUCKET }} | ||
| TEST_SERVER_KMS_KEY_ARN: ${{ vars.TEST_SERVER_KMS_KEY_ARN }} | ||
| GRADLE_OPTS: "-Dorg.gradle.daemon=true -Dorg.gradle.parallel=true -Dorg.gradle.caching=true" | ||
|
|
||
| - name: Upload server logs | ||
| if: always() | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: server-logs | ||
| path: | | ||
| test-server/*/server.log | ||
|
|
||
| - name: Stop the servers | ||
| run: cd test-server && make test-servers-stop | ||
|
|
||
| - name: Upload results | ||
| if: always() | ||
| uses: actions/upload-artifact@v4 | ||
| with: | ||
| name: results | ||
| path: test-server/java-tests/build/reports/tests/integ |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.