Skip to content

Commit

Permalink
Merge branch 'Percona-Lab:main' into pmm-pxc-proxysql2-packages
Browse files Browse the repository at this point in the history
  • Loading branch information
panchal-yash authored Dec 15, 2023
2 parents 0375f03 + 44a2999 commit 41ff9d7
Showing 1 changed file with 88 additions and 0 deletions.
88 changes: 88 additions & 0 deletions .github/workflows/PMM_PDPGSQL.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
name: PMM_PDPGSQL
on:
workflow_dispatch:
inputs:
pdpgsql_version:
description: "PDPGSQL Docker hub example perconalab/percona-distribution-postgresql:16.0 latest available Image"
required: true
pmm_image:
description: "pmm_image, example: perconalab/pmm-server:dev-latest"
required: false
repo:
description: "Percona Release Repo defaults to Experiemental example: experimental"
required: false
push:
branches:
- main

pull_request:
branches:
- main

jobs:
PMM_PDPGSQL_TEST:
runs-on: ubuntu-latest
timeout-minutes: 20
env:
PDPGSQL_VERSION: ${{ github.event.inputs.pdpgsql_version || 'perconalab/percona-distribution-postgresql:16.0' }}
PMM_IMAGE: ${{ github.event.inputs.pmm_image || 'perconalab/pmm-server:dev-latest' }}
REPO: ${{ github.event.inputs.repo || 'experimental' }}

steps:
- uses: actions/checkout@v2

- name: Concatenate values to environment file
run: |
echo "PMM_QA_REPO_URL=https://github.com/percona/pmm-qa/" >> $GITHUB_ENV
echo "PMM_QA_REPO_BRANCH=main" >> $GITHUB_ENV
- name: Install Ansible and update the node
run: sudo apt-get update -y && sudo apt-get install ansible -y

- name: Install Percona Release Package
run: wget https://repo.percona.com/apt/percona-release_latest.generic_all.deb && sudo dpkg -i percona-release_latest.generic_all.deb

- name: Install Enable percona-release experimental for dev-latest installation of pmm2-client
if: ${{ inputs.repo == 'experimental' }}
run: sudo percona-release enable-only original experimental

- name: Install Enable percona-release testing for rc installation of pmm2-client
if: ${{ inputs.repo == 'testing' }}
run: sudo percona-release enable-only original testing

- name: Install PMM Client
run: sudo apt update -y && sudo apt-get upgrade -y && sudo apt-get install -y pmm2-client

- name: Delete if the Repo already checked out
run: sudo rm -r pmm-qa || true

- name: Clone the PMM_QA repo
run: git clone -b ${{ env.PMM_QA_REPO_BRANCH }} ${{ env.PMM_QA_REPO_URL }}

- name: Give write perimssion to the bash script
run: chmod +x ./pmm-tests/pmm-framework.sh
working-directory: pmm-qa

- name: Run the pmm container in backgrounds
run: docker run --detach --restart always -p 443:443 -p 80:80 --name pmm-server ${{ env.PMM_IMAGE }}

- name: Wait before pmm-admin config command
run: sleep 120

- name: setup pmm-admin config
run: sudo pmm-admin config --server-insecure-tls --server-url=https://admin:admin@localhost:443

- name: Run for PDPGSQL tests
run: sudo ./pmm-framework.sh --pdpgsql-version=16 --pmm2 --download --addclient=pdpgsql,1
working-directory: pmm-qa/pmm-tests

- name: Checkout the repo and install node packages
run: git clone https://github.com/percona/pmm-ui-tests.git && cd pmm-ui-tests && npm ci

- name: Install npx dependencies
run: sudo npx playwright install-deps && npx codeceptjs def pr.codecept.js
working-directory: pmm-ui-tests

- name: Run the Integration tests of pdpgsql
run: npx codeceptjs run -c pr.codecept.js tests/qa-integration/pmm_pdpgsql_integration_test.js --steps --debug
working-directory: pmm-ui-tests

0 comments on commit 41ff9d7

Please sign in to comment.