[k6-test] ci: [OCISDEV-827] Add GitHub Actions workflow for k6 load tests#12265
[k6-test] ci: [OCISDEV-827] Add GitHub Actions workflow for k6 load tests#12265deyankiteworks wants to merge 7 commits intomasterfrom
Conversation
|
Thanks for opening this pull request! The maintainers of this repository would appreciate it if you would create a changelog item based on your changes. |
4df234f to
a497b5f
Compare
LukasHirt
left a comment
There was a problem hiding this comment.
I would suggest also adding concurrency to this. Since it's using ssh connections to real servers which are shared for all the runs, I would make sure that only one workflow is doing that at a time.
| types: [opened, synchronize, reopened, edited] | ||
| schedule: | ||
| - cron: '0 4 * * *' | ||
| workflow_dispatch: |
There was a problem hiding this comment.
Just an idea for future. We can collect some args using workflow_dispatch so we could collect a branch name and then we could trigger via GH UI the K6 tests on a latest commit in a specific branch.
There was a problem hiding this comment.
Good idea. I will add it in a separate JIRA taks to postpone it for the next sprint.
Summary
.github/workflows/k6-load-test.yml) that replicates the existing Drone CI k6 load test pipelinetests/config/drone/run_k6_tests.shscript with the same SSH-based remote execution modelDetails
Migrates the k6 load test pipeline from Drone (
.drone.stark6LoadTestsfunction) to GitHub Actions:owncloudci/alpine:latestcontainer (same image as Drone)SSH_OCIS_REMOTE,SSH_OCIS_USERNAME,SSH_OCIS_PASSWORD,TEST_SERVER_URL,SSH_K6_REMOTE,SSH_K6_USERNAME,SSH_K6_PASSWORD)DRONE_COMMITenv var withOCIS_COMMIT_SHAset fromgithub.event.pull_request.head.sha || github.shaif: always())/.well-known/openid-configurationvia SSH on the OCIS remote, up to 120s) before starting k6 testsServerAliveInterval=60,ServerAliveCountMax=10) to prevent broken pipe disconnects during long test runsTest plan
editedeventworkflow_dispatchfrom the Actions tab🤖 Generated with Claude Code