Skip to content

fix(deps): update dependency org.apache.maven.plugin-tools:maven-plug… #5

fix(deps): update dependency org.apache.maven.plugin-tools:maven-plug…

fix(deps): update dependency org.apache.maven.plugin-tools:maven-plug… #5

Workflow file for this run

name: 🚀 Build and Deploy main
on:
push:
branches:
- main
workflow_dispatch:
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write
# Allow one concurrent deployment
concurrency:
group: "deploy-main"
cancel-in-progress: true
jobs:
build-distribution:
runs-on: ubuntu-latest
steps:
- name: "🛰️ Checkout source code"
uses: actions/checkout@v4
- name: "🛰️ Setup Node"
uses: actions/setup-node@v4
with:
node-version: "18.x"
registry-url: "https://registry.npmjs.org"
scope: "@kaoto-next"
cache: "yarn"
- name: "🛰️ Setup Java"
uses: actions/setup-java@v4
with:
distribution: "temurin"
java-version: "21"
- name: "🔧 Install dependencies"
run: yarn
# Build packages excluding @kaoto-next/camel-catalog since it was build during installing dependencies
- name: "🔧 Build packages"
run: |
yarn workspaces foreach --verbose --topological-dev --exclude @kaoto-next/camel-catalog run build
- name: "🔧 Tar UI Dist"
shell: bash
run: |
tar -czf ${{ runner.temp }}/kaoto-ui.tgz -C packages/ui/dist .
ls -lh ${{ runner.temp }}/kaoto-ui.tgz
- name: "🔧 Persist UI Dist"
uses: actions/upload-artifact@v3
with:
name: "kaoto-ui-${{ github.run_id }}"
path: "${{ runner.temp }}/kaoto-ui.tgz"
retention-days: 1
deploy-pages:
runs-on: ubuntu-latest
needs:
- build-distribution
steps:
- name: "🛰️ Checkout source code"
uses: actions/checkout@v4
- name: "🛰️ Setup Pages"
uses: actions/configure-pages@v4
- name: "🛰️ Download UI Dist"
uses: actions/download-artifact@v3
with:
name: kaoto-ui-${{ github.run_id }}
path: "${{ runner.temp }}"
- name: "🛰️ Extract UI Dist"
shell: bash
run: |
mkdir -p packages/ui/dist
tar -xzf "${{ runner.temp }}/kaoto-ui.tgz" -C packages/ui/dist
- name: "📤 Upload artifact @kaoto-next/ui web application"
uses: actions/upload-pages-artifact@v3
with:
path: "packages/ui/dist"
- name: "🚀 Deploy to GitHub Pages"
id: deployment
uses: actions/deploy-pages@v4
deploy-images:
runs-on: ubuntu-latest
needs:
- build-distribution
steps:
- name: "🛰️ Checkout source code"
uses: actions/checkout@v4
- name: "🛰️ Download UI Dist"
uses: actions/download-artifact@v3
with:
name: kaoto-ui-${{ github.run_id }}
path: "${{ runner.temp }}"
- name: "🛰️ Extract UI Dist"
shell: bash
run: |
mkdir -p packages/ui/dist
tar -xzf "${{ runner.temp }}/kaoto-ui.tgz" -C packages/ui/dist
- name: "🛰️ Login to Container Registry"
uses: docker/login-action@v2
with:
registry: quay.io
username: ${{ secrets.QUAY_USERNAME }}
password: ${{ secrets.QUAY_PASSWORD }}
- name: "🔧 Build Container Image"
shell: bash
# TODO: the container image name should be configurable via vars/secrets
run: |
docker build -t "quay.io/kaotoio/kaoto-app:main" .
- name: "📤 Upload Container Image"
shell: bash
run: |
docker push quay.io/kaotoio/kaoto-app:main