mirror of
https://github.com/seaweedfs/seaweedfs.git
synced 2026-10-26 06:50:45 +01:00
GitHub is retiring ubuntu-22.04; move all 94 runs-on pins across 40 workflows to ubuntu-24.04. rust_binaries_release: the arm64 cross step was jammy-era — noble keeps apt sources in deb822 ubuntu.sources (the sources.list edit was a silent no-op that left amd64 repos open to arm64 and 404'd) and ports suites must say noble. Pin deb822 stanzas to amd64 and add noble ports entries.
143 lines
3.9 KiB
YAML
143 lines
3.9 KiB
YAML
name: "KMS Tests"
|
|
|
|
on:
|
|
pull_request:
|
|
paths:
|
|
- 'weed/kms/**'
|
|
- 'weed/s3api/s3_sse_*.go'
|
|
- 'weed/s3api/s3api_object_handlers.go'
|
|
- 'weed/s3api/s3api_object_handlers_put.go'
|
|
- 'test/kms/**'
|
|
- '.github/workflows/kms-tests.yml'
|
|
push:
|
|
branches: [ master, main ]
|
|
paths:
|
|
- 'weed/kms/**'
|
|
- 'weed/s3api/s3_sse_*.go'
|
|
- 'weed/s3api/s3api_object_handlers.go'
|
|
- 'weed/s3api/s3api_object_handlers_put.go'
|
|
- 'test/kms/**'
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.event.pull_request.number || (github.event_name == 'push' && github.ref) || github.run_id }}
|
|
cancel-in-progress: ${{ github.event_name == 'pull_request' || (github.event_name == 'push' && !startsWith(github.ref, 'refs/tags/')) }}
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
defaults:
|
|
run:
|
|
working-directory: weed
|
|
|
|
jobs:
|
|
kms-provider-tests:
|
|
name: KMS Provider Integration Tests
|
|
runs-on: ubuntu-24.04
|
|
timeout-minutes: 20
|
|
|
|
steps:
|
|
- name: Check out code
|
|
uses: actions/checkout@v7
|
|
|
|
- name: Set up Go
|
|
uses: actions/setup-go@v7
|
|
with:
|
|
go-version-file: 'go.mod'
|
|
cache: ${{ runner.environment == 'github-hosted' }}
|
|
id: go
|
|
|
|
- name: Install SeaweedFS
|
|
run: |
|
|
go install -buildvcs=false
|
|
|
|
- name: Run KMS provider integration tests
|
|
timeout-minutes: 15
|
|
working-directory: test/kms
|
|
run: |
|
|
set -x
|
|
echo "=== System Information ==="
|
|
uname -a
|
|
free -h
|
|
docker --version
|
|
|
|
make test-provider-ci
|
|
|
|
- name: Show OpenBao logs on failure
|
|
if: failure()
|
|
run: |
|
|
echo "=== OpenBao Container Logs ==="
|
|
docker logs openbao-ci 2>&1 | tail -50 || echo "No OpenBao container found"
|
|
echo "=== Setup Logs ==="
|
|
cat /tmp/openbao-ci-setup.log 2>/dev/null || echo "No setup log found"
|
|
|
|
- name: Cleanup
|
|
if: always()
|
|
working-directory: test/kms
|
|
run: |
|
|
make stop-openbao-ci || true
|
|
|
|
s3-kms-e2e-tests:
|
|
name: S3 KMS End-to-End Tests
|
|
runs-on: ubuntu-24.04
|
|
timeout-minutes: 25
|
|
|
|
steps:
|
|
- name: Check out code
|
|
uses: actions/checkout@v7
|
|
|
|
- name: Set up Go
|
|
uses: actions/setup-go@v7
|
|
with:
|
|
go-version-file: 'go.mod'
|
|
cache: ${{ runner.environment == 'github-hosted' }}
|
|
id: go
|
|
|
|
- name: Install SeaweedFS
|
|
run: |
|
|
go install -buildvcs=false
|
|
|
|
- name: Run S3 KMS end-to-end tests
|
|
timeout-minutes: 20
|
|
working-directory: test/kms
|
|
run: |
|
|
set -x
|
|
echo "=== System Information ==="
|
|
uname -a
|
|
free -h
|
|
docker --version
|
|
aws --version
|
|
|
|
make test-s3-kms-ci
|
|
|
|
- name: Show logs on failure
|
|
if: failure()
|
|
working-directory: test/kms
|
|
run: |
|
|
echo "=== OpenBao Container Logs ==="
|
|
cat /tmp/openbao-ci-container.log 2>/dev/null || docker logs openbao-ci 2>&1 | tail -50 || echo "No OpenBao logs found"
|
|
echo "=== SeaweedFS Server Logs ==="
|
|
tail -100 /tmp/seaweedfs-kms-mini.log 2>/dev/null || echo "No server log found"
|
|
echo "=== Setup Logs ==="
|
|
cat /tmp/weed-kms-ci-setup.log 2>/dev/null || echo "No weed setup log"
|
|
echo "=== Process Information ==="
|
|
ps aux | grep -E "(weed|test)" || true
|
|
|
|
- name: Upload test logs on failure
|
|
if: failure()
|
|
uses: actions/upload-artifact@v7
|
|
with:
|
|
name: s3-kms-e2e-logs
|
|
path: |
|
|
/tmp/seaweedfs-kms-mini.log
|
|
/tmp/openbao-ci-container.log
|
|
/tmp/weed-kms-ci-setup.log
|
|
retention-days: 3
|
|
|
|
- name: Cleanup
|
|
if: always()
|
|
working-directory: test/kms
|
|
run: |
|
|
make stop-seaweedfs-ci || true
|
|
make stop-openbao-ci || true
|
|
make clean-ci || true
|