Compare commits
9 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| ff32ec85c5 | |||
| 48c0351be3 | |||
| 5c7e4d45d4 | |||
| 8fe637e0e2 | |||
| f3d73c9160 | |||
| a6da45f6bf | |||
| 547d8ae314 | |||
| 1a874724c2 | |||
| 262a8be326 |
+15
-15
@@ -16,7 +16,7 @@ concurrency:
|
|||||||
jobs:
|
jobs:
|
||||||
check:
|
check:
|
||||||
name: Type-check & lint
|
name: Type-check & lint
|
||||||
runs-on: runners-farhoodlabs
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||||
@@ -43,7 +43,7 @@ jobs:
|
|||||||
name: Build & push worker image
|
name: Build & push worker image
|
||||||
needs: check
|
needs: check
|
||||||
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
|
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
|
||||||
runs-on: runners-farhoodlabs
|
runs-on: ubuntu-latest
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
packages: write
|
packages: write
|
||||||
@@ -55,12 +55,12 @@ jobs:
|
|||||||
- name: Set up Docker Buildx
|
- name: Set up Docker Buildx
|
||||||
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
|
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
|
||||||
|
|
||||||
- name: Log in to GHCR
|
- name: Log in to Gitea registry
|
||||||
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
|
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
|
||||||
with:
|
with:
|
||||||
registry: ghcr.io
|
registry: git.farh.net
|
||||||
username: ${{ github.actor }}
|
username: gitea-admin
|
||||||
password: ${{ secrets.GITHUB_TOKEN }}
|
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||||
|
|
||||||
- name: Build and push worker image
|
- name: Build and push worker image
|
||||||
uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294 # v7.0.0
|
uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294 # v7.0.0
|
||||||
@@ -68,14 +68,14 @@ jobs:
|
|||||||
context: .
|
context: .
|
||||||
push: true
|
push: true
|
||||||
tags: |
|
tags: |
|
||||||
ghcr.io/farhoodlabs/trebuchet:latest
|
git.farh.net/farhoodlabs/trebuchet:latest
|
||||||
ghcr.io/farhoodlabs/trebuchet:sha-${{ github.sha }}
|
git.farh.net/farhoodlabs/trebuchet:sha-${{ github.sha }}
|
||||||
|
|
||||||
build-api:
|
build-api:
|
||||||
name: Build & push API image
|
name: Build & push API image
|
||||||
needs: check
|
needs: check
|
||||||
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
|
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
|
||||||
runs-on: runners-farhoodlabs
|
runs-on: ubuntu-latest
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
packages: write
|
packages: write
|
||||||
@@ -87,12 +87,12 @@ jobs:
|
|||||||
- name: Set up Docker Buildx
|
- name: Set up Docker Buildx
|
||||||
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
|
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
|
||||||
|
|
||||||
- name: Log in to GHCR
|
- name: Log in to Gitea registry
|
||||||
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
|
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
|
||||||
with:
|
with:
|
||||||
registry: ghcr.io
|
registry: git.farh.net
|
||||||
username: ${{ github.actor }}
|
username: gitea-admin
|
||||||
password: ${{ secrets.GITHUB_TOKEN }}
|
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||||
|
|
||||||
- name: Build and push API image
|
- name: Build and push API image
|
||||||
uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294 # v7.0.0
|
uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294 # v7.0.0
|
||||||
@@ -102,5 +102,5 @@ jobs:
|
|||||||
push: true
|
push: true
|
||||||
no-cache: true
|
no-cache: true
|
||||||
tags: |
|
tags: |
|
||||||
ghcr.io/farhoodlabs/trebuchet-api:latest
|
git.farh.net/farhoodlabs/trebuchet-api:latest
|
||||||
ghcr.io/farhoodlabs/trebuchet-api:sha-${{ github.sha }}
|
git.farh.net/farhoodlabs/trebuchet-api:sha-${{ github.sha }}
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ on:
|
|||||||
push:
|
push:
|
||||||
branches: [main]
|
branches: [main]
|
||||||
paths:
|
paths:
|
||||||
- 'charts/trebuchet/**'
|
- 'charts/hightower/**'
|
||||||
|
|
||||||
permissions:
|
permissions:
|
||||||
contents: write
|
contents: write
|
||||||
@@ -23,19 +23,31 @@ jobs:
|
|||||||
uses: azure/setup-helm@b9e51907a09c216f16ebe8536097933489208112 # v4.3.0
|
uses: azure/setup-helm@b9e51907a09c216f16ebe8536097933489208112 # v4.3.0
|
||||||
|
|
||||||
- name: Lint chart
|
- name: Lint chart
|
||||||
run: helm lint charts/trebuchet
|
run: helm lint charts/hightower
|
||||||
|
|
||||||
- name: Package chart
|
- name: Package chart
|
||||||
run: |
|
run: |
|
||||||
mkdir -p .helm-packages
|
mkdir -p .helm-packages
|
||||||
helm package charts/trebuchet -d .helm-packages
|
helm package charts/hightower -d .helm-packages
|
||||||
|
|
||||||
- name: Upload chart to Gitea releases
|
- name: Checkout gh-pages
|
||||||
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||||
|
with:
|
||||||
|
ref: gh-pages
|
||||||
|
path: gh-pages
|
||||||
|
fetch-depth: 0
|
||||||
|
|
||||||
|
- name: Update Helm repo index
|
||||||
run: |
|
run: |
|
||||||
CHART_FILE=$(ls .helm-packages/*.tgz | head -1)
|
cp .helm-packages/*.tgz gh-pages/
|
||||||
CHART_NAME=$(basename "$CHART_FILE")
|
helm repo index gh-pages --url https://farhoodlabs.github.io/hightower
|
||||||
echo "Chart packaged: $CHART_NAME"
|
|
||||||
echo "Chart is available in the CI artifacts at .helm-packages/$CHART_NAME"
|
- name: Push to gh-pages
|
||||||
echo "To use this chart, either:"
|
run: |
|
||||||
echo " - Download from CI artifacts"
|
cd gh-pages
|
||||||
echo " - Publish to a Helm registry (infrastructure repo or Gitea package registry)"
|
git config user.name "github-actions[bot]"
|
||||||
|
git config user.email "github-actions[bot]@users.noreply.github.com"
|
||||||
|
git add .
|
||||||
|
git diff --staged --quiet && echo "No changes to commit" && exit 0
|
||||||
|
git commit -m "Release Helm chart $(ls *.tgz | head -1)"
|
||||||
|
git push
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ concurrency:
|
|||||||
jobs:
|
jobs:
|
||||||
preflight:
|
preflight:
|
||||||
name: Preflight
|
name: Preflight
|
||||||
runs-on: runners-farhoodlabs
|
runs-on: ubuntu-latest
|
||||||
outputs:
|
outputs:
|
||||||
version: ${{ steps.version.outputs.version }}
|
version: ${{ steps.version.outputs.version }}
|
||||||
|
|
||||||
@@ -35,7 +35,6 @@ jobs:
|
|||||||
if [[ -z "$LATEST" ]]; then
|
if [[ -z "$LATEST" ]]; then
|
||||||
echo "version=1.0.0-beta.1" >> "$GITHUB_OUTPUT"
|
echo "version=1.0.0-beta.1" >> "$GITHUB_OUTPUT"
|
||||||
else
|
else
|
||||||
# Extract N from 1.0.0-beta.N and increment
|
|
||||||
N=$(echo "$LATEST" | grep -oE 'beta\.([0-9]+)' | grep -oE '[0-9]+')
|
N=$(echo "$LATEST" | grep -oE 'beta\.([0-9]+)' | grep -oE '[0-9]+')
|
||||||
NEXT=$((N + 1))
|
NEXT=$((N + 1))
|
||||||
echo "version=1.0.0-beta.$NEXT" >> "$GITHUB_OUTPUT"
|
echo "version=1.0.0-beta.$NEXT" >> "$GITHUB_OUTPUT"
|
||||||
@@ -47,9 +46,10 @@ jobs:
|
|||||||
build-docker:
|
build-docker:
|
||||||
name: Build Docker (worker)
|
name: Build Docker (worker)
|
||||||
needs: preflight
|
needs: preflight
|
||||||
runs-on: runners-farhoodlabs
|
runs-on: ubuntu-latest
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
|
packages: write
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
@@ -58,11 +58,12 @@ jobs:
|
|||||||
- name: Set up Docker Buildx
|
- name: Set up Docker Buildx
|
||||||
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
|
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
|
||||||
|
|
||||||
- name: Log in to Docker Hub
|
- name: Log in to Gitea registry
|
||||||
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
|
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
|
||||||
with:
|
with:
|
||||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
registry: git.farh.net
|
||||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
username: gitea-admin
|
||||||
|
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||||
|
|
||||||
- name: Build and push worker image
|
- name: Build and push worker image
|
||||||
uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294 # v7.0.0
|
uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294 # v7.0.0
|
||||||
@@ -71,14 +72,15 @@ jobs:
|
|||||||
push: true
|
push: true
|
||||||
provenance: mode=max
|
provenance: mode=max
|
||||||
sbom: true
|
sbom: true
|
||||||
tags: farhoodlabs/trebuchet:${{ needs.preflight.outputs.version }}
|
tags: git.farh.net/farhoodlabs/trebuchet:${{ needs.preflight.outputs.version }}
|
||||||
|
|
||||||
build-docker-api:
|
build-docker-api:
|
||||||
name: Build Docker (API)
|
name: Build Docker (API)
|
||||||
needs: preflight
|
needs: preflight
|
||||||
runs-on: runners-farhoodlabs
|
runs-on: ubuntu-latest
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
|
packages: write
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
@@ -87,11 +89,12 @@ jobs:
|
|||||||
- name: Set up Docker Buildx
|
- name: Set up Docker Buildx
|
||||||
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
|
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
|
||||||
|
|
||||||
- name: Log in to Docker Hub
|
- name: Log in to Gitea registry
|
||||||
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
|
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
|
||||||
with:
|
with:
|
||||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
registry: git.farh.net
|
||||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
username: gitea-admin
|
||||||
|
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||||
|
|
||||||
- name: Build and push API image
|
- name: Build and push API image
|
||||||
uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294 # v7.0.0
|
uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294 # v7.0.0
|
||||||
@@ -101,15 +104,15 @@ jobs:
|
|||||||
push: true
|
push: true
|
||||||
provenance: mode=max
|
provenance: mode=max
|
||||||
sbom: true
|
sbom: true
|
||||||
tags: farhoodlabs/trebuchet-api:${{ needs.preflight.outputs.version }}
|
tags: git.farh.net/farhoodlabs/trebuchet-api:${{ needs.preflight.outputs.version }}
|
||||||
|
|
||||||
sign-docker:
|
sign-docker:
|
||||||
name: Sign Docker images
|
name: Sign Docker images
|
||||||
needs: [preflight, build-docker, build-docker-api]
|
needs: [preflight, build-docker, build-docker-api]
|
||||||
runs-on: runners-farhoodlabs
|
runs-on: ubuntu-latest
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
id-token: write
|
packages: write
|
||||||
outputs:
|
outputs:
|
||||||
worker_digest: ${{ steps.inspect-worker.outputs.digest }}
|
worker_digest: ${{ steps.inspect-worker.outputs.digest }}
|
||||||
api_digest: ${{ steps.inspect-api.outputs.digest }}
|
api_digest: ${{ steps.inspect-api.outputs.digest }}
|
||||||
@@ -118,57 +121,63 @@ jobs:
|
|||||||
- name: Set up Docker Buildx
|
- name: Set up Docker Buildx
|
||||||
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
|
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
|
||||||
|
|
||||||
- name: Log in to Docker Hub
|
- name: Log in to Gitea registry
|
||||||
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
|
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
|
||||||
with:
|
with:
|
||||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
registry: git.farh.net
|
||||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
username: gitea-admin
|
||||||
|
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||||
|
|
||||||
- name: Inspect worker image
|
- name: Inspect worker image
|
||||||
id: inspect-worker
|
id: inspect-worker
|
||||||
run: |
|
run: |
|
||||||
docker buildx imagetools inspect "farhoodlabs/trebuchet:${{ needs.preflight.outputs.version }}"
|
docker buildx imagetools inspect "git.farh.net/farhoodlabs/trebuchet:${{ needs.preflight.outputs.version }}"
|
||||||
DIGEST="sha256:$(docker buildx imagetools inspect --raw "farhoodlabs/trebuchet:${{ needs.preflight.outputs.version }}" | sha256sum | cut -d' ' -f1)"
|
DIGEST="sha256:$(docker buildx imagetools inspect --raw "git.farh.net/farhoodlabs/trebuchet:${{ needs.preflight.outputs.version }}" | sha256sum | cut -d' ' -f1)"
|
||||||
echo "digest=$DIGEST" >> "$GITHUB_OUTPUT"
|
echo "digest=$DIGEST" >> "$GITHUB_OUTPUT"
|
||||||
|
|
||||||
- name: Inspect API image
|
- name: Inspect API image
|
||||||
id: inspect-api
|
id: inspect-api
|
||||||
run: |
|
run: |
|
||||||
docker buildx imagetools inspect "farhoodlabs/trebuchet-api:${{ needs.preflight.outputs.version }}"
|
docker buildx imagetools inspect "git.farh.net/farhoodlabs/trebuchet-api:${{ needs.preflight.outputs.version }}"
|
||||||
DIGEST="sha256:$(docker buildx imagetools inspect --raw "farhoodlabs/trebuchet-api:${{ needs.preflight.outputs.version }}" | sha256sum | cut -d' ' -f1)"
|
DIGEST="sha256:$(docker buildx imagetools inspect --raw "git.farh.net/farhoodlabs/trebuchet-api:${{ needs.preflight.outputs.version }}" | sha256sum | cut -d' ' -f1)"
|
||||||
echo "digest=$DIGEST" >> "$GITHUB_OUTPUT"
|
echo "digest=$DIGEST" >> "$GITHUB_OUTPUT"
|
||||||
|
|
||||||
- name: Install cosign
|
- name: Install cosign
|
||||||
uses: sigstore/cosign-installer@ba7bc0a3fef59531c69a25acd34668d6d3fe6f22 # v4.1.0
|
uses: sigstore/cosign-installer@ba7bc0a3fef59531c69a25acd34668d6d3fe6f22 # v4.1.0
|
||||||
|
|
||||||
- name: Sign worker image
|
- name: Sign worker image
|
||||||
run: cosign sign --yes "farhoodlabs/trebuchet@${{ steps.inspect-worker.outputs.digest }}"
|
env:
|
||||||
|
COSIGN_PRIVATE_KEY: ${{ secrets.COSIGN_PRIVATE_KEY }}
|
||||||
|
COSIGN_PASSWORD: ${{ secrets.COSIGN_PASSWORD }}
|
||||||
|
run: cosign sign --yes --key env://COSIGN_PRIVATE_KEY "git.farh.net/farhoodlabs/trebuchet@${{ steps.inspect-worker.outputs.digest }}"
|
||||||
|
|
||||||
- name: Sign API image
|
- name: Sign API image
|
||||||
run: cosign sign --yes "farhoodlabs/trebuchet-api@${{ steps.inspect-api.outputs.digest }}"
|
env:
|
||||||
|
COSIGN_PRIVATE_KEY: ${{ secrets.COSIGN_PRIVATE_KEY }}
|
||||||
|
COSIGN_PASSWORD: ${{ secrets.COSIGN_PASSWORD }}
|
||||||
|
run: cosign sign --yes --key env://COSIGN_PRIVATE_KEY "git.farh.net/farhoodlabs/trebuchet-api@${{ steps.inspect-api.outputs.digest }}"
|
||||||
|
|
||||||
- name: Verify worker image signature
|
- name: Verify worker image signature
|
||||||
|
env:
|
||||||
|
COSIGN_PUBLIC_KEY: ${{ secrets.COSIGN_PUBLIC_KEY }}
|
||||||
run: |
|
run: |
|
||||||
sleep 10
|
sleep 10
|
||||||
cosign verify \
|
cosign verify --key env://COSIGN_PUBLIC_KEY \
|
||||||
--certificate-oidc-issuer https://token.actions.githubusercontent.com \
|
"git.farh.net/farhoodlabs/trebuchet@${{ steps.inspect-worker.outputs.digest }}"
|
||||||
--certificate-identity https://github.com/${{ github.repository }}/.github/workflows/release-beta.yml@${{ github.ref }} \
|
|
||||||
"farhoodlabs/trebuchet@${{ steps.inspect-worker.outputs.digest }}"
|
|
||||||
|
|
||||||
- name: Verify API image signature
|
- name: Verify API image signature
|
||||||
|
env:
|
||||||
|
COSIGN_PUBLIC_KEY: ${{ secrets.COSIGN_PUBLIC_KEY }}
|
||||||
run: |
|
run: |
|
||||||
cosign verify \
|
cosign verify --key env://COSIGN_PUBLIC_KEY \
|
||||||
--certificate-oidc-issuer https://token.actions.githubusercontent.com \
|
"git.farh.net/farhoodlabs/trebuchet-api@${{ steps.inspect-api.outputs.digest }}"
|
||||||
--certificate-identity https://github.com/${{ github.repository }}/.github/workflows/release-beta.yml@${{ github.ref }} \
|
|
||||||
"farhoodlabs/trebuchet-api@${{ steps.inspect-api.outputs.digest }}"
|
|
||||||
|
|
||||||
publish-npm:
|
publish-npm:
|
||||||
name: Publish npm (beta)
|
name: Publish npm (beta)
|
||||||
needs: [preflight, sign-docker]
|
needs: [preflight, sign-docker]
|
||||||
runs-on: runners-farhoodlabs
|
runs-on: ubuntu-latest
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
id-token: write
|
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ concurrency:
|
|||||||
jobs:
|
jobs:
|
||||||
preflight:
|
preflight:
|
||||||
name: Preflight
|
name: Preflight
|
||||||
runs-on: runners-farhoodlabs
|
runs-on: ubuntu-latest
|
||||||
permissions:
|
permissions:
|
||||||
contents: write
|
contents: write
|
||||||
outputs:
|
outputs:
|
||||||
@@ -42,11 +42,12 @@ jobs:
|
|||||||
id: probe
|
id: probe
|
||||||
shell: bash
|
shell: bash
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITEA_URL: https://git.farh.net
|
||||||
|
GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }}
|
||||||
run: |
|
run: |
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
npx semantic-release@25 --dry-run --no-ci 2>&1 | tee semantic-release.log
|
npx -p semantic-release@25 -p semantic-release-gitea semantic-release --dry-run --no-ci 2>&1 | tee semantic-release.log
|
||||||
|
|
||||||
if grep -qi "the next release version is" semantic-release.log; then
|
if grep -qi "the next release version is" semantic-release.log; then
|
||||||
echo "should_release=true" >> "$GITHUB_OUTPUT"
|
echo "should_release=true" >> "$GITHUB_OUTPUT"
|
||||||
@@ -60,9 +61,10 @@ jobs:
|
|||||||
name: Build Docker (worker)
|
name: Build Docker (worker)
|
||||||
needs: preflight
|
needs: preflight
|
||||||
if: needs.preflight.outputs.should_release == 'true'
|
if: needs.preflight.outputs.should_release == 'true'
|
||||||
runs-on: runners-farhoodlabs
|
runs-on: ubuntu-latest
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
|
packages: write
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
@@ -71,11 +73,12 @@ jobs:
|
|||||||
- name: Set up Docker Buildx
|
- name: Set up Docker Buildx
|
||||||
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
|
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
|
||||||
|
|
||||||
- name: Log in to Docker Hub
|
- name: Log in to Gitea registry
|
||||||
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
|
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
|
||||||
with:
|
with:
|
||||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
registry: git.farh.net
|
||||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
username: gitea-admin
|
||||||
|
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||||
|
|
||||||
- name: Build and push worker image
|
- name: Build and push worker image
|
||||||
uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294 # v7.0.0
|
uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294 # v7.0.0
|
||||||
@@ -85,16 +88,17 @@ jobs:
|
|||||||
provenance: mode=max
|
provenance: mode=max
|
||||||
sbom: true
|
sbom: true
|
||||||
tags: |
|
tags: |
|
||||||
farhoodlabs/trebuchet:${{ needs.preflight.outputs.version }}
|
git.farh.net/farhoodlabs/trebuchet:${{ needs.preflight.outputs.version }}
|
||||||
farhoodlabs/trebuchet:latest
|
git.farh.net/farhoodlabs/trebuchet:latest
|
||||||
|
|
||||||
build-docker-api:
|
build-docker-api:
|
||||||
name: Build Docker (API)
|
name: Build Docker (API)
|
||||||
needs: preflight
|
needs: preflight
|
||||||
if: needs.preflight.outputs.should_release == 'true'
|
if: needs.preflight.outputs.should_release == 'true'
|
||||||
runs-on: runners-farhoodlabs
|
runs-on: ubuntu-latest
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
|
packages: write
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
@@ -103,11 +107,12 @@ jobs:
|
|||||||
- name: Set up Docker Buildx
|
- name: Set up Docker Buildx
|
||||||
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
|
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
|
||||||
|
|
||||||
- name: Log in to Docker Hub
|
- name: Log in to Gitea registry
|
||||||
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
|
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
|
||||||
with:
|
with:
|
||||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
registry: git.farh.net
|
||||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
username: gitea-admin
|
||||||
|
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||||
|
|
||||||
- name: Build and push API image
|
- name: Build and push API image
|
||||||
uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294 # v7.0.0
|
uses: docker/build-push-action@d08e5c354a6adb9ed34480a06d141179aa583294 # v7.0.0
|
||||||
@@ -118,16 +123,16 @@ jobs:
|
|||||||
provenance: mode=max
|
provenance: mode=max
|
||||||
sbom: true
|
sbom: true
|
||||||
tags: |
|
tags: |
|
||||||
farhoodlabs/trebuchet-api:${{ needs.preflight.outputs.version }}
|
git.farh.net/farhoodlabs/trebuchet-api:${{ needs.preflight.outputs.version }}
|
||||||
farhoodlabs/trebuchet-api:latest
|
git.farh.net/farhoodlabs/trebuchet-api:latest
|
||||||
|
|
||||||
sign-docker:
|
sign-docker:
|
||||||
name: Sign Docker images
|
name: Sign Docker images
|
||||||
needs: [preflight, build-docker, build-docker-api]
|
needs: [preflight, build-docker, build-docker-api]
|
||||||
runs-on: runners-farhoodlabs
|
runs-on: ubuntu-latest
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
id-token: write
|
packages: write
|
||||||
outputs:
|
outputs:
|
||||||
worker_digest: ${{ steps.inspect-worker.outputs.digest }}
|
worker_digest: ${{ steps.inspect-worker.outputs.digest }}
|
||||||
api_digest: ${{ steps.inspect-api.outputs.digest }}
|
api_digest: ${{ steps.inspect-api.outputs.digest }}
|
||||||
@@ -136,57 +141,63 @@ jobs:
|
|||||||
- name: Set up Docker Buildx
|
- name: Set up Docker Buildx
|
||||||
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
|
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
|
||||||
|
|
||||||
- name: Log in to Docker Hub
|
- name: Log in to Gitea registry
|
||||||
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
|
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
|
||||||
with:
|
with:
|
||||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
registry: git.farh.net
|
||||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
username: gitea-admin
|
||||||
|
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||||
|
|
||||||
- name: Inspect worker image
|
- name: Inspect worker image
|
||||||
id: inspect-worker
|
id: inspect-worker
|
||||||
run: |
|
run: |
|
||||||
docker buildx imagetools inspect "farhoodlabs/trebuchet:${{ needs.preflight.outputs.version }}"
|
docker buildx imagetools inspect "git.farh.net/farhoodlabs/trebuchet:${{ needs.preflight.outputs.version }}"
|
||||||
DIGEST="sha256:$(docker buildx imagetools inspect --raw "farhoodlabs/trebuchet:${{ needs.preflight.outputs.version }}" | sha256sum | cut -d' ' -f1)"
|
DIGEST="sha256:$(docker buildx imagetools inspect --raw "git.farh.net/farhoodlabs/trebuchet:${{ needs.preflight.outputs.version }}" | sha256sum | cut -d' ' -f1)"
|
||||||
echo "digest=$DIGEST" >> "$GITHUB_OUTPUT"
|
echo "digest=$DIGEST" >> "$GITHUB_OUTPUT"
|
||||||
|
|
||||||
- name: Inspect API image
|
- name: Inspect API image
|
||||||
id: inspect-api
|
id: inspect-api
|
||||||
run: |
|
run: |
|
||||||
docker buildx imagetools inspect "farhoodlabs/trebuchet-api:${{ needs.preflight.outputs.version }}"
|
docker buildx imagetools inspect "git.farh.net/farhoodlabs/trebuchet-api:${{ needs.preflight.outputs.version }}"
|
||||||
DIGEST="sha256:$(docker buildx imagetools inspect --raw "farhoodlabs/trebuchet-api:${{ needs.preflight.outputs.version }}" | sha256sum | cut -d' ' -f1)"
|
DIGEST="sha256:$(docker buildx imagetools inspect --raw "git.farh.net/farhoodlabs/trebuchet-api:${{ needs.preflight.outputs.version }}" | sha256sum | cut -d' ' -f1)"
|
||||||
echo "digest=$DIGEST" >> "$GITHUB_OUTPUT"
|
echo "digest=$DIGEST" >> "$GITHUB_OUTPUT"
|
||||||
|
|
||||||
- name: Install cosign
|
- name: Install cosign
|
||||||
uses: sigstore/cosign-installer@ba7bc0a3fef59531c69a25acd34668d6d3fe6f22 # v4.1.0
|
uses: sigstore/cosign-installer@ba7bc0a3fef59531c69a25acd34668d6d3fe6f22 # v4.1.0
|
||||||
|
|
||||||
- name: Sign worker image
|
- name: Sign worker image
|
||||||
run: cosign sign --yes "farhoodlabs/trebuchet@${{ steps.inspect-worker.outputs.digest }}"
|
env:
|
||||||
|
COSIGN_PRIVATE_KEY: ${{ secrets.COSIGN_PRIVATE_KEY }}
|
||||||
|
COSIGN_PASSWORD: ${{ secrets.COSIGN_PASSWORD }}
|
||||||
|
run: cosign sign --yes --key env://COSIGN_PRIVATE_KEY "git.farh.net/farhoodlabs/trebuchet@${{ steps.inspect-worker.outputs.digest }}"
|
||||||
|
|
||||||
- name: Sign API image
|
- name: Sign API image
|
||||||
run: cosign sign --yes "farhoodlabs/trebuchet-api@${{ steps.inspect-api.outputs.digest }}"
|
env:
|
||||||
|
COSIGN_PRIVATE_KEY: ${{ secrets.COSIGN_PRIVATE_KEY }}
|
||||||
|
COSIGN_PASSWORD: ${{ secrets.COSIGN_PASSWORD }}
|
||||||
|
run: cosign sign --yes --key env://COSIGN_PRIVATE_KEY "git.farh.net/farhoodlabs/trebuchet-api@${{ steps.inspect-api.outputs.digest }}"
|
||||||
|
|
||||||
- name: Verify worker image signature
|
- name: Verify worker image signature
|
||||||
|
env:
|
||||||
|
COSIGN_PUBLIC_KEY: ${{ secrets.COSIGN_PUBLIC_KEY }}
|
||||||
run: |
|
run: |
|
||||||
sleep 10
|
sleep 10
|
||||||
cosign verify \
|
cosign verify --key env://COSIGN_PUBLIC_KEY \
|
||||||
--certificate-oidc-issuer https://token.actions.githubusercontent.com \
|
"git.farh.net/farhoodlabs/trebuchet@${{ steps.inspect-worker.outputs.digest }}"
|
||||||
--certificate-identity https://github.com/${{ github.repository }}/.github/workflows/release.yml@${{ github.ref }} \
|
|
||||||
"farhoodlabs/trebuchet@${{ steps.inspect-worker.outputs.digest }}"
|
|
||||||
|
|
||||||
- name: Verify API image signature
|
- name: Verify API image signature
|
||||||
|
env:
|
||||||
|
COSIGN_PUBLIC_KEY: ${{ secrets.COSIGN_PUBLIC_KEY }}
|
||||||
run: |
|
run: |
|
||||||
cosign verify \
|
cosign verify --key env://COSIGN_PUBLIC_KEY \
|
||||||
--certificate-oidc-issuer https://token.actions.githubusercontent.com \
|
"git.farh.net/farhoodlabs/trebuchet-api@${{ steps.inspect-api.outputs.digest }}"
|
||||||
--certificate-identity https://github.com/${{ github.repository }}/.github/workflows/release.yml@${{ github.ref }} \
|
|
||||||
"farhoodlabs/trebuchet-api@${{ steps.inspect-api.outputs.digest }}"
|
|
||||||
|
|
||||||
publish-npm:
|
publish-npm:
|
||||||
name: Publish npm
|
name: Publish npm
|
||||||
needs: [preflight, sign-docker]
|
needs: [preflight, sign-docker]
|
||||||
runs-on: runners-farhoodlabs
|
runs-on: ubuntu-latest
|
||||||
permissions:
|
permissions:
|
||||||
contents: read
|
contents: read
|
||||||
id-token: write
|
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
@@ -226,9 +237,9 @@ jobs:
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
release:
|
release:
|
||||||
name: Create GitHub release
|
name: Create Gitea release
|
||||||
needs: [preflight, publish-npm]
|
needs: [preflight, publish-npm]
|
||||||
runs-on: runners-farhoodlabs
|
runs-on: ubuntu-latest
|
||||||
permissions:
|
permissions:
|
||||||
contents: write
|
contents: write
|
||||||
|
|
||||||
@@ -250,7 +261,8 @@ jobs:
|
|||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: pnpm install --frozen-lockfile
|
run: pnpm install --frozen-lockfile
|
||||||
|
|
||||||
- name: Create GitHub release
|
- name: Create Gitea release
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
GITEA_URL: https://git.farh.net
|
||||||
run: npx semantic-release@25
|
GITEA_TOKEN: ${{ secrets.GITEA_TOKEN }}
|
||||||
|
run: npx -p semantic-release@25 -p semantic-release-gitea semantic-release
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ concurrency:
|
|||||||
jobs:
|
jobs:
|
||||||
rollback:
|
rollback:
|
||||||
name: Roll back npm beta dist-tag
|
name: Roll back npm beta dist-tag
|
||||||
runs-on: runners-farhoodlabs
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Validate target version
|
- name: Validate target version
|
||||||
id: target
|
id: target
|
||||||
|
|||||||
@@ -17,8 +17,8 @@ concurrency:
|
|||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
rollback:
|
rollback:
|
||||||
name: Roll back npm, Docker, and GitHub release latest
|
name: Roll back npm and Docker latest
|
||||||
runs-on: runners-farhoodlabs
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout tags
|
- name: Checkout tags
|
||||||
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
||||||
@@ -74,48 +74,44 @@ jobs:
|
|||||||
- name: Set up Docker Buildx
|
- name: Set up Docker Buildx
|
||||||
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
|
uses: docker/setup-buildx-action@4d04d5d9486b7bd6fa91e7baf45bbb4f8b9deedd # v4.0.0
|
||||||
|
|
||||||
- name: Log in to Docker Hub
|
- name: Log in to Gitea registry
|
||||||
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
|
uses: docker/login-action@b45d80f862d83dbcd57f89517bcf500b2ab88fb2 # v4.0.0
|
||||||
with:
|
with:
|
||||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
registry: git.farh.net
|
||||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
username: gitea-admin
|
||||||
|
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||||
|
|
||||||
- name: Verify Docker image tag exists
|
- name: Verify Docker image tag exists
|
||||||
run: docker buildx imagetools inspect "farhoodlabs/trebuchet:${{ steps.target.outputs.version }}"
|
run: docker buildx imagetools inspect "git.farh.net/farhoodlabs/trebuchet:${{ steps.target.outputs.version }}"
|
||||||
|
|
||||||
- name: Install cosign
|
- name: Install cosign
|
||||||
uses: sigstore/cosign-installer@ba7bc0a3fef59531c69a25acd34668d6d3fe6f22 # v4.1.0
|
uses: sigstore/cosign-installer@ba7bc0a3fef59531c69a25acd34668d6d3fe6f22 # v4.1.0
|
||||||
|
|
||||||
- name: Verify Docker image signature before rollback
|
- name: Verify Docker image signature before rollback
|
||||||
|
env:
|
||||||
|
COSIGN_PUBLIC_KEY: ${{ secrets.COSIGN_PUBLIC_KEY }}
|
||||||
run: |
|
run: |
|
||||||
cosign verify \
|
cosign verify --key env://COSIGN_PUBLIC_KEY \
|
||||||
--certificate-oidc-issuer https://token.actions.githubusercontent.com \
|
"git.farh.net/farhoodlabs/trebuchet:${{ steps.target.outputs.version }}"
|
||||||
--certificate-identity "https://github.com/${{ github.repository }}/.github/workflows/release.yml@refs/heads/main" \
|
|
||||||
"farhoodlabs/trebuchet:${{ steps.target.outputs.version }}"
|
|
||||||
|
|
||||||
- name: Move Docker latest
|
- name: Move Docker latest
|
||||||
run: |
|
run: |
|
||||||
docker buildx imagetools create \
|
docker buildx imagetools create \
|
||||||
--tag "farhoodlabs/trebuchet:latest" \
|
--tag "git.farh.net/farhoodlabs/trebuchet:latest" \
|
||||||
"farhoodlabs/trebuchet:${{ steps.target.outputs.version }}"
|
"git.farh.net/farhoodlabs/trebuchet:${{ steps.target.outputs.version }}"
|
||||||
|
|
||||||
- name: Move npm latest
|
- name: Move npm latest
|
||||||
env:
|
env:
|
||||||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||||
run: npm dist-tag add "@trebuchet/cli@${{ steps.target.outputs.version }}" latest
|
run: npm dist-tag add "@trebuchet/cli@${{ steps.target.outputs.version }}" latest
|
||||||
|
|
||||||
- name: Mark GitHub release as latest
|
|
||||||
env:
|
|
||||||
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
||||||
run: gh release edit "v${{ steps.target.outputs.version }}" --latest
|
|
||||||
|
|
||||||
- name: Show final npm dist-tags
|
- name: Show final npm dist-tags
|
||||||
env:
|
env:
|
||||||
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
||||||
run: npm dist-tag ls @trebuchet/cli
|
run: npm dist-tag ls @trebuchet/cli
|
||||||
|
|
||||||
- name: Verify Docker latest now points to target
|
- name: Verify Docker latest now points to target
|
||||||
run: docker buildx imagetools inspect "farhoodlabs/trebuchet:latest"
|
run: docker buildx imagetools inspect "git.farh.net/farhoodlabs/trebuchet:latest"
|
||||||
|
|
||||||
- name: Write summary
|
- name: Write summary
|
||||||
run: |
|
run: |
|
||||||
@@ -124,6 +120,9 @@ jobs:
|
|||||||
echo ""
|
echo ""
|
||||||
echo "- Target version: \`${{ steps.target.outputs.version }}\`"
|
echo "- Target version: \`${{ steps.target.outputs.version }}\`"
|
||||||
echo "- npm package: \`@trebuchet/cli\`"
|
echo "- npm package: \`@trebuchet/cli\`"
|
||||||
echo "- Docker image: \`farhoodlabs/trebuchet\`"
|
echo "- Docker image: \`git.farh.net/farhoodlabs/trebuchet\`"
|
||||||
echo "- GitHub release: \`v${{ steps.target.outputs.version }}\` marked as latest"
|
echo ""
|
||||||
|
echo "NOTE: Gitea determines the 'latest' release by date, not a flag."
|
||||||
|
echo "To re-mark \`v${{ steps.target.outputs.version }}\` as the latest"
|
||||||
|
echo "release on Gitea, edit the release in the UI to bump its date."
|
||||||
} >> "$GITHUB_STEP_SUMMARY"
|
} >> "$GITHUB_STEP_SUMMARY"
|
||||||
|
|||||||
@@ -5,3 +5,5 @@ credentials/
|
|||||||
dist/
|
dist/
|
||||||
repos/
|
repos/
|
||||||
.turbo/
|
.turbo/
|
||||||
|
cosign.key
|
||||||
|
cosign.pub
|
||||||
|
|||||||
+1
-8
@@ -9,13 +9,6 @@
|
|||||||
"npmPublish": false
|
"npmPublish": false
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
[
|
"semantic-release-gitea"
|
||||||
"@semantic-release/github",
|
|
||||||
{
|
|
||||||
"successCommentCondition": false,
|
|
||||||
"failCommentCondition": false,
|
|
||||||
"releasedLabels": false
|
|
||||||
}
|
|
||||||
]
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,27 @@
|
|||||||
|
apiVersion: v2
|
||||||
|
name: hightower
|
||||||
|
description: API-driven AI pentester built on Shannon, deployed as a service on Kubernetes
|
||||||
|
type: application
|
||||||
|
version: 0.1.1
|
||||||
|
appVersion: "1.0.0"
|
||||||
|
home: https://git.farh.net/farhoodlabs/trebuchet
|
||||||
|
sources:
|
||||||
|
- https://git.farh.net/farhoodlabs/trebuchet
|
||||||
|
maintainers:
|
||||||
|
- name: farhoodlabs
|
||||||
|
url: https://git.farh.net/farhoodlabs
|
||||||
|
keywords:
|
||||||
|
- security
|
||||||
|
- pentesting
|
||||||
|
- ai
|
||||||
|
- kubernetes
|
||||||
|
annotations:
|
||||||
|
artifacthub.io/license: AGPL-3.0
|
||||||
|
artifacthub.io/links: |
|
||||||
|
- name: source
|
||||||
|
url: https://git.farh.net/farhoodlabs/trebuchet
|
||||||
|
artifacthub.io/images: |
|
||||||
|
- name: worker
|
||||||
|
image: git.farh.net/farhoodlabs/trebuchet:latest
|
||||||
|
- name: api
|
||||||
|
image: git.farh.net/farhoodlabs/trebuchet-api:latest
|
||||||
@@ -22,9 +22,9 @@ Ensure the following secrets exist in the {{ .Release.Namespace }} namespace:
|
|||||||
|
|
||||||
== Services ==
|
== Services ==
|
||||||
|
|
||||||
API: {{ include "trebuchet.api.fullname" . }}:{{ .Values.api.port }}
|
API: {{ include "hightower.api.fullname" . }}:{{ .Values.api.port }}
|
||||||
Temporal: {{ include "trebuchet.temporal.serviceName" . }}:{{ .Values.temporal.ports.grpc }} (gRPC)
|
Temporal: {{ include "hightower.temporal.serviceName" . }}:{{ .Values.temporal.ports.grpc }} (gRPC)
|
||||||
{{ include "trebuchet.temporal.serviceName" . }}:{{ .Values.temporal.ports.webUi }} (Web UI)
|
{{ include "hightower.temporal.serviceName" . }}:{{ .Values.temporal.ports.webUi }} (Web UI)
|
||||||
{{- if .Values.router.enabled }}
|
{{- if .Values.router.enabled }}
|
||||||
Router: {{ include "trebuchet.router.fullname" . }}:{{ .Values.router.port }}
|
Router: {{ include "hightower.router.fullname" . }}:{{ .Values.router.port }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
@@ -1,14 +1,14 @@
|
|||||||
{{/*
|
{{/*
|
||||||
Chart name, truncated to 63 chars.
|
Chart name, truncated to 63 chars.
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "trebuchet.name" -}}
|
{{- define "hightower.name" -}}
|
||||||
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
Fully qualified app name, truncated to 63 chars.
|
Fully qualified app name, truncated to 63 chars.
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "trebuchet.fullname" -}}
|
{{- define "hightower.fullname" -}}
|
||||||
{{- if .Values.fullnameOverride }}
|
{{- if .Values.fullnameOverride }}
|
||||||
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
@@ -24,99 +24,99 @@ Fully qualified app name, truncated to 63 chars.
|
|||||||
{{/*
|
{{/*
|
||||||
Chart label value.
|
Chart label value.
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "trebuchet.chart" -}}
|
{{- define "hightower.chart" -}}
|
||||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
Common labels.
|
Common labels.
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "trebuchet.labels" -}}
|
{{- define "hightower.labels" -}}
|
||||||
helm.sh/chart: {{ include "trebuchet.chart" . }}
|
helm.sh/chart: {{ include "hightower.chart" . }}
|
||||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
API component name.
|
API component name.
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "trebuchet.api.fullname" -}}
|
{{- define "hightower.api.fullname" -}}
|
||||||
{{- printf "%s-api" (include "trebuchet.fullname" .) | trunc 63 | trimSuffix "-" }}
|
{{- printf "%s-api" (include "hightower.fullname" .) | trunc 63 | trimSuffix "-" }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
API selector labels.
|
API selector labels.
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "trebuchet.api.selectorLabels" -}}
|
{{- define "hightower.api.selectorLabels" -}}
|
||||||
app: {{ include "trebuchet.api.fullname" . }}
|
app: {{ include "hightower.api.fullname" . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
Temporal component name.
|
Temporal component name.
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "trebuchet.temporal.fullname" -}}
|
{{- define "hightower.temporal.fullname" -}}
|
||||||
{{- printf "%s-temporal" (include "trebuchet.fullname" .) | trunc 63 | trimSuffix "-" }}
|
{{- printf "%s-temporal" (include "hightower.fullname" .) | trunc 63 | trimSuffix "-" }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
Temporal service name (same as fullname).
|
Temporal service name (same as fullname).
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "trebuchet.temporal.serviceName" -}}
|
{{- define "hightower.temporal.serviceName" -}}
|
||||||
{{- include "trebuchet.temporal.fullname" . }}
|
{{- include "hightower.temporal.fullname" . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
Temporal selector labels.
|
Temporal selector labels.
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "trebuchet.temporal.selectorLabels" -}}
|
{{- define "hightower.temporal.selectorLabels" -}}
|
||||||
app: {{ include "trebuchet.temporal.fullname" . }}
|
app: {{ include "hightower.temporal.fullname" . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
Router component name.
|
Router component name.
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "trebuchet.router.fullname" -}}
|
{{- define "hightower.router.fullname" -}}
|
||||||
{{- printf "%s-router" (include "trebuchet.fullname" .) | trunc 63 | trimSuffix "-" }}
|
{{- printf "%s-router" (include "hightower.fullname" .) | trunc 63 | trimSuffix "-" }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
Router selector labels.
|
Router selector labels.
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "trebuchet.router.selectorLabels" -}}
|
{{- define "hightower.router.selectorLabels" -}}
|
||||||
app: {{ include "trebuchet.router.fullname" . }}
|
app: {{ include "hightower.router.fullname" . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
CNPG cluster name.
|
CNPG cluster name.
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "trebuchet.cnpg.fullname" -}}
|
{{- define "hightower.cnpg.fullname" -}}
|
||||||
{{- printf "%s-temporal-db" (include "trebuchet.fullname" .) | trunc 63 | trimSuffix "-" }}
|
{{- printf "%s-temporal-db" (include "hightower.fullname" .) | trunc 63 | trimSuffix "-" }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
CNPG read-write service name (CNPG auto-creates <cluster>-rw).
|
CNPG read-write service name (CNPG auto-creates <cluster>-rw).
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "trebuchet.cnpg.serviceName" -}}
|
{{- define "hightower.cnpg.serviceName" -}}
|
||||||
{{- printf "%s-rw" (include "trebuchet.cnpg.fullname" .) }}
|
{{- printf "%s-rw" (include "hightower.cnpg.fullname" .) }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
Service account name for the API.
|
Service account name for the API.
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "trebuchet.serviceAccountName" -}}
|
{{- define "hightower.serviceAccountName" -}}
|
||||||
{{- if .Values.api.serviceAccount.name }}
|
{{- if .Values.api.serviceAccount.name }}
|
||||||
{{- .Values.api.serviceAccount.name }}
|
{{- .Values.api.serviceAccount.name }}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
{{- include "trebuchet.api.fullname" . }}
|
{{- include "hightower.api.fullname" . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{/*
|
{{/*
|
||||||
Postgres seeds host — use override or default to CNPG service.
|
Postgres seeds host — use override or default to CNPG service.
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "trebuchet.temporal.postgresSeeds" -}}
|
{{- define "hightower.temporal.postgresSeeds" -}}
|
||||||
{{- if .Values.temporal.db.host }}
|
{{- if .Values.temporal.db.host }}
|
||||||
{{- .Values.temporal.db.host }}
|
{{- .Values.temporal.db.host }}
|
||||||
{{- else }}
|
{{- else }}
|
||||||
{{- include "trebuchet.cnpg.serviceName" . }}
|
{{- include "hightower.cnpg.serviceName" . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
+8
-8
@@ -1,21 +1,21 @@
|
|||||||
apiVersion: apps/v1
|
apiVersion: apps/v1
|
||||||
kind: Deployment
|
kind: Deployment
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "trebuchet.api.fullname" . }}
|
name: {{ include "hightower.api.fullname" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "trebuchet.labels" . | nindent 4 }}
|
{{- include "hightower.labels" . | nindent 4 }}
|
||||||
{{- include "trebuchet.api.selectorLabels" . | nindent 4 }}
|
{{- include "hightower.api.selectorLabels" . | nindent 4 }}
|
||||||
spec:
|
spec:
|
||||||
replicas: {{ .Values.api.replicaCount }}
|
replicas: {{ .Values.api.replicaCount }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
{{- include "trebuchet.api.selectorLabels" . | nindent 6 }}
|
{{- include "hightower.api.selectorLabels" . | nindent 6 }}
|
||||||
template:
|
template:
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
{{- include "trebuchet.api.selectorLabels" . | nindent 8 }}
|
{{- include "hightower.api.selectorLabels" . | nindent 8 }}
|
||||||
spec:
|
spec:
|
||||||
serviceAccountName: {{ include "trebuchet.serviceAccountName" . }}
|
serviceAccountName: {{ include "hightower.serviceAccountName" . }}
|
||||||
{{- with .Values.imagePullSecrets }}
|
{{- with .Values.imagePullSecrets }}
|
||||||
imagePullSecrets:
|
imagePullSecrets:
|
||||||
{{- toYaml . | nindent 8 }}
|
{{- toYaml . | nindent 8 }}
|
||||||
@@ -29,7 +29,7 @@ spec:
|
|||||||
name: http
|
name: http
|
||||||
env:
|
env:
|
||||||
- name: TEMPORAL_ADDRESS
|
- name: TEMPORAL_ADDRESS
|
||||||
value: "{{ include "trebuchet.temporal.serviceName" . }}:{{ .Values.temporal.ports.grpc }}"
|
value: "{{ include "hightower.temporal.serviceName" . }}:{{ .Values.temporal.ports.grpc }}"
|
||||||
- name: WORKER_IMAGE
|
- name: WORKER_IMAGE
|
||||||
value: {{ .Values.api.workerImage }}
|
value: {{ .Values.api.workerImage }}
|
||||||
- name: K8S_NAMESPACE
|
- name: K8S_NAMESPACE
|
||||||
@@ -59,4 +59,4 @@ spec:
|
|||||||
volumes:
|
volumes:
|
||||||
- name: workspaces
|
- name: workspaces
|
||||||
persistentVolumeClaim:
|
persistentVolumeClaim:
|
||||||
claimName: {{ include "trebuchet.fullname" . }}-workspaces
|
claimName: {{ include "hightower.fullname" . }}-workspaces
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
apiVersion: rbac.authorization.k8s.io/v1
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
kind: Role
|
kind: Role
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "trebuchet.api.fullname" . }}
|
name: {{ include "hightower.api.fullname" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "trebuchet.labels" . | nindent 4 }}
|
{{- include "hightower.labels" . | nindent 4 }}
|
||||||
rules:
|
rules:
|
||||||
- apiGroups: ["batch"]
|
- apiGroups: ["batch"]
|
||||||
resources: ["jobs"]
|
resources: ["jobs"]
|
||||||
+4
-4
@@ -1,14 +1,14 @@
|
|||||||
apiVersion: rbac.authorization.k8s.io/v1
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
kind: RoleBinding
|
kind: RoleBinding
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "trebuchet.api.fullname" . }}
|
name: {{ include "hightower.api.fullname" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "trebuchet.labels" . | nindent 4 }}
|
{{- include "hightower.labels" . | nindent 4 }}
|
||||||
subjects:
|
subjects:
|
||||||
- kind: ServiceAccount
|
- kind: ServiceAccount
|
||||||
name: {{ include "trebuchet.serviceAccountName" . }}
|
name: {{ include "hightower.serviceAccountName" . }}
|
||||||
namespace: {{ .Release.Namespace }}
|
namespace: {{ .Release.Namespace }}
|
||||||
roleRef:
|
roleRef:
|
||||||
kind: Role
|
kind: Role
|
||||||
name: {{ include "trebuchet.api.fullname" . }}
|
name: {{ include "hightower.api.fullname" . }}
|
||||||
apiGroup: rbac.authorization.k8s.io
|
apiGroup: rbac.authorization.k8s.io
|
||||||
+3
-3
@@ -1,12 +1,12 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: Service
|
kind: Service
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "trebuchet.api.fullname" . }}
|
name: {{ include "hightower.api.fullname" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "trebuchet.labels" . | nindent 4 }}
|
{{- include "hightower.labels" . | nindent 4 }}
|
||||||
spec:
|
spec:
|
||||||
selector:
|
selector:
|
||||||
{{- include "trebuchet.api.selectorLabels" . | nindent 4 }}
|
{{- include "hightower.api.selectorLabels" . | nindent 4 }}
|
||||||
ports:
|
ports:
|
||||||
- name: http
|
- name: http
|
||||||
port: {{ .Values.api.port }}
|
port: {{ .Values.api.port }}
|
||||||
+2
-2
@@ -2,7 +2,7 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: ServiceAccount
|
kind: ServiceAccount
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "trebuchet.serviceAccountName" . }}
|
name: {{ include "hightower.serviceAccountName" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "trebuchet.labels" . | nindent 4 }}
|
{{- include "hightower.labels" . | nindent 4 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
+2
-2
@@ -2,9 +2,9 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: ConfigMap
|
kind: ConfigMap
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "trebuchet.router.fullname" . }}-config
|
name: {{ include "hightower.router.fullname" . }}-config
|
||||||
labels:
|
labels:
|
||||||
{{- include "trebuchet.labels" . | nindent 4 }}
|
{{- include "hightower.labels" . | nindent 4 }}
|
||||||
data:
|
data:
|
||||||
router-config.json: {{ .Values.router.config | toJson | quote }}
|
router-config.json: {{ .Values.router.config | toJson | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
+6
-6
@@ -2,19 +2,19 @@
|
|||||||
apiVersion: apps/v1
|
apiVersion: apps/v1
|
||||||
kind: Deployment
|
kind: Deployment
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "trebuchet.router.fullname" . }}
|
name: {{ include "hightower.router.fullname" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "trebuchet.labels" . | nindent 4 }}
|
{{- include "hightower.labels" . | nindent 4 }}
|
||||||
{{- include "trebuchet.router.selectorLabels" . | nindent 4 }}
|
{{- include "hightower.router.selectorLabels" . | nindent 4 }}
|
||||||
spec:
|
spec:
|
||||||
replicas: {{ .Values.router.replicaCount }}
|
replicas: {{ .Values.router.replicaCount }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
{{- include "trebuchet.router.selectorLabels" . | nindent 6 }}
|
{{- include "hightower.router.selectorLabels" . | nindent 6 }}
|
||||||
template:
|
template:
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
{{- include "trebuchet.router.selectorLabels" . | nindent 8 }}
|
{{- include "hightower.router.selectorLabels" . | nindent 8 }}
|
||||||
spec:
|
spec:
|
||||||
{{- with .Values.imagePullSecrets }}
|
{{- with .Values.imagePullSecrets }}
|
||||||
imagePullSecrets:
|
imagePullSecrets:
|
||||||
@@ -62,5 +62,5 @@ spec:
|
|||||||
volumes:
|
volumes:
|
||||||
- name: config
|
- name: config
|
||||||
configMap:
|
configMap:
|
||||||
name: {{ include "trebuchet.router.fullname" . }}-config
|
name: {{ include "hightower.router.fullname" . }}-config
|
||||||
{{- end }}
|
{{- end }}
|
||||||
+3
-3
@@ -2,12 +2,12 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: Service
|
kind: Service
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "trebuchet.router.fullname" . }}
|
name: {{ include "hightower.router.fullname" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "trebuchet.labels" . | nindent 4 }}
|
{{- include "hightower.labels" . | nindent 4 }}
|
||||||
spec:
|
spec:
|
||||||
selector:
|
selector:
|
||||||
{{- include "trebuchet.router.selectorLabels" . | nindent 4 }}
|
{{- include "hightower.router.selectorLabels" . | nindent 4 }}
|
||||||
ports:
|
ports:
|
||||||
- port: {{ .Values.router.port }}
|
- port: {{ .Values.router.port }}
|
||||||
targetPort: {{ .Values.router.port }}
|
targetPort: {{ .Values.router.port }}
|
||||||
+2
-2
@@ -2,9 +2,9 @@
|
|||||||
apiVersion: postgresql.cnpg.io/v1
|
apiVersion: postgresql.cnpg.io/v1
|
||||||
kind: Cluster
|
kind: Cluster
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "trebuchet.cnpg.fullname" . }}
|
name: {{ include "hightower.cnpg.fullname" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "trebuchet.labels" . | nindent 4 }}
|
{{- include "hightower.labels" . | nindent 4 }}
|
||||||
spec:
|
spec:
|
||||||
instances: {{ .Values.cnpg.instances }}
|
instances: {{ .Values.cnpg.instances }}
|
||||||
storage:
|
storage:
|
||||||
+6
-6
@@ -1,19 +1,19 @@
|
|||||||
apiVersion: apps/v1
|
apiVersion: apps/v1
|
||||||
kind: Deployment
|
kind: Deployment
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "trebuchet.temporal.fullname" . }}
|
name: {{ include "hightower.temporal.fullname" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "trebuchet.labels" . | nindent 4 }}
|
{{- include "hightower.labels" . | nindent 4 }}
|
||||||
{{- include "trebuchet.temporal.selectorLabels" . | nindent 4 }}
|
{{- include "hightower.temporal.selectorLabels" . | nindent 4 }}
|
||||||
spec:
|
spec:
|
||||||
replicas: {{ .Values.temporal.replicaCount }}
|
replicas: {{ .Values.temporal.replicaCount }}
|
||||||
selector:
|
selector:
|
||||||
matchLabels:
|
matchLabels:
|
||||||
{{- include "trebuchet.temporal.selectorLabels" . | nindent 6 }}
|
{{- include "hightower.temporal.selectorLabels" . | nindent 6 }}
|
||||||
template:
|
template:
|
||||||
metadata:
|
metadata:
|
||||||
labels:
|
labels:
|
||||||
{{- include "trebuchet.temporal.selectorLabels" . | nindent 8 }}
|
{{- include "hightower.temporal.selectorLabels" . | nindent 8 }}
|
||||||
spec:
|
spec:
|
||||||
{{- with .Values.imagePullSecrets }}
|
{{- with .Values.imagePullSecrets }}
|
||||||
imagePullSecrets:
|
imagePullSecrets:
|
||||||
@@ -34,7 +34,7 @@ spec:
|
|||||||
- name: DB_PORT
|
- name: DB_PORT
|
||||||
value: {{ .Values.temporal.db.port | quote }}
|
value: {{ .Values.temporal.db.port | quote }}
|
||||||
- name: POSTGRES_SEEDS
|
- name: POSTGRES_SEEDS
|
||||||
value: {{ include "trebuchet.temporal.postgresSeeds" . }}
|
value: {{ include "hightower.temporal.postgresSeeds" . }}
|
||||||
- name: DBNAME
|
- name: DBNAME
|
||||||
value: {{ .Values.temporal.db.name }}
|
value: {{ .Values.temporal.db.name }}
|
||||||
- name: VISIBILITY_DBNAME
|
- name: VISIBILITY_DBNAME
|
||||||
+3
-3
@@ -1,12 +1,12 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: Service
|
kind: Service
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "trebuchet.temporal.serviceName" . }}
|
name: {{ include "hightower.temporal.serviceName" . }}
|
||||||
labels:
|
labels:
|
||||||
{{- include "trebuchet.labels" . | nindent 4 }}
|
{{- include "hightower.labels" . | nindent 4 }}
|
||||||
spec:
|
spec:
|
||||||
selector:
|
selector:
|
||||||
{{- include "trebuchet.temporal.selectorLabels" . | nindent 4 }}
|
{{- include "hightower.temporal.selectorLabels" . | nindent 4 }}
|
||||||
ports:
|
ports:
|
||||||
- name: grpc
|
- name: grpc
|
||||||
port: {{ .Values.temporal.ports.grpc }}
|
port: {{ .Values.temporal.ports.grpc }}
|
||||||
+2
-2
@@ -1,9 +1,9 @@
|
|||||||
apiVersion: v1
|
apiVersion: v1
|
||||||
kind: PersistentVolumeClaim
|
kind: PersistentVolumeClaim
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ include "trebuchet.fullname" . }}-workspaces
|
name: {{ include "hightower.fullname" . }}-workspaces
|
||||||
labels:
|
labels:
|
||||||
{{- include "trebuchet.labels" . | nindent 4 }}
|
{{- include "hightower.labels" . | nindent 4 }}
|
||||||
{{- if .Values.workspaces.retain }}
|
{{- if .Values.workspaces.retain }}
|
||||||
annotations:
|
annotations:
|
||||||
helm.sh/resource-policy: keep
|
helm.sh/resource-policy: keep
|
||||||
@@ -4,8 +4,8 @@ imagePullSecrets: []
|
|||||||
|
|
||||||
# Externally-managed secrets (chart never creates these)
|
# Externally-managed secrets (chart never creates these)
|
||||||
secrets:
|
secrets:
|
||||||
credentials: trebuchet-credentials
|
credentials: hightower-credentials
|
||||||
temporalDbApp: trebuchet-temporal-db-app
|
temporalDbApp: hightower-temporal-db-app
|
||||||
|
|
||||||
# Shared workspaces PVC
|
# Shared workspaces PVC
|
||||||
workspaces:
|
workspaces:
|
||||||
@@ -1,6 +0,0 @@
|
|||||||
apiVersion: v2
|
|
||||||
name: trebuchet
|
|
||||||
description: API-driven AI pentester built on Shannon, deployed as a service on Kubernetes
|
|
||||||
type: application
|
|
||||||
version: 0.1.1
|
|
||||||
appVersion: "1.0.0"
|
|
||||||
Reference in New Issue
Block a user