forked from kedro-org/kedro-viz
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
14 changed files
with
483 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,26 @@ | ||
name: install_node_dependencies | ||
description: Install Node dependencies | ||
|
||
runs: | ||
using: composite | ||
steps: | ||
- uses: actions/[email protected] | ||
with: | ||
node-version: 16.13.2 | ||
# Sets up the Node environment with the specified version. | ||
|
||
- id: npm-cache-dir | ||
run: echo "dir=$(npm config get cache)" >> $GITHUB_OUTPUT | ||
shell: bash | ||
# Retrieves the cache directory path for npm and stores it in the $GITHUB_OUTPUT environment variable. | ||
|
||
- uses: actions/[email protected] | ||
with: | ||
path: "${{ steps.npm-cache-dir.outputs.dir }}" | ||
key: "${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}" | ||
restore-keys: "${{ runner.os }}-node-" | ||
# Caches the Node dependencies using the specified cache key and restore keys. | ||
|
||
- run: npm ci | ||
shell: bash | ||
# Installs the Node dependencies using the npm ci command. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
name: setup_cypress_requirements | ||
description: Setup Cypress requirements | ||
runs: | ||
using: composite | ||
steps: | ||
- name: Install cypress system dependencies | ||
run: |- | ||
sudo sed -i 's/archive.ubuntu.com/us-east-1.ec2.archive.ubuntu.com/g' /etc/apt/sources.list | ||
sudo apt-get update | ||
sudo apt-get install libgtk2.0-0 libgtk-3-0 libgbm-dev libnotify-dev libgconf-2-4 libnss3 libxss1 libasound2 libxtst6 xauth xvfb | ||
shell: bash |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
name: setup_python_env | ||
description: Setup Python environment | ||
runs: | ||
using: composite | ||
steps: | ||
- name: Install Python dependencies | ||
run: |- | ||
pip install git+https://github.com/kedro-org/kedro@main | ||
pip install wheel | ||
pip install toposort | ||
pip install -r package/test_requirements.txt -r demo-project/src/docker_requirements.txt -U | ||
shell: bash | ||
- name: Echo package versions | ||
run: |- | ||
python -V | ||
pip freeze | ||
shell: bash |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
name: Run all checks on Kedro-Viz | ||
on: | ||
workflow_call: | ||
workflow_dispatch: | ||
jobs: | ||
e2e_tests: | ||
strategy: | ||
matrix: | ||
os: [ windows-latest, ubuntu-latest ] | ||
python-version: [ "3.9", "3.10", "3.11" ] | ||
uses: ./.github/workflows/e2e-tests.yml | ||
with: | ||
os: ${{ matrix.os }} | ||
python-version: ${{ matrix.python-version }} | ||
|
||
unit_tests: | ||
strategy: | ||
matrix: | ||
os: [ windows-latest, ubuntu-latest ] | ||
python-version: [ "3.9", "3.10", "3.11" ] | ||
uses: ./.github/workflows/unit-tests.yml | ||
with: | ||
os: ${{ matrix.os }} | ||
python-version: ${{ matrix.python-version }} | ||
|
||
lint: | ||
strategy: | ||
matrix: | ||
os: [ ubuntu-latest ] | ||
python-version: [ "3.9", "3.10", "3.11" ] | ||
uses: ./.github/workflows/lint.yml | ||
with: | ||
os: ${{ matrix.os }} | ||
python-version: ${{ matrix.python-version }} | ||
|
||
javascript_lint_and_tests: | ||
strategy: | ||
matrix: | ||
os: [ ubuntu-latest ] | ||
python-version: [ "3.9" ] | ||
uses: ./.github/workflows/javascript-lint-and-tests.yml | ||
with: | ||
os: ${{ matrix.os }} | ||
python-version: ${{ matrix.python-version }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
name: Build backend | ||
on: | ||
push: | ||
paths: | ||
- 'package/**' | ||
- '.github/**' | ||
pull_request: | ||
paths: | ||
- 'package/**' | ||
- '.github/**' | ||
workflow_dispatch: | ||
jobs: | ||
e2e_tests: | ||
strategy: | ||
matrix: | ||
os: [ windows-latest, ubuntu-latest ] | ||
python-version: [ "3.9", "3.10", "3.11" ] | ||
uses: ./.github/workflows/e2e-tests.yml | ||
with: | ||
os: ${{ matrix.os }} | ||
python-version: ${{ matrix.python-version }} | ||
|
||
unit_tests: | ||
strategy: | ||
matrix: | ||
os: [ windows-latest, ubuntu-latest ] | ||
python-version: [ "3.9", "3.10", "3.11" ] | ||
uses: ./.github/workflows/unit-tests.yml | ||
with: | ||
os: ${{ matrix.os }} | ||
python-version: ${{ matrix.python-version }} | ||
|
||
lint: | ||
strategy: | ||
matrix: | ||
os: [ ubuntu-latest ] | ||
python-version: [ "3.9", "3.10", "3.11" ] | ||
uses: ./.github/workflows/lint.yml | ||
with: | ||
os: ${{ matrix.os }} | ||
python-version: ${{ matrix.python-version }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
name: Build frontend | ||
on: | ||
push: | ||
paths-ignore: | ||
- 'package/**' | ||
pull_request: | ||
paths-ignore: | ||
- 'package/**' | ||
workflow_dispatch: | ||
jobs: | ||
javascript_lint_and_tests: | ||
strategy: | ||
matrix: | ||
os: [ ubuntu-latest ] | ||
python-version: [ "3.9" ] | ||
uses: ./.github/workflows/javascript-lint-and-tests.yml | ||
with: | ||
os: ${{ matrix.os }} | ||
python-version: ${{ matrix.python-version }} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
name: Daily all checks | ||
on: | ||
schedule: | ||
- cron: 0 1 * * * | ||
workflow_dispatch: | ||
jobs: | ||
all-checks: | ||
uses: ./.github/workflows/all-checks.yml |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
name: Deploy demo | ||
on: | ||
workflow_dispatch: | ||
push: | ||
branches: | ||
- demo | ||
jobs: | ||
deploy_demo: | ||
runs-on: ubuntu-latest | ||
env: | ||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | ||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | ||
steps: | ||
- name: Checkout code | ||
uses: actions/[email protected] | ||
|
||
- name: Setup environment | ||
run: |- | ||
cd demo-project | ||
echo "AWS_ECR_URL=public.ecr.aws/h1b3x4b6/jitu5-kedro-viz" >> $GITHUB_ENV | ||
echo "KEDRO_VIZ_VERSION=$(cat .version)" >> $GITHUB_ENV | ||
- name: Install AWS CLI | ||
run: pip3 install awscli | ||
|
||
- name: Build demo container image | ||
run: |- | ||
cd demo-project | ||
echo "kedro_viz==$KEDRO_VIZ_VERSION" >> src/docker_requirements.txt | ||
docker build -t $AWS_ECR_URL:$KEDRO_VIZ_VERSION . | ||
aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws | ||
docker push $AWS_ECR_URL:$KEDRO_VIZ_VERSION | ||
- name: Create a new lightsail deployment | ||
run: |- | ||
cd demo-project | ||
# run https://docs.aws.amazon.com/cli/latest/reference/lightsail/create-container-service-deployment.html#create-container-service-deployment | ||
aws lightsail create-container-service-deployment --region eu-west-2 --cli-input-json file://./lightsail.json |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
name: Run e2e tests on Kedro-Viz | ||
|
||
on: | ||
workflow_call: | ||
inputs: | ||
os: | ||
type: string | ||
python-version: | ||
type: string | ||
jobs: | ||
e2e_tests: | ||
runs-on: ${{ inputs.os }} | ||
if: inputs.os == 'ubuntu-latest' || ((github.ref == 'refs/heads/main' || github.ref == 'refs/heads/demo') && inputs.os == 'windows-latest') | ||
steps: | ||
- name: Checkout code | ||
uses: actions/[email protected] | ||
|
||
- name: Set up Python ${{inputs.python-version}} | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: ${{inputs.python-version}} | ||
|
||
- name: Cache python packages for Linux | ||
if: inputs.os == 'ubuntu-latest' | ||
uses: actions/cache@v4 | ||
with: | ||
path: ~/.cache/pip | ||
key: ${{inputs.os}}-python-${{inputs.python-version}} | ||
|
||
- name: Cache python packages for Windows | ||
if: inputs.os == 'windows-latest' | ||
uses: actions/cache@v4 | ||
with: | ||
path: ~\AppData\Local\pip\Cache | ||
key: ${{inputs.os}}-python-${{inputs.python-version}} | ||
|
||
- name: Setup Python environment | ||
uses: "./.github/actions/setup_python_env" | ||
|
||
- name: Install Node dependencies | ||
uses: "./.github/actions/install_node_dependencies" | ||
|
||
- name: Build React application | ||
run: |- | ||
node -v | ||
make build | ||
- name: Run Python tests | ||
run: make e2e-tests |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
name: Run javascript linters and tests on Kedro-Viz | ||
|
||
on: | ||
workflow_call: | ||
inputs: | ||
os: | ||
type: string | ||
python-version: | ||
type: string | ||
jobs: | ||
javascript_lint_and_tests: | ||
runs-on: ${{ inputs.os }} | ||
steps: | ||
- name: Checkout code | ||
uses: actions/[email protected] | ||
|
||
- name: Set up Python ${{inputs.python-version}} | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: ${{inputs.python-version}} | ||
|
||
- name: Cache python packages for Linux | ||
if: inputs.os == 'ubuntu-latest' | ||
uses: actions/cache@v4 | ||
with: | ||
path: ~/.cache/pip | ||
key: ${{inputs.os}}-python-${{inputs.python-version}} | ||
|
||
- name: Setup Python environment | ||
uses: "./.github/actions/setup_python_env" | ||
|
||
- name: Install Node dependencies | ||
uses: "./.github/actions/install_node_dependencies" | ||
|
||
- name: Setup Cypress requirements | ||
uses: "./.github/actions/setup_cypress_requirements" | ||
|
||
- name: Test lib transpilation | ||
run: npm run lib | ||
|
||
- name: Test JS library imports | ||
run: |- | ||
npm run lib-test:setup | ||
cd tools/test-lib/react-app | ||
npm run test:ci | ||
- name: Run Eslint | ||
run: npm run lint | ||
|
||
- name: Run JavaScript tests | ||
run: npm run test:ci | ||
|
||
- name: Run Javascript end to end tests | ||
run: npm run cy:ci |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
name: Run linters on Kedro-Viz | ||
|
||
on: | ||
workflow_call: | ||
inputs: | ||
os: | ||
type: string | ||
python-version: | ||
type: string | ||
jobs: | ||
lint: | ||
runs-on: ${{ inputs.os }} | ||
steps: | ||
- name: Checkout code | ||
uses: actions/[email protected] | ||
|
||
- name: Set up Python ${{inputs.python-version}} | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: ${{inputs.python-version}} | ||
|
||
- name: Cache python packages for Linux | ||
if: inputs.os == 'ubuntu-latest' | ||
uses: actions/cache@v4 | ||
with: | ||
path: ~/.cache/pip | ||
key: ${{inputs.os}}-python-${{inputs.python-version}} | ||
|
||
- name: Setup Python environment | ||
uses: "./.github/actions/setup_python_env" | ||
|
||
- name: Run secret scan | ||
run: make secret-scan | ||
|
||
- name: Run security scan | ||
run: make security-scan | ||
|
||
- name: Verify GraphQL schema is up to date | ||
run: make schema-check | ||
|
||
- name: Run Python formatters and linters | ||
run: make format-check lint-check |
Oops, something went wrong.