Node18 #244
Workflow file for this run
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
name: E2E | |
on: | |
pull_request: | |
jobs: | |
start-vm: | |
name: Start VM | |
runs-on: ubuntu-latest | |
outputs: | |
label: ${{ steps.start-yc-runner.outputs.label }} | |
instance-id: ${{ steps.start-yc-runner.outputs.instance-id }} | |
steps: | |
- name: Start YC runner | |
id: start-yc-runner | |
uses: yc-actions/yc-github-runner@v1 | |
with: | |
mode: start | |
yc-sa-json-credentials: ${{ secrets.YC_SA_JSON_CREDENTIALS }} | |
github-token: ${{ secrets.GH_PERSONAL_ACCESS_TOKEN }} | |
folder-id: b1gcvl619mdunf1cqqbv | |
image-id: fd8q5h7f9c5lpd474h12 | |
zone-id: "ru-central1-b" | |
subnet-id: e2lno1rkqo63l729dlo7 | |
cores: 4 | |
memory: 16GB | |
core-fraction: 100 | |
disk-type: network-ssd-nonreplicated | |
disk-size: 93GB | |
e2e-build: | |
name: Build & Run containers for 'Local' | |
runs-on: ${{ needs.start-vm.outputs.label }} | |
needs: start-vm | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
- name: Setup Node | |
uses: actions/setup-node@v2 | |
with: | |
node-version: "18.x" | |
cache: "npm" | |
- name: npm install | |
run: | | |
cd packages/ui | |
npm run deps:install | |
- name: Build UI | |
run: | | |
cd packages/ui | |
npm run build | |
npm pack | |
npm run docker:build:dev --dockertag=local | |
- name: Run containers for 'Local' | |
run: | | |
curl https://raw.githubusercontent.com/ytsaurus/ytsaurus/main/yt/docker/local/run_local_cluster.sh > run_local_cluster.sh | |
chmod u+x run_local_cluster.sh | |
./run_local_cluster.sh --ui-skip-pull true --ui-version local --ui-app-installation e2e | |
sleep 10 | |
e2e-local: | |
name: E2E for 'Local' | |
runs-on: ${{ needs.start-vm.outputs.label }} | |
needs: | |
- start-vm | |
- e2e-build | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
- name: Setup Node | |
uses: actions/setup-node@v2 | |
with: | |
node-version: "18.x" | |
cache: "npm" | |
- name: npm ci | |
run: | | |
cd packages/ui/tests | |
npm ci | |
- name: Tests for 'Local' | |
run: | | |
cd packages/ui | |
YT_PROXY=`hostname`:8000 npm run e2e:localmode:init | |
npm run e2e:localmode:ui | |
e2e-run-for-local-as-remote: | |
name: Run containers for 'Local as remote' | |
runs-on: ${{ needs.start-vm.outputs.label }} | |
needs: | |
- start-vm | |
- e2e-local | |
steps: | |
- name: Run containers for 'Local as remote' | |
run: | | |
curl https://raw.githubusercontent.com/ytsaurus/ytsaurus/main/yt/docker/local/run_local_cluster.sh > run_local_cluster.sh | |
chmod u+x run_local_cluster.sh | |
./run_local_cluster.sh --stop | |
./run_local_cluster.sh --ui-skip-pull true --ui-version local --ui-app-installation e2e --docker-hostname `hostname` --fqdn localhost --ui-network bridge | |
sleep 10 | |
e2e-local-as-remote: | |
name: E2E for 'Local as remote' | |
runs-on: ${{ needs.start-vm.outputs.label }} | |
needs: | |
- start-vm | |
- e2e-run-for-local-as-remote | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v2 | |
with: | |
fetch-depth: 0 | |
- name: Setup Node | |
uses: actions/setup-node@v2 | |
with: | |
node-version: "18.x" | |
cache: "npm" | |
- name: npm ci | |
run: | | |
cd packages/ui/tests | |
npm ci | |
- name: Tests for 'Local as remote' | |
run: | | |
cd packages/ui | |
YT_PROXY=`hostname`:8000 npm run e2e:localmode:init | |
npm run e2e:localmode:remote | |
stop-vm: | |
name: Stop VM | |
needs: | |
- start-vm | |
- e2e-local-as-remote | |
runs-on: ubuntu-latest | |
if: ${{ always() }} | |
steps: | |
- name: Stop YC runner | |
uses: yc-actions/yc-github-runner@v1 | |
with: | |
mode: stop | |
yc-sa-json-credentials: ${{ secrets.YC_SA_JSON_CREDENTIALS }} | |
github-token: ${{ secrets.GH_PERSONAL_ACCESS_TOKEN }} | |
label: ${{ needs.start-vm.outputs.label }} | |
instance-id: ${{ needs.start-vm.outputs.instance-id }} |