Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
154 changes: 77 additions & 77 deletions .github/workflows/build-apiserver.yaml
Original file line number Diff line number Diff line change
@@ -1,77 +1,77 @@
name: Build and Publish Docker Image

on:
push:
release:
types: ["published"]

jobs:
validate-kustomize:
uses: datum-cloud/actions/.github/workflows/validate-kustomize.yaml@v1.12.1

publish-container-image:
# No point in trying to build the container image if the deployment
# manifests are invalid.
needs:
- validate-kustomize
permissions:
id-token: write
contents: read
packages: write
attestations: write
uses: datum-cloud/actions/.github/workflows/publish-docker.yaml@v1.12.1
with:
image-name: activity
secrets: inherit

publish-ui-container-image:
# Build and publish the Activity UI container image
needs:
- validate-kustomize
permissions:
id-token: write
contents: read
packages: write
attestations: write
uses: datum-cloud/actions/.github/workflows/publish-docker.yaml@v1.12.1
with:
image-name: activity-ui
context: ui
dockerfile-path: ui/Dockerfile
secrets: inherit

publish-kustomize-bundles:
# Ensure the kustomize manifests are valid and the container is published
# before we publish the kustomize manifests. We expect publishing the
# kustomize manifests to result in new deployments going out.
needs:
- validate-kustomize
- publish-container-image
permissions:
id-token: write
contents: read
packages: write
uses: datum-cloud/actions/.github/workflows/publish-kustomize-bundle.yaml@v1.12.1
with:
bundle-name: ghcr.io/datum-cloud/activity-kustomize
bundle-path: config
image-overlays: config/base
image-name: ghcr.io/datum-cloud/activity
secrets: inherit

publish-ui-kustomize-bundle:
# Publish the UI kustomize bundle separately
needs:
- validate-kustomize
- publish-ui-container-image
permissions:
id-token: write
contents: read
packages: write
uses: datum-cloud/actions/.github/workflows/publish-kustomize-bundle.yaml@v1.12.1
with:
bundle-name: ghcr.io/datum-cloud/activity-ui-kustomize
bundle-path: config/components/ui
image-overlays: config/components/ui
image-name: ghcr.io/datum-cloud/activity-ui
secrets: inherit
name: Build and Publish Docker Image
on:
push:
release:
types: ["published"]
jobs:
validate-kustomize:
uses: datum-cloud/actions/.github/workflows/validate-kustomize.yaml@v1.12.1
publish-container-image:
# No point in trying to build the container image if the deployment
# manifests are invalid.
needs:
- validate-kustomize
permissions:
id-token: write
contents: read
packages: write
attestations: write
uses: datum-cloud/actions/.github/workflows/publish-docker.yaml@v1.12.1
with:
image-name: activity
secrets: inherit
publish-ui-container-image:
# Build and publish the Activity UI container image
needs:
- validate-kustomize
permissions:
id-token: write
contents: read
packages: write
attestations: write
uses: datum-cloud/actions/.github/workflows/publish-docker.yaml@v1.12.1
with:
image-name: activity-ui
context: ui
dockerfile-path: ui/Dockerfile
secrets: inherit
publish-kustomize-bundles:
# Ensure the kustomize manifests are valid and the container is published
# before we publish the kustomize manifests. We expect publishing the
# kustomize manifests to result in new deployments going out.
needs:
- validate-kustomize
- publish-container-image
permissions:
id-token: write
contents: read
packages: write
uses: datum-cloud/actions/.github/workflows/publish-kustomize-bundle.yaml@v1.12.1
with:
bundle-name: ghcr.io/datum-cloud/activity-kustomize
bundle-path: config
image-overlays: config/base
image-name: ghcr.io/datum-cloud/activity
secrets: inherit
publish-ui-kustomize-bundle:
# Publish the UI kustomize bundle separately
needs:
- validate-kustomize
- publish-ui-container-image
permissions:
id-token: write
contents: read
packages: write
uses: datum-cloud/actions/.github/workflows/publish-kustomize-bundle.yaml@v1.12.1
with:
bundle-name: ghcr.io/datum-cloud/activity-ui-kustomize
bundle-path: config/components/ui
image-overlays: config/components/ui
image-name: ghcr.io/datum-cloud/activity-ui
secrets: inherit
144 changes: 72 additions & 72 deletions .github/workflows/publish-ui-npm.yaml
Original file line number Diff line number Diff line change
@@ -1,72 +1,72 @@
name: Publish UI to NPM

