Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
cfd5a8b
Create postgres chart
skkra0 Oct 26, 2025
cac41e7
Install from chart URL
skkra0 Dec 9, 2025
9e1fc81
Merge branch 'main' into helm
skkra0 Dec 9, 2025
a009231
Move spilo chart to charts
skkra0 Dec 9, 2025
e8c32c0
Merge branch 'main' into helm
skkra0 Dec 16, 2025
f2289b6
Write API handler for listing custom charts
skkra0 Dec 20, 2025
afc4709
Add Helm config model
skkra0 Dec 22, 2025
c2d329d
Start writing testable deployment controller to handle various app types
skkra0 Dec 22, 2025
2e65b5b
Write database migration and refactor createApp/createAppGroup to dep…
skkra0 Dec 22, 2025
8945122
Update backend with helm configs
skkra0 Dec 23, 2025
bea8f84
Write migration for splitting deployment configs by app type
skkra0 Dec 23, 2025
359b13a
Merge branch 'main' into helm
skkra0 Dec 25, 2025
fb022de
Move deployment process logic to DeploymentService
skkra0 Dec 26, 2025
d092487
Backend fixes
skkra0 Dec 31, 2025
2f20e98
Fix update and deployment bugs
skkra0 Jan 1, 2026
0b527be
Fix updateApp, listChart, and helm upgrade
skkra0 Jan 2, 2026
5d59f0a
Organize config and diff components by app source
skkra0 Jan 2, 2026
b15cd63
Refactor frontend for helm and workload configs
skkra0 Jan 2, 2026
c82babe
Merge branch 'main' into helm-backend
skkra0 Jan 2, 2026
9eebc79
Update trigger and image repository
skkra0 Jan 6, 2026
6c88859
Let Docker populate the TARGETARCH argument automatically
FluxCapacitor2 Jan 6, 2026
adc6f4f
Add generic rethrow in createApp when calling db.app.create after Con…
FluxCapacitor2 Jan 6, 2026
6872691
Add explicit `await`
FluxCapacitor2 Jan 6, 2026
8b45bc0
Reduce duplicate in preprocessing deployment configs received from da…
FluxCapacitor2 Jan 6, 2026
de20bbe
Add cast methods that enforce correct config type
FluxCapacitor2 Jan 6, 2026
fd41baa
Use Promise.allSettled instead of manual try/catch + returning value …
FluxCapacitor2 Jan 6, 2026
ec207db
Small misc. changes
FluxCapacitor2 Jan 6, 2026
895361e
Misc. fixes
skkra0 Jan 12, 2026
ac27491
Enable helm deployments from values.yaml
skkra0 Jan 12, 2026
e6922c1
Directly query OCI repository for chart info
skkra0 Jan 12, 2026
75431b7
Restore staging build-push workflow
skkra0 Jan 12, 2026
5893510
Update credentials
skkra0 Jan 12, 2026
4590499
Pass projectId in API call
skkra0 Jan 12, 2026
997f015
Bug fixes
skkra0 Jan 12, 2026
8e5d15c
Update commit hash and image tag on webhook event
skkra0 Jan 13, 2026
4678fe4
Fix bugs in workflow run handling
skkra0 Jan 14, 2026
c48dbf9
Fix status bugs and missing projectId
skkra0 Jan 14, 2026
caabacd
Create namespace before running helm job
skkra0 Jan 14, 2026
bd93fac
Bug fixes in deletion and conflicts
skkra0 Jan 14, 2026
c53dfac
Update charts
skkra0 Jan 14, 2026
6c2470a
Merge branch 'main' into helm-backend
skkra0 Jan 15, 2026
a84cd5a
Remove commit step from workflow
skkra0 Jan 15, 2026
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
9 changes: 0 additions & 9 deletions .github/workflows/build-publish-anvilops.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,3 @@ jobs:
- name: Log out of container registry (Geddes)
if: always()
run: docker logout geddes-registry.anvil.rcac.purdue.edu

- name: Commit changes
run: |
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"
git config pull.rebase true
git add infra/anvil/values.yaml infra/geddes/values.yaml
git commit -m "Update image to ${{ github.ref_name }}-${{ github.run_number }}-${{ github.sha }}" || echo "No changes to commit"
git push || git pull && git push
29 changes: 29 additions & 0 deletions .github/workflows/build-publish-helm-deployer.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Build and Publish Dockerfile Builder Docker image

on:
push:
branches: [main]
paths:
- "builders/helm/**"
- ".github/workflows/build-publish-helm-deployer.yml"
workflow_dispatch:

jobs:
push_to_registry:
name: Push Helm Deployer Docker image to Harbor
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Check out the repo
uses: actions/checkout@v6

- name: Log in to container registry
run: docker login -u '${{ secrets.DOCKER_USERNAME }}' -p '${{ secrets.DOCKER_PASSWORD }}' registry.anvil.rcac.purdue.edu

- name: Build and push Helm Deployer Docker image
run: docker build --push -t registry.anvil.rcac.purdue.edu/anvilops/helm-deployer:${{ github.ref_name }}-${{ github.run_number }}-${{ github.sha }}${{ github.event_name == 'push' && ' -t registry.anvil.rcac.purdue.edu/anvilops/helm-deployer:latest' || '' }} --cache-from=type=registry,ref=registry.anvil.rcac.purdue.edu/anvilops/helm-deployer:latest --cache-to=type=inline ./builders/helm

- name: Log out of container registry
if: always()
run: docker logout registry.anvil.rcac.purdue.edu
24 changes: 24 additions & 0 deletions .github/workflows/build-publish-staging-anvilops.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: Build and Publish Staging Docker image

on:
workflow_dispatch:

jobs:
push_to_registry:
name: Push AnvilOps Docker image to Harbor (Staging)
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Check out the repo
uses: actions/checkout@v6

- name: Log in to container registry
run: docker login -u '${{ secrets.DOCKER_USERNAME_STAGING }}' -p '${{ secrets.DOCKER_PASSWORD_STAGING }}' registry.anvil.rcac.purdue.edu

- name: Build and push AnvilOps Docker image
run: docker build --push -t registry.anvil.rcac.purdue.edu/anvilops-staging/anvilops:${{ github.run_number }}-${{ github.sha }} .

- name: Log out of container registry
if: always()
run: docker logout registry.anvil.rcac.purdue.edu
2 changes: 2 additions & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# Ignore artifacts:
charts/**/*.yaml
!charts/**/values.yaml
templates/extensions/**/*.yaml
!templates/extensions/**/values.yaml
# ^ Prettier doesn't know how to interpret Go templates so it thinks we're writing invalid YAML
2 changes: 2 additions & 0 deletions backend/.env.example
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,8 @@ DELETE_REPO_PASSWORD=

CURRENT_NAMESPACE=anvilops-dev

CHART_PROJECT_NAME=anvilops-chart
REGISTRY_API_URL=https://registry.anvil.rcac.purdue.edu/api/v2.0
REGISTRY_HOSTNAME=registry.anvil.rcac.purdue.edu

STORAGE_CLASS_NAME=standard
Expand Down
Loading