Skip to content

Merge DataMapper

Merge DataMapper #4253

Workflow file for this run

name: πŸ—οΈ E2E Tests (Cypress)
on:
push:
branches:
- main
pull_request:
types: [opened, synchronize, reopened]
jobs:
install:
runs-on: ubuntu-latest
container:
image: cypress/browsers:node-20.13.1-chrome-125.0.6422.60-1-ff-126.0-edge-125.0.2535.51-1
options: --user 1001
steps:
- name: πŸ‘·β€β™€οΈ Checkout
uses: actions/checkout@v4
- uses: actions/cache@v4
with:
path: |
**/node_modules
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-yarn-
- uses: actions/cache@v4
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17'
cache: 'maven'
# Install dependencies
- run: yarn install --immutable
# Build packages excluding @kaoto/camel-catalog since it was build during installing dependencies
- name: Build packages
run: yarn workspaces foreach --verbose --all --topological-dev --exclude @kaoto/camel-catalog --exclude @kaoto/xml-schema-ts run build
# Build lib
- name: Build @kaoto/kaoto package in lib mode
run: yarn workspace @kaoto/kaoto run build:lib
- name: πŸ’Ύ Save build folder
uses: actions/upload-artifact@v4
with:
name: ui-dist
if-no-files-found: error
path: packages/ui/dist
- name: πŸ’Ύ Save catalog build folder
uses: actions/upload-artifact@v4
with:
name: catalog-dist
if-no-files-found: error
path: packages/catalog-generator/dist/camel-catalog
test-on-firefox:
needs: install
runs-on: ubuntu-latest
container:
image: cypress/browsers:node-20.13.1-chrome-125.0.6422.60-1-ff-126.0-edge-125.0.2535.51-1
options: --user 1001
steps:
- name: πŸ‘·β€β™€οΈ Checkout
uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17'
cache: 'maven'
- name: πŸ—„οΈ Download the UI build folder
uses: actions/download-artifact@v4
with:
name: ui-dist
path: packages/ui/dist
- name: πŸ—„οΈ Download the catalog build folder
uses: actions/download-artifact@v4
with:
name: catalog-dist
path: packages/camel-catalog/dist
- name: πŸ”¨ Cypress run
uses: cypress-io/[email protected]
with:
browser: firefox
# we have already installed all dependencies above
# install: false
start: yarn workspace @kaoto/kaoto run preview --host
config: baseUrl=http://localhost:4173
working-directory: packages/ui-tests
wait-on: 'http://127.0.0.1:4173'
wait-on-timeout: 120
env:
CYPRESS_PROJECT_ID: ${{ secrets.CYPRESS_PROJECT_ID }}
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: πŸ’Ύ Save videos
if: failure()
uses: actions/upload-artifact@v4
with:
name: videos-firefox
path: packages/ui-tests/cypress/videos
- name: πŸ’Ύ Save screenshots
if: failure()
uses: actions/upload-artifact@v4
with:
name: screenshots-firefox
path: packages/ui-tests/cypress/screenshots
test-on-chrome:
needs: install
runs-on: ubuntu-latest
container:
image: cypress/browsers:node-20.13.1-chrome-125.0.6422.60-1-ff-126.0-edge-125.0.2535.51-1
options: --user 1001
steps:
- name: πŸ‘·β€β™€οΈ Checkout
uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17'
cache: 'maven'
- name: πŸ—„οΈ Download the UI build folder
uses: actions/download-artifact@v4
with:
name: ui-dist
path: packages/ui/dist
- name: πŸ—„οΈ Download the catalog build folder
uses: actions/download-artifact@v4
with:
name: catalog-dist
path: packages/camel-catalog/dist
- name: πŸ”¨ Cypress run
uses: cypress-io/[email protected]
with:
browser: chrome
# we have already installed all dependencies above
# install: false
start: yarn workspace @kaoto/kaoto run preview --host
config: baseUrl=http://localhost:4173
working-directory: packages/ui-tests
wait-on: 'http://127.0.0.1:4173'
wait-on-timeout: 120
env:
CYPRESS_PROJECT_ID: ${{ secrets.CYPRESS_PROJECT_ID }}
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: πŸ’Ύ Save videos
if: failure()
uses: actions/upload-artifact@v4
with:
name: videos-chrome
path: packages/ui-tests/cypress/videos
- name: πŸ’Ύ Save screenshots
if: failure()
uses: actions/upload-artifact@v4
with:
name: screenshots-chrome
path: packages/ui-tests/cypress/screenshots
test-on-edge:
needs: install
runs-on: ubuntu-latest
container:
image: cypress/browsers:node-20.13.1-chrome-125.0.6422.60-1-ff-126.0-edge-125.0.2535.51-1
options: --user 1001
steps:
- name: πŸ‘·β€β™€οΈ Checkout
uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17'
cache: 'maven'
- name: πŸ—„οΈ Download the UI build folder
uses: actions/download-artifact@v4
with:
name: ui-dist
path: packages/ui/dist
- name: πŸ—„οΈ Download the catalog build folder
uses: actions/download-artifact@v4
with:
name: catalog-dist
path: packages/camel-catalog/dist
- name: πŸ”¨ Cypress run
uses: cypress-io/[email protected]
with:
browser: edge
# we have already installed all dependencies above
# install: false
start: yarn workspace @kaoto/kaoto run preview --host
config: baseUrl=http://localhost:4173
working-directory: packages/ui-tests
wait-on: 'http://127.0.0.1:4173'
wait-on-timeout: 120
env:
CYPRESS_PROJECT_ID: ${{ secrets.CYPRESS_PROJECT_ID }}
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: πŸ’Ύ Save videos
if: failure()
uses: actions/upload-artifact@v4
with:
name: videos-edge
path: packages/ui-tests/cypress/videos
- name: πŸ’Ύ Save screenshots
if: failure()
uses: actions/upload-artifact@v4
with:
name: screenshots-edge
path: packages/ui-tests/cypress/screenshots