-
Notifications
You must be signed in to change notification settings - Fork 73
Client compatibility repo updates #763
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
Changes from all commits
fb23175
fbbc276
411b232
8f51c11
9aae709
ac83ba2
673de5b
35fee81
159f256
0f5e8cb
eeb6700
3adc96d
e488e17
1fc0e3f
d8fa9eb
1acfed6
63621bb
6f8c4ef
79b9f29
8a77f6c
455b1c2
2f1a6c6
3654ac1
2bfa325
469f9d7
e9744f3
a5e4801
b9eda99
98db1b5
c5f9efe
22809fc
685c522
cc3b93b
698dea5
2bd083d
e0e8a80
6c59fd6
e100e3d
e2a91f7
aabbab1
3111e1b
7b35bbb
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -44,6 +44,7 @@ jobs: | |
| - ${{ needs.python-versions.outputs.earliest-python-version }} | ||
| - ${{ needs.python-versions.outputs.latest-python-version }} | ||
| os: [ ubuntu-latest, windows-latest ] | ||
| hz_version: [ "5.6.0" ] | ||
| fail-fast: false | ||
|
|
||
| steps: | ||
|
|
@@ -74,10 +75,6 @@ jobs: | |
| with: | ||
| ref: refs/pull/${{ github.event.inputs.pr_number }}/merge | ||
|
|
||
| - name: Install dependencies | ||
| run: | | ||
| pip install -r requirements-test.txt | ||
|
|
||
| - name: Configure AWS Credentials | ||
| uses: aws-actions/configure-aws-credentials@v4 | ||
| with: | ||
|
|
@@ -90,13 +87,74 @@ jobs: | |
| with: | ||
| secret-ids: | | ||
| HAZELCAST_ENTERPRISE_KEY,CN/HZ_LICENSE_KEY | ||
|
|
||
| - name: Checkout to certificates | ||
| uses: actions/checkout@v3 | ||
| with: | ||
| repository: hazelcast/private-test-artifacts | ||
| path: certs | ||
| ref: data | ||
| token: ${{ secrets.GH_TOKEN }} | ||
|
|
||
| - name: Create the test jar with certificates (Linux) | ||
| if: matrix.os == 'ubuntu-latest' | ||
| working-directory: certs | ||
| run: | | ||
| zip -r -j certs.jar $GITHUB_WORKSPACE/tests/integration/backward_compatible/ssl_tests/hostname_verification/*.p12 | ||
| cp certs.jar ../hazelcast-enterprise-${{ matrix.hz_version }}-tests.jar | ||
|
|
||
| - name: Run tests | ||
| - name: Create the test jar with certificates (Windows) | ||
| if: matrix.os == 'windows-latest' | ||
| working-directory: certs | ||
| run: | | ||
| $compress = @{ | ||
| Path = "../tests/integration/backward_compatible/ssl_tests/hostname_verification/*.p12" | ||
| CompressionLevel = "Fastest" | ||
| DestinationPath = "certs.jar" | ||
| } | ||
| Compress-Archive -Update @compress | ||
| cp certs.jar ../hazelcast-enterprise-${{ matrix.hz_version }}-tests.jar | ||
|
|
||
| - name: Download RCD (Linux) | ||
| if: matrix.os == 'ubuntu-latest' | ||
| shell: bash | ||
| run: | | ||
| wget -q https://client-rcd-download.s3.us-east-2.amazonaws.com/rcd-ubuntu-latest | ||
|
|
||
| - name: Download RCD (Windows) | ||
| if: matrix.os == 'windows-latest' | ||
| run: | | ||
| $ProgressPreference = 'SilentlyContinue' | ||
| Invoke-WebRequest https://client-rcd-download.s3.us-east-2.amazonaws.com/rcd-windows-latest.exe -OutFile rcd-windows-latest.exe | ||
|
|
||
| - name: Install dependencies | ||
| run: | | ||
| pip install -r requirements-test.txt | ||
|
|
||
| - name: Run tests (Linux) | ||
| if: matrix.os == 'ubuntu-latest' | ||
| env: | ||
| HZ_SNAPSHOT_INTERNAL_USERNAME: ${{ secrets.HZ_SNAPSHOT_INTERNAL_USERNAME }} | ||
| HZ_SNAPSHOT_INTERNAL_PASSWORD: ${{ secrets.HZ_SNAPSHOT_INTERNAL_PASSWORD }} | ||
| run: python run_tests.py | ||
|
|
||
| HZ_VERSION: ${{ matrix.hz_version }} | ||
| run: | | ||
| chmod +x rcd-ubuntu-latest | ||
| ./rcd-ubuntu-latest -version $HZ_VERSION & | ||
| # wait for a bit for RCD to download artifacts | ||
| sleep 10 | ||
| pytest --verbose --cov=hazelcast --cov-report=xml | ||
|
|
||
| - name: Run tests (Windows) | ||
| if: matrix.os == 'windows-latest' | ||
| env: | ||
| HZ_VERSION: ${{ matrix.hz_version }} | ||
| run: | | ||
| Start-Process -FilePath .\rcd-windows-latest -ArgumentList '-version', $Env:HZ_VERSION -RedirectStandardOutput rcd-stdout.log -RedirectStandardError rcd-stderr.log | ||
| # wait for a bit for RCD to download artifacts | ||
| sleep 10 | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Nit - comment explaining why
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Added comments at: 3111e1b
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Ok - not ideal to sleep rather than polling for something expected. Could we query the hz healthcheck or something to check when it's up?
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We could check for the port to be OK to read, but sleeping is simple and worked so far. |
||
| echo "RCD Log:" | ||
| cat rcd-stdout.log | ||
| cat rcd-stderr.log | ||
| pytest --verbose --cov=hazelcast --cov-report=xml | ||
|
|
||
| - name: Publish results to Codecov for PR coming from hazelcast organization | ||
| if: ${{ matrix.python-version == needs.python-versions.outputs.latest-python-version && matrix.os == 'ubuntu-latest' && github.event_name == 'pull_request_target' }} | ||
| uses: codecov/codecov-action@v5 | ||
|
|
@@ -105,15 +163,15 @@ jobs: | |
| files: ./coverage.xml | ||
| override_pr: ${{ github.event.pull_request.number }} | ||
| fail_ci_if_error: true | ||
|
|
||
| - name: Publish results to Codecov for Push | ||
| if: ${{ matrix.python-version == needs.python-versions.outputs.latest-python-version && matrix.os == 'ubuntu-latest' && github.event_name == 'push' }} | ||
| uses: codecov/codecov-action@v5 | ||
| with: | ||
| token: ${{ secrets.CODECOV_TOKEN }} | ||
| files: ./coverage.xml | ||
| fail_ci_if_error: true | ||
|
|
||
| - name: Publish result to Codecov for PR coming from community | ||
| if: ${{ matrix.python-version == needs.python-versions.outputs.latest-python-version && matrix.os == 'ubuntu-latest' && github.event_name == 'workflow_dispatch' }} | ||
| uses: codecov/codecov-action@v5 | ||
|
|
@@ -122,13 +180,3 @@ jobs: | |
| files: ./coverage.xml | ||
| override_pr: ${{ github.event.inputs.pr_number }} | ||
| fail_ci_if_error: true | ||
|
|
||
| - name: Upload remote controller logs if test run fails | ||
| uses: actions/upload-artifact@v4 | ||
| if: failure() | ||
| with: | ||
| name: rc-logs-${{ matrix.python-version }}-${{ matrix.os }} | ||
| path: | | ||
| rc_stderr.log | ||
| rc_stdout.log | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit - can we omit and use implicit defaults?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The default is different, but I guess
Fastestdoesn't hurt.