Skip to content

Commit

Permalink
switch performance testing flows onto yandex-cloud/yc-github-loadtest…
Browse files Browse the repository at this point in the history
…ing-ci

secrets/variables to be added: https://nda.ya.ru/t/UOxCe78T78HGit

---
Co-authored-by: vitaly4n <[email protected]>

Pull Request resolved: #199

Co-authored-by: vitaly4n <[email protected]>
commit_hash:67286228bb87294ae7a332d6a27fadaab1d6b9cb
  • Loading branch information
vitaly4n authored and robot-piglet committed Sep 18, 2024
1 parent 5fb667d commit f572e78
Show file tree
Hide file tree
Showing 28 changed files with 115 additions and 1,621 deletions.
25 changes: 0 additions & 25 deletions .github/actions/setup-yc/action.yml

This file was deleted.

102 changes: 102 additions & 0 deletions .github/workflows/perftest.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
name: Performance tests

on:
release:
types: [ created ]

env:
AWS_ENDPOINT_URL: https://storage.yandexcloud.net
AWS_REGION: ru-central1

jobs:
build-and-upload:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: 1.21.x
cache: true
- id: test-go-setup
run: go test -race -covermode atomic ./...
- id: build
run: |
export GOOS=linux
export CGO_ENABLED=0
go build -o pandora-perf
- id: upload-binary
uses: osiegmar/s3-publisher-action@v1
env:
AWS_ACCESS_KEY_ID: ${{ secrets.YC_S3_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.YC_S3_KEY_SECRET }}
with:
dir: .
includes: pandora-perf
bucket: ${{ vars.YC_LOADTESTING_DATA_BUCKET }}

test-pandora-perf:
needs: [ build-and-upload ]
runs-on: ubuntu-latest
concurrency: { group: loadtesting }
env:
PERFTESTS_ROOT: "./performance-test/test-config"
PERFTESTS_AGENT_NAME: "agent-pandora-perf-medium"
TEST_LABELS: "version=${{ github.ref_name }}"
AGENT_FILTER: "name = 'agent-pandora-perf-medium'"
steps:
- uses: actions/checkout@v4
- id: run-perftests
name: Run Pandora Performance Tests
uses: yandex-cloud/yc-github-loadtesting-ci/test-suite@v1-beta
with:
action-log-level: INFO
auth-key-json-base64: ${{ secrets.YC_LOADTESTING_KEY_JSON_BASE64 }}
folder-id: ${{ vars.YC_LOADTESTING_FOLDER_ID }}
data-bucket: ${{ vars.YC_LOADTESTING_DATA_BUCKET }}
add-labels: "version=${{ github.ref_name }}"
agent-filter: "name='${{ env.PERFTESTS_AGENT_NAME }}'"
test-directories: |
"${{ env.PERFTESTS_ROOT }}/pandora-perf-grpc-2000inst-sleep0ms-overflow-false"
"${{ env.PERFTESTS_ROOT }}/pandora-perf-grpc-2000inst-sleep50ms-overflow-false"
"${{ env.PERFTESTS_ROOT }}/pandora-perf-grpc-300inst-sleep0ms-overflow-false"
"${{ env.PERFTESTS_ROOT }}/pandora-perf-grpc-2000inst-sleep0ms-overflow-true"
"${{ env.PERFTESTS_ROOT }}/pandora-perf-grpc-2000inst-sleep50ms-overflow-true"
"${{ env.PERFTESTS_ROOT }}/pandora-perf-grpc-300inst-sleep0ms-overflow-true"
"${{ env.PERFTESTS_ROOT }}/pandora-perf-http-uri-300inst-sleep0ms-overflow-false"
"${{ env.PERFTESTS_ROOT }}/pandora-perf-http-uri-2000inst-sleep0ms-overflow-false"
"${{ env.PERFTESTS_ROOT }}/pandora-perf-http-uri-2000inst-sleep50ms-overflow-false"
"${{ env.PERFTESTS_ROOT }}/pandora-perf-http-uri-300inst-sleep0ms-overflow-true"
"${{ env.PERFTESTS_ROOT }}/pandora-perf-http-uri-2000inst-sleep0ms-overflow-true"
"${{ env.PERFTESTS_ROOT }}/pandora-perf-http-uri-2000inst-sleep50ms-overflow-true"
- uses: actions/upload-artifact@v4
if: always()
with:
name: perftest-artifacts
path: ${{ steps.run-perftests.outputs.artifacts-dir }}

