4969 // Fix resources with revision dont open in studios #3371
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: Pre-merge Review | |
on: [pull_request] | |
jobs: | |
cache: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Cache dependencies | |
id: cache-node-modules | |
uses: actions/cache@v3 | |
with: | |
path: | | |
node_modules | |
key: ${{ runner.os }}-modules-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-modules- | |
- name: Setup Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20.10.0 | |
- name: Install Dependencies | |
if: steps.cache-node-modules.outputs.cache-hit != 'true' | |
run: yarn install --frozen-lockfile | |
prettify: | |
runs-on: ubuntu-latest | |
needs: [cache] | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Cache dependencies | |
id: cache-node-modules | |
uses: actions/cache@v3 | |
with: | |
path: | | |
node_modules | |
key: ${{ runner.os }}-modules-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-modules- | |
- name: Setup Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20.10.0 | |
- name: Install Dependencies | |
if: steps.cache-node-modules.outputs.cache-hit != 'true' | |
run: yarn install --frozen-lockfile | |
- name: Run styling 💅 | |
run: yarn style | |
lint: | |
runs-on: ubuntu-latest | |
needs: [cache] | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Cache dependencies | |
id: cache-node-modules | |
uses: actions/cache@v3 | |
with: | |
path: | | |
node_modules | |
key: ${{ runner.os }}-modules-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-modules- | |
- name: Setup Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20.10.0 | |
- name: Install Dependencies | |
if: steps.cache-node-modules.outputs.cache-hit != 'true' | |
run: yarn install --frozen-lockfile | |
- name: Run linting ✨ | |
run: yarn lint | |
test: | |
runs-on: ubuntu-latest | |
needs: [cache] | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Cache dependencies | |
id: cache-node-modules | |
uses: actions/cache@v3 | |
with: | |
path: | | |
node_modules | |
key: ${{ runner.os }}-modules-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-modules- | |
- name: Setup Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20.10.0 | |
- name: Install Dependencies | |
if: steps.cache-node-modules.outputs.cache-hit != 'true' | |
run: yarn install --frozen-lockfile | |
- name: Run unit tests 🛫🛬 | |
run: yarn test:ci:silent | |
build-e2e: | |
runs-on: ubuntu-latest | |
needs: [lint, prettify, test] | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v3 | |
- name: Cache dependencies | |
id: cache-node-modules | |
uses: actions/cache@v3 | |
with: | |
path: | | |
node_modules | |
key: ${{ runner.os }}-modules-${{ hashFiles('**/yarn.lock') }} | |
restore-keys: | | |
${{ runner.os }}-modules- | |
- name: Setup Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 20.10.0 | |
- name: Install Dependencies | |
if: steps.cache-node-modules.outputs.cache-hit != 'true' | |
run: yarn install --frozen-lockfile | |
- name: Build Docker image | |
run: docker build . --tag=nexus-web:fresh | |
- name: Start services | |
run: docker-compose -f ci/docker-compose.yml up -d && sleep 60 | |
- name: Copy nexus-web into Cypress container | |
run: docker cp ./. cypress:/e2e | |
- name: Run e2e tests | |
run: >- | |
echo | timeout --verbose 20m docker exec | |
-e 'DEBUG=cypress:launcher:browsers' | |
-t | |
cypress | |
cypress run | |
--headless | |
--config-file cypress.config.ts | |
--browser chrome | |
--record | |
--key ${{ secrets.CYPRESS_RECORD_KEY }} | |
- name: Cleanup Docker Containers | |
if: ${{ always() }} | |
run: docker-compose -f ci/docker-compose.yml down --rmi "local" --volumes |