Skip to content

PMM Integration Tests #170

PMM Integration Tests

PMM Integration Tests #170

name: PMM Integration Tests
on:
schedule:
- cron: '0 0 * * *'
workflow_dispatch:
inputs:
pmm_ui_tests_branch:
description: 'pmm-ui-tests repository branch(CLI tests)'
default: 'main'
required: false
type: string
pmm_qa_branch:
description: 'pmm-qa repository branch(for setup)'
default: 'main'
required: false
type: string
pmm_server_image:
description: 'PMM Server docker image'
default: 'perconalab/pmm-server:dev-latest'
required: false
type: string
pmm_client_image:
description: 'pmm2-client docker image'
default: 'perconalab/pmm-client:dev-latest'
required: false
type: string
pmm_client_version:
description: 'PMM Client version (dev-latest|pmm2-latest|pmm2-rc|x.xx.x|https...)'
default: 'dev-latest'
required: false
type: string
sha:
description: "SHA (leave default if running manually)"
default: 'null'
required: false
type: string
workflow_call:
inputs:
pmm_ui_tests_branch:
required: false
type: string
pmm_qa_branch:
required: false
type: string
pmm_server_image:
required: true
type: string
pmm_client_image:
required: true
type: string
pmm_client_version:
required: true
type: string
sha:
required: false
type: string
jobs:
help-tests:
name: 'CLI / Integration'
uses: ./.github/workflows/runner-integration-cli-tests.yml
secrets: inherit
with:
sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
cli_test: 'pmm-ui-tests/cli/tests/help.spec.ts'
test_name: 'help tests'
pmm-server-tests:
name: 'CLI / Integration'
uses: ./.github/workflows/runner-integration-cli-tests.yml
secrets: inherit
with:
sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
cli_test: 'pmm-server-only'
test_name: 'pmm-server container'
pmm-client-container-tests:
name: 'CLI / Integration'
uses: ./.github/workflows/runner-integration-cli-tests.yml
secrets: inherit
with:
sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
cli_test: 'pmm-client-docker'
services_list: '--setup-pmm-client-docker'
test_name: 'pmm-client docker'
generic-tests:
name: 'CLI / Integration'
uses: ./.github/workflows/runner-integration-cli-tests.yml
secrets: inherit
with:
sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
cli_test: 'generic unregister'
test_name: 'Generic'
remove-tests:
name: 'CLI / Integration'
uses: ./.github/workflows/runner-integration-cli-tests.yml
secrets: inherit
with:
sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
cli_test: 'pmm-ui-tests/cli/tests/remove.spec.ts'
services_list: '--pxc-version=5.7 --addclient=pxc,1'
test_name: 'Remove'
ps-57-tests:
name: 'CLI / Integration'
uses: ./.github/workflows/runner-integration-cli-tests.yml
secrets: inherit
with:
sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
cli_test: 'pmm-ui-tests/cli/tests/perconaMySqlServer.spec.ts'
services_list: '--ps-version=5.7 --addclient=ps,1'
test_name: 'Percona Server 5.7'
ps-80-tests:
name: 'CLI / Integration'
uses: ./.github/workflows/runner-integration-cli-tests.yml
secrets: inherit
with:
sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
cli_test: 'pmm-ui-tests/cli/tests/perconaMySqlServer.spec.ts'
services_list: '--ps-version=8.0 --addclient=ps,1'
test_name: 'Percona Server 8.0'
mysql-80-tests:
name: 'CLI / Integration'
uses: ./.github/workflows/runner-integration-cli-tests.yml
secrets: inherit
with:
sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
cli_test: 'pmm-ui-tests/cli/tests/mysql.spec.ts pmm-ui-tests/cli/tests/mysql-conf-file.spec.ts'
services_list: '--ms-version=8.0 --addclient=ms,1'
test_name: 'MySQL 8.0'
pdpgsql-13-tests:
name: 'CLI / Integration'
uses: ./.github/workflows/runner-integration-cli-tests.yml
secrets: inherit
with:
sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
cli_test: 'postgreSql'
services_list: '--pdpgsql-version=13 --addclient=pdpgsql,1'
test_name: 'PD PostgreSQL 13'
pdpgsql-14-tests:
name: 'CLI / Integration'
uses: ./.github/workflows/runner-integration-cli-tests.yml
secrets: inherit
with:
sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
cli_test: 'postgreSql'
services_list: '--pdpgsql-version=14 --addclient=pdpgsql,1'
test_name: 'PD PostgreSQL 14'
pdpgsql-15-tests:
name: 'CLI / Integration'
uses: ./.github/workflows/runner-integration-cli-tests.yml
secrets: inherit
with:
sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
cli_test: 'postgreSql'
services_list: '--pdpgsql-version=15 --addclient=pdpgsql,1'
test_name: 'PD PostgreSQL 15'
# FIXME: PMM-12966
# mongo-44-tests:
# name: 'CLI / Integration'
# uses: ./.github/workflows/runner-integration-cli-tests.yml
# secrets: inherit
# with:
# sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
# pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
# pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
# pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
# pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
# pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
# cli_test: 'pmm-ui-tests/cli/tests/mongoDb.spec.ts'
# services_list: '--modb-version=4.4 --addclient=modb,1'
# test_name: 'MongoDB 4.4'
# FIXME: PMM-12966
# mongo-5-tests:
# name: 'CLI / Integration'
# uses: ./.github/workflows/runner-integration-cli-tests.yml
# secrets: inherit
# with:
# sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
# pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
# pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
# pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
# pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
# pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
# cli_test: 'pmm-ui-tests/cli/tests/mongoDb.spec.ts'
# services_list: '--modb-version=5 --addclient=modb,1'
# test_name: 'MongoDB 5.x'
# FIXME: PMM-12966
# mongo-6-tests:
# name: 'CLI / Integration'
# uses: ./.github/workflows/runner-integration-cli-tests.yml
# secrets: inherit
# with:
# sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
# pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
# pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
# pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
# pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
# pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
# cli_test: 'pmm-ui-tests/cli/tests/mongoDb.spec.ts'
# services_list: '--modb-version=6 --addclient=modb,1'
# test_name: 'MongoDB 6.x'
# FIXME: PMM-12966
# mongo-7-tests:
# name: 'CLI / Integration'
# uses: ./.github/workflows/runner-integration-cli-tests.yml
# secrets: inherit
# with:
# sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
# pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
# pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
# pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
# pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
# pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
# cli_test: 'pmm-ui-tests/cli/tests/mongoDb.spec.ts'
# services_list: '--modb-version=7 --addclient=modb,1'
# test_name: 'MongoDB 7.x'
psmdb-44-tests:
name: 'CLI / Integration'
uses: ./.github/workflows/runner-integration-cli-tests.yml
secrets: inherit
with:
sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
cli_test: 'pmm-ui-tests/cli/tests/mongoDb-psmdb.spec.ts'
services_list: '--mo-version=4.4 --mongomagic --with-shard'
test_name: 'PSMDB 4.4'
psmdb-5-tests:
name: 'CLI / Integration'
uses: ./.github/workflows/runner-integration-cli-tests.yml
secrets: inherit
with:
sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
cli_test: 'pmm-ui-tests/cli/tests/mongoDb-psmdb.spec.ts'
services_list: '--mo-version=5 --mongomagic --with-shard'
test_name: 'PSMDB 5.x'
psmdb-6-tests:
name: 'CLI / Integration'
uses: ./.github/workflows/runner-integration-cli-tests.yml
secrets: inherit
with:
sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
cli_test: 'pmm-ui-tests/cli/tests/mongoDb-psmdb.spec.ts'
services_list: '--mo-version=6 --mongomagic --with-shard'
test_name: 'PSMDB 6.x'
psmdb-7-tests:
name: 'CLI / Integration'
uses: ./.github/workflows/runner-integration-cli-tests.yml
secrets: inherit
with:
sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
cli_test: 'pmm-ui-tests/cli/tests/mongoDb-psmdb.spec.ts'
services_list: '--mo-version=7 --mongomagic --with-shard'
test_name: 'PSMDB 7.x'
haproxy-tests:
name: 'CLI / Integration'
uses: ./.github/workflows/runner-integration-cli-tests.yml
secrets: inherit
with:
sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
cli_test: 'haproxy'
services_list: '--addclient=haproxy,1'
test_name: 'HA Proxy'
proxysql-tests:
name: 'CLI / Integration'
uses: ./.github/workflows/runner-integration-cli-tests.yml
secrets: inherit
with:
sha: ${{ inputs.sha || github.event.pull_request.head.sha || 'null' }}
pmm_ui_tests_branch: ${{ inputs.pmm_ui_tests_branch || 'main' }}
pmm_qa_branch: ${{ inputs.pmm_qa_branch || 'main' }}
pmm_server_image: ${{ inputs.pmm_server_image || 'perconalab/pmm-server:dev-latest' }}
pmm_client_image: ${{ inputs.pmm_client_image || 'perconalab/pmm-client:dev-latest' }}
pmm_client_version: ${{ inputs.pmm_client_version || 'dev-latest' }}
cli_test: 'proxySql'
services_list: '--pxc-version=5.7 --addclient=pxc,1'
test_name: 'PXC 5.7'