- id: make-test-infos-json
if: always()
run: cp "${{ steps.run-perftests.outputs.test-infos-file }}" test-infos.json

- id: make-imbalance-md-str
name: Generate report
uses: sergeysova/jq-action@v2
with:
multiline: true
cmd: |
jq -r '.[] | "- \(.details.name): **\(.summary.imbalance_point.rps // 0 | tonumber)**"' test-infos.json > imbalance.md
- uses: actions/upload-artifact@v4
with:
name: imbalance.md
path: imbalance.md

- name: Update release
uses: tubone24/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
body_path: imbalance.md
is_append_body: true

127 changes: 0 additions & 127 deletions .github/workflows/yc.yml

This file was deleted.

15 changes: 1 addition & 14 deletions .mapping.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,11 +30,10 @@
".changes/v0.5.30.md":"load/projects/pandora/.changes/v0.5.30.md",
".changes/v0.5.31.md":"load/projects/pandora/.changes/v0.5.31.md",
".changie.yaml":"load/projects/pandora/.changie.yaml",
".github/actions/setup-yc/action.yml":"load/projects/pandora/.github/actions/setup-yc/action.yml",
".github/workflows/pages.yml":"load/projects/pandora/.github/workflows/pages.yml",
".github/workflows/perftest.yml":"load/projects/pandora/.github/workflows/perftest.yml",
".github/workflows/release.yml":"load/projects/pandora/.github/workflows/release.yml",
".github/workflows/test.yml":"load/projects/pandora/.github/workflows/test.yml",
".github/workflows/yc.yml":"load/projects/pandora/.github/workflows/yc.yml",
".gitignore":"load/projects/pandora/.gitignore",
".goxc.json":"load/projects/pandora/.goxc.json",
".travis.yml":"load/projects/pandora/.travis.yml",
Expand Down Expand Up @@ -513,18 +512,6 @@
"lib/zaputil/stack_extract_core.go":"load/projects/pandora/lib/zaputil/stack_extract_core.go",
"lib/zaputil/stack_extract_core_test.go":"load/projects/pandora/lib/zaputil/stack_extract_core_test.go",
"main.go":"load/projects/pandora/main.go",
"performance-test/automation/_agent_create.sh":"load/projects/pandora/performance-test/automation/_agent_create.sh",
"performance-test/automation/_agent_delete.sh":"load/projects/pandora/performance-test/automation/_agent_delete.sh",
"performance-test/automation/_compose_test_create_args.sh":"load/projects/pandora/performance-test/automation/_compose_test_create_args.sh",
"performance-test/automation/_functions.sh":"load/projects/pandora/performance-test/automation/_functions.sh",
"performance-test/automation/_test_check.sh":"load/projects/pandora/performance-test/automation/_test_check.sh",
"performance-test/automation/_test_run.sh":"load/projects/pandora/performance-test/automation/_test_run.sh",
"performance-test/automation/_variables.sh":"load/projects/pandora/performance-test/automation/_variables.sh",
"performance-test/automation/agent.sh":"load/projects/pandora/performance-test/automation/agent.sh",
"performance-test/automation/default_check_report.sh":"load/projects/pandora/performance-test/automation/default_check_report.sh",
"performance-test/automation/default_check_summary.sh":"load/projects/pandora/performance-test/automation/default_check_summary.sh",
"performance-test/automation/s3_upload.sh":"load/projects/pandora/performance-test/automation/s3_upload.sh",
"performance-test/automation/test.sh":"load/projects/pandora/performance-test/automation/test.sh",
"performance-test/test-config/pandora-perf-grpc-2000inst-sleep0ms-overflow-false/meta.json":"load/projects/pandora/performance-test/test-config/pandora-perf-grpc-2000inst-sleep0ms-overflow-false/meta.json",
"performance-test/test-config/pandora-perf-grpc-2000inst-sleep0ms-overflow-false/payload.json":"load/projects/pandora/performance-test/test-config/pandora-perf-grpc-2000inst-sleep0ms-overflow-false/payload.json",
"performance-test/test-config/pandora-perf-grpc-2000inst-sleep0ms-overflow-false/test-config.yaml":"load/projects/pandora/performance-test/test-config/pandora-perf-grpc-2000inst-sleep0ms-overflow-false/test-config.yaml",
Expand Down
Loading

0 comments on commit f572e78

Please sign in to comment.