Files
incidentops/skaffold.yaml

151 lines
3.9 KiB
YAML
Raw Permalink Normal View History

apiVersion: skaffold/v4beta11
kind: Config
metadata:
name: incidentops
build:
artifacts:
- image: incidentops/api
docker:
dockerfile: Dockerfile
target: api
sync:
manual:
- src: "app/**/*.py"
dest: /app
- src: "worker/**/*.py"
dest: /app
- image: incidentops/worker
docker:
dockerfile: Dockerfile
target: worker
sync:
manual:
- src: "app/**/*.py"
dest: /app
- src: "worker/**/*.py"
dest: /app
# Web frontend disabled until implemented
# - image: incidentops/web
# docker:
# dockerfile: Dockerfile.web
# context: .
# sync:
# manual:
# - src: "web/src/**/*"
# dest: /app
local:
push: false
useBuildkit: true
deploy:
helm:
releases:
- name: incidentops
chartPath: helm/incidentops
valuesFiles:
- helm/incidentops/values.yaml
setValues:
web.replicaCount: 0 # Disabled until frontend is implemented
migration.enabled: true
setValueTemplates:
api.image.repository: "{{.IMAGE_REPO_incidentops_api}}"
api.image.tag: "{{.IMAGE_TAG_incidentops_api}}"
worker.image.repository: "{{.IMAGE_REPO_incidentops_worker}}"
worker.image.tag: "{{.IMAGE_TAG_incidentops_worker}}"
migration.image.repository: "{{.IMAGE_REPO_incidentops_api}}"
migration.image.tag: "{{.IMAGE_TAG_incidentops_api}}"
createNamespace: true
namespace: incidentops
profiles:
- name: dev
activation:
- command: dev
build:
local:
push: false
deploy:
helm:
releases:
- name: incidentops
chartPath: helm/incidentops
valuesFiles:
- helm/incidentops/values.yaml
setValues:
api.replicaCount: 1
worker.replicaCount: 1
web.replicaCount: 0 # Disabled until frontend is implemented
migration.enabled: true
setValueTemplates:
api.image.repository: "{{.IMAGE_REPO_incidentops_api}}"
api.image.tag: "{{.IMAGE_TAG_incidentops_api}}"
worker.image.repository: "{{.IMAGE_REPO_incidentops_worker}}"
worker.image.tag: "{{.IMAGE_TAG_incidentops_worker}}"
migration.image.repository: "{{.IMAGE_REPO_incidentops_api}}"
migration.image.tag: "{{.IMAGE_TAG_incidentops_api}}"
createNamespace: true
namespace: incidentops
- name: production
activation:
- env: SKAFFOLD_PROFILE=production
build:
local:
push: true
deploy:
helm:
releases:
- name: incidentops
chartPath: helm/incidentops
valuesFiles:
- helm/incidentops/values.yaml
- helm/incidentops/values-production.yaml
createNamespace: true
namespace: incidentops-prod
- name: kind
activation:
- kubeContext: kind-.*
patches:
- op: add
path: /build/local/push
value: false
portForward:
- resourceType: service
resourceName: incidentops-api
namespace: incidentops
port: 8000
localPort: 8000
# Web frontend disabled until implemented
# - resourceType: service
# resourceName: incidentops-web
# namespace: incidentops
# port: 3000
# localPort: 3000
# Observability
- resourceType: service
resourceName: incidentops-grafana
namespace: incidentops
port: 80
localPort: 3001
- resourceType: service
resourceName: incidentops-prometheus
namespace: incidentops
port: 9090
localPort: 9090
- resourceType: service
resourceName: incidentops-tempo
namespace: incidentops
port: 3200
localPort: 3200
- resourceType: service
resourceName: incidentops-loki
namespace: incidentops
port: 3100
localPort: 3100