on:
push:
branches:
- main
workflow_dispatch:
inputs:
bump-type:
description: "Version bump type"
type: choice
options: [patch, minor, major]
default: patch

jobs:
# ── Dev publish ──────────────────────────────────────────────────────────
# Every push to main publishes a pre-release dev build. Releases are
# triggered manually via workflow_dispatch when the team is ready to ship.
publish-dev:
name: Publish dev build
if: github.event_name == 'push'
uses: datum-cloud/actions/.github/workflows/publish-npm-package.yaml@v1.13.1
with:
package-name: "@datum-cloud/activity-ui"
package-path: ui
release-mode: dev
secrets: inherit

# ── Bump version ─────────────────────────────────────────────────────────
# Runs only on manual dispatch. Delegates to the shared bump-npm-version
# reusable workflow, which bumps package.json, commits, tags, and pushes.
# Downstream jobs read new-version from this job's outputs automatically.
bump-version:
name: Bump version
if: github.event_name == 'workflow_dispatch'
permissions:
contents: write
uses: datum-cloud/actions/.github/workflows/bump-npm-version.yaml@v1.13.1
with:
package-path: ui
package-name: "@datum-cloud/activity-ui"
bump-type: ${{ inputs.bump-type }}

# ── Publish release to npm ───────────────────────────────────────────────
# Runs after bump-version. package.json already has the bumped version.
publish-release:
name: Publish release
needs: bump-version
uses: datum-cloud/actions/.github/workflows/publish-npm-package.yaml@v1.13.1
with:
package-name: "@datum-cloud/activity-ui"
package-path: ui
release-mode: release
secrets: inherit

# ── Create GitHub Release ────────────────────────────────────────────────
create-release:
name: Create GitHub Release
needs: [bump-version, publish-release]
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Create GitHub Release
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
RELEASE_VERSION: ${{ needs.bump-version.outputs.new-version }}
run: |
gh release create "$RELEASE_VERSION" \
--title "@datum-cloud/activity-ui $RELEASE_VERSION" \
--generate-notes \
--repo ${{ github.repository }}
name: Publish UI to NPM
on:
push:
branches:
- main
workflow_dispatch:
inputs:
bump-type:
description: "Version bump type"
type: choice
options: [patch, minor, major]
default: patch
jobs:
# ── Dev publish ──────────────────────────────────────────────────────────
# Every push to main publishes a pre-release dev build. Releases are
# triggered manually via workflow_dispatch when the team is ready to ship.
publish-dev:
name: Publish dev build
if: github.event_name == 'push'
uses: datum-cloud/actions/.github/workflows/publish-npm-package.yaml@v1.13.1
with:
package-name: "@datum-cloud/activity-ui"
package-path: ui
release-mode: dev
secrets: inherit
# ── Bump version ─────────────────────────────────────────────────────────
# Runs only on manual dispatch. Delegates to the shared bump-npm-version
# reusable workflow, which bumps package.json, commits, tags, and pushes.
# Downstream jobs read new-version from this job's outputs automatically.
bump-version:
name: Bump version
if: github.event_name == 'workflow_dispatch'
permissions:
contents: write
uses: datum-cloud/actions/.github/workflows/bump-npm-version.yaml@v1.13.1
with:
package-path: ui
package-name: "@datum-cloud/activity-ui"
bump-type: ${{ inputs.bump-type }}
# ── Publish release to npm ───────────────────────────────────────────────
# Runs after bump-version. package.json already has the bumped version.
publish-release:
name: Publish release
needs: bump-version
uses: datum-cloud/actions/.github/workflows/publish-npm-package.yaml@v1.13.1
with:
package-name: "@datum-cloud/activity-ui"
package-path: ui
release-mode: release
secrets: inherit
# ── Create GitHub Release ────────────────────────────────────────────────
create-release:
name: Create GitHub Release
needs: [bump-version, publish-release]
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Create GitHub Release
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
RELEASE_VERSION: ${{ needs.bump-version.outputs.new-version }}
run: |
gh release create "$RELEASE_VERSION" \
--title "@datum-cloud/activity-ui $RELEASE_VERSION" \
--generate-notes \
--repo ${{ github.repository }}
Loading
Loading