Skip to content

chore(deps): bump @angular/compiler from 21.0.6 to 21.2.12 in /timeless-api/src/main/webui #182

chore(deps): bump @angular/compiler from 21.0.6 to 21.2.12 in /timeless-api/src/main/webui

chore(deps): bump @angular/compiler from 21.0.6 to 21.2.12 in /timeless-api/src/main/webui #182

Workflow file for this run

name: Timeless CI - Build & Publish
on:
push:
branches: [ "main" ]
paths:
- 'timeless-api/**'
- 'whatsapp/**'
- 'infrastructure/**'
pull_request:
branches: [ "main" ]
paths:
- 'timeless-api/**'
- 'whatsapp/**'
- 'infrastructure/**'
permissions:
contents: read
concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true
env:
PUBLISH: ${{ github.repository == 'mcruzdev/timeless' && github.event_name == 'push' && github.ref == 'refs/heads/main' }}
jobs:
detect-changes:
uses: ./.github/workflows/detect_changes.yml
timeless-api:
name: Build & Publish - Timeless API (Java)
needs: detect-changes
if: needs.detect-changes.outputs.api == 'true'
runs-on: ubuntu-latest
defaults:
run:
working-directory: timeless-api
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Setup JDK 21
uses: actions/setup-java@v4
with:
distribution: temurin
java-version: "21"
cache: maven
- name: Build API
run: mvn -B -ntp formatter:validate impsort:check package
- name: Setup Node.js 24
uses: actions/setup-node@v4
with:
node-version: "24"
cache: npm
cache-dependency-path: timeless-api/src/main/webui/package-lock.json
- name: Setup Chrome
id: chrome
uses: browser-actions/setup-chrome@v1
- name: Install Frontend Dependencies
working-directory: ./timeless-api/src/main/webui
run: npm ci
- name: Check code formatting with Prettier
working-directory: ./timeless-api/src/main/webui
run: npm run prettier:check
- name: Set up Podman
uses: gacts/install-podman@v1
if: env.PUBLISH == 'true'
id: podman
- name: Login to Quay.io
if: env.PUBLISH == 'true'
uses: docker/login-action@v3
with:
registry: quay.io
username: ${{ secrets.QUAY_USERNAME }}
password: ${{ secrets.QUAY_PASSWORD }}
- name: Create Docker image
if: env.PUBLISH == 'true'
run: docker build -f src/main/docker/Dockerfile.jvm -t quay.io/timeless/timeless-api:${GITHUB_SHA::7} .
- name: Push Docker image to Quay.io
if: env.PUBLISH == 'true'
run: docker push quay.io/timeless/timeless-api:${GITHUB_SHA::7}
whatsapp:
name: Build & Publish - WhatsApp Bot (Node.js)
needs: detect-changes
if: needs.detect-changes.outputs.whatsapp == 'true'
runs-on: ubuntu-latest
defaults:
run:
working-directory: whatsapp
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Setup Node.js 20
uses: actions/setup-node@v4
with:
node-version: "20"
cache: npm
cache-dependency-path: whatsapp/package-lock.json
- name: Install dependencies
run: npm ci
- name: Check code formatting with Prettier
run: npm run prettier:check
- name: Login to Quay.io
if: env.PUBLISH == 'true'
uses: docker/login-action@v3
with:
registry: quay.io
username: ${{ secrets.QUAY_USERNAME }}
password: ${{ secrets.QUAY_PASSWORD }}
- name: Create Docker image
if: env.PUBLISH == 'true'
run: docker build -f Dockerfile -t quay.io/timeless/whatsapp:${GITHUB_SHA::7} .
- name: Push Docker image to Quay.io
if: env.PUBLISH == 'true'
run: docker push quay.io/timeless/whatsapp:${GITHUB_SHA::7}