Skip to content
This repository has been archived by the owner on Mar 4, 2024. It is now read-only.

EVEREST-862 Add column hide state to local storage #1480

EVEREST-862 Add column hide state to local storage

EVEREST-862 Add column hide state to local storage #1480

Workflow file for this run

---
name: CI
on:
schedule:
- cron: '0 12 * * 0'
push:
branches:
- main
tags:
- v[0-9]+.[0-9]+.[0-9]+*
pull_request:
permissions:
contents: write
packages: write
checks: write
pull-requests: write
repository-projects: read
env:
NODE_OPTIONS: '—-max_old_space_size=4096'
jobs:
cache_pnpm:
name: Cache PNPM
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v3
with:
token: ${{ secrets.ROBOT_TOKEN }}
- uses: pnpm/action-setup@v2
with:
version: 8
- name: Use Node
uses: actions/setup-node@v3
with:
node-version: 16.x
cache: 'pnpm'
cache-dependency-path: 'pnpm-lock.yaml'
- name: Install dependencies
run: make init
CI_checks:
runs-on: ubuntu-latest
needs: cache_pnpm
strategy:
matrix:
action: ['lint', 'format', 'test', 'build']
steps:
- uses: actions/checkout@v3
with:
token: ${{ secrets.ROBOT_TOKEN }}
- uses: pnpm/action-setup@v2
with:
version: 8
- name: Use Node
uses: actions/setup-node@v3
with:
node-version: 16.x
cache: 'pnpm'
cache-dependency-path: 'pnpm-lock.yaml'
- run: make init
- name: lint
if: matrix.action == 'lint'
run: make lint
- name: format
if: matrix.action == 'format'
run: make format
- name: test
if: matrix.action == 'test'
run: make test
- name: build
if: matrix.action == 'build'
run: make build
- name: Check for changes
id: check_changes
run: |
git config --global user.email "[email protected]"
git config --global user.name "CI Bot"
git diff --exit-code || echo "::set-output name=changes::true"
- uses: stefanzweifel/git-auto-commit-action@v5
if: steps.check_changes.outputs.changes == 'true' && github.event_name == 'pull_request'
with:
commit_message: 'chore: lint/format'
token: ${{ secrets.ROBOT_TOKEN }}
E2E:
name: E2E Tests
needs: cache_pnpm
runs-on: ubuntu-20.04
env:
GOPRIVATE: github.com/percona,github.com/percona/percona-everest-backend,github.com/percona/percona-everest-cli,github.com/percona/everest-operator
steps:
- uses: actions/checkout@v3
with:
path: FE
token: ${{ secrets.ROBOT_TOKEN }}
- uses: pnpm/action-setup@v2
with:
version: 8
- name: Use Node
uses: actions/setup-node@v3
with:
node-version: 16.x
cache: 'pnpm'
cache-dependency-path: FE/pnpm-lock.yaml
- name: Set up Helm
uses: azure/setup-helm@v2
with:
version: 'v3.0.0'
- name: Checkout CLI repo
uses: percona-platform/checkout@v3
with:
repository: percona/percona-everest-cli
ref: 'main'
path: CLI
- name: Configure git for private modules
env:
ROBOT_TOKEN: ${{ secrets.ROBOT_TOKEN }}
run: git config --global url."https://percona-platform-robot:${ROBOT_TOKEN}@github.com".insteadOf "https://github.com"
- name: Set up Go release
uses: percona-platform/setup-go@v4
with:
go-version: 1.20.x
- name: Set GO_VERSION environment variable
run: |
go version
echo "GO_VERSION=$(go version)" >> $GITHUB_ENV
- name: Create KIND cluster
uses: helm/[email protected]
- name: Add Helm Percona repository
run: |
helm repo add percona https://percona.github.io/percona-helm-charts/
- name: Install Helm PMM chart
run: |
helm install pmm --set secret.pmm_password='admin',service.type=ClusterIP percona/pmm
- name: Echo PMM credentials
run: |
echo -n MONITORING_URL=$("http://" && kubectl get svc/monitoring-service -o json | jq -r '.spec.clusterIP') >> $GITHUB_ENV
- name: Run Provisioning
run: |
cd CLI
go run cmd/everest/main.go install \
--operator.mongodb \
--operator.postgresql \
--operator.xtradb-cluster \
--skip-wizard \
--namespaces everest-ui
- name: Change token
run: |
cd CLI
echo "EVEREST_K8_TOKEN=$(go run cmd/everest/main.go token reset --json | jq .token -r)" >> $GITHUB_ENV
- name: Expose Everest backend
run: |
kubectl port-forward -n everest-system deployment/percona-everest 8080:8080 &
- name: Run Everest
run: |
cd FE
make init
pnpm --filter "@percona/everest" dev &
- name: Install Chromium for Playwright
run: |
cd FE/apps/everest
npx playwright install chromium
- name: Run integration tests
env:
EVEREST_LOCATION_BUCKET_NAME: '${{ secrets.EVEREST_LOCATION_BUCKET_NAME }}'
EVEREST_LOCATION_ACCESS_KEY: '${{ secrets.EVEREST_LOCATION_ACCESS_KEY }}'
EVEREST_LOCATION_SECRET_KEY: '${{ secrets.EVEREST_LOCATION_SECRET_KEY }}'
EVEREST_LOCATION_REGION: '${{ secrets.EVEREST_LOCATION_REGION }}'
EVEREST_LOCATION_URL: '${{ secrets.EVEREST_LOCATION_URL }}'
MONITORING_USER: 'admin'
MONITORING_PASSWORD: 'admin'
run: |
cd FE
pnpm --filter "@percona/everest" e2e
- name: Archive test results
if: always()
uses: actions/upload-artifact@v3
with:
name: test-results
path: FE/apps/everest/.e2e/test-results/
- name: Archive report
if: always()
uses: actions/upload-artifact@v3
with:
name: playwright-report
path: FE/apps/everest/.e2e/playwright-report/
- name: Run debug commands on failure
if: ${{ failure() }}
run: |
kubectl -n everest-system logs deployment/percona-everest