Skip to content

fix(deps): update dependency @datum-cloud/datum-ui to v1 #128

fix(deps): update dependency @datum-cloud/datum-ui to v1

fix(deps): update dependency @datum-cloud/datum-ui to v1 #128

Workflow file for this run

name: CI
on:
pull_request:
push:
branches: [ main ]
paths-ignore:
- "docs/**"
- "README.md"
- "agents-datum.md"
release:
types: [ "published" ]
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
BUN_CACHE: ~/.bun/install/cache
jobs:
# ─── Install ────────────────────────────────────────────────
install:
name: Install Dependencies
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: oven-sh/setup-bun@v2
with: { bun-version: latest }
- uses: actions/cache@v5
id: cache-deps
with:
path: |
${{ env.BUN_CACHE }}
**/node_modules
key: ${{ runner.os }}-deps-${{ hashFiles('**/bun.lock', '**/package.json') }}
- if: steps.cache-deps.outputs.cache-hit != 'true'
run: bun install --frozen-lockfile
# ─── Quality ────────────────────────────────────────────────
lint:
name: Lint & Format
needs: install
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: oven-sh/setup-bun@v2
- uses: actions/cache@v5
with:
path: |
${{ env.BUN_CACHE }}
**/node_modules
key: ${{ runner.os }}-deps-${{ hashFiles('**/bun.lock', '**/package.json') }}
- run: bun run lint && bun run format:check
typecheck:
name: Type Check
needs: install
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: oven-sh/setup-bun@v2
with: { bun-version: latest }
- uses: actions/cache@v5
with:
path: |
${{ env.BUN_CACHE }}
**/node_modules
key: ${{ runner.os }}-deps-${{ hashFiles('**/bun.lock', '**/package.json') }}
- run: bun run typecheck
build:
name: Build
needs: [ lint, typecheck ]
runs-on: ubuntu-latest
if: ${{ !failure() && !cancelled() }}
steps:
- uses: actions/checkout@v6
- uses: oven-sh/setup-bun@v2
with: { bun-version: latest }
- uses: actions/cache@v5
with:
path: |
${{ env.BUN_CACHE }}
**/node_modules
key: ${{ runner.os }}-deps-${{ hashFiles('**/bun.lock', '**/package.json') }}
- run: bun run build
# ─── Status Gate ────────────────────────────────────────────
status-check:
name: Final Status Check
needs: [ install, lint, typecheck, build ]
if: always()
runs-on: ubuntu-latest
steps:
- name: Check Workflow Status
run: |
if [[ "${{ contains(needs.*.result, 'failure') }}" == "true" ]]; then
echo "❌ One or more jobs failed"
exit 1
elif [[ "${{ contains(needs.*.result, 'cancelled') }}" == "true" ]]; then
echo "⚠️ One or more jobs were cancelled"
exit 1
else
echo "✅ All jobs passed"
fi
# ─── Publish (only after all checks pass) ───────────────────
publish-container-image:
name: Publish Container Image
needs: [ status-check ]
if: ${{ !failure() && !cancelled() }}
permissions:
id-token: write
contents: read
packages: write
attestations: write
uses: datum-cloud/actions/.github/workflows/publish-docker.yaml@v1.14.0
with:
image-name: agents-datum-net
secrets: inherit
publish-kustomize-bundles:
name: Publish Kustomize Bundles
needs: [ publish-container-image ]
if: ${{ !failure() && !cancelled() }}
permissions:
id-token: write
contents: read
packages: write
uses: datum-cloud/actions/.github/workflows/publish-kustomize-bundle.yaml@v1.14.0
with:
bundle-name: ghcr.io/datum-cloud/agents-datum-net-kustomize
bundle-path: config
image-overlays: config/base
image-name: ghcr.io/datum-cloud/agents-datum-net
secrets: inherit