Files
openstack-api-simulator/helm/openstack-api-simulator/values.yaml
T
Sergey Antropoff a20c600c86 Add SemVer VERSION, Jenkins CI/CD, and release 0.1.1.
Ship Harbor/Hub push with latest+version tags, deploy to openstack.devops.org.ru, and show the package version badge in Help → About.
2026-07-28 00:57:38 +03:00

246 lines
5.4 KiB
YAML

## Default values for openstack-api-simulator.
## Image: https://hub.docker.com/r/inecs/openstack-api-simulator
replicaCount: 1
image:
repository: inecs/openstack-api-simulator
pullPolicy: IfNotPresent
# Overrides the image tag whose default is the chart appVersion.
tag: "0.1.1"
imagePullSecrets: []
nameOverride: ""
fullnameOverride: ""
serviceAccount:
create: true
annotations: {}
name: ""
podAnnotations: {}
podLabels: {}
podSecurityContext:
fsGroup: 10001
securityContext:
runAsNonRoot: true
runAsUser: 10001
runAsGroup: 10001
allowPrivilegeEscalation: false
capabilities:
drop: ["ALL"]
readOnlyRootFilesystem: true
## Internal simulator Service (FastAPI on 8080). Clients should use gateway.
service:
type: ClusterIP
port: 8080
## Nginx api-gateway — OpenStack default ports (same as docker-compose).
## Sets X-OpenStack-Service / X-Forwarded-Port so path roots do not collide.
gateway:
enabled: true
image:
repository: nginx
tag: "1.28.0-alpine"
pullPolicy: IfNotPresent
replicaCount: 1
service:
type: ClusterIP
# Published OpenStack API ports (name → port). Keep in sync with docs/ports.md.
ports:
- name: keystone
port: 5000
- name: nova
port: 8774
- name: neutron
port: 9696
- name: glance
port: 9292
- name: cinder
port: 8776
- name: placement
port: 8003
- name: heat
port: 8004
- name: heat-cfn
port: 8000
- name: swift
port: 8080
- name: ironic
port: 6385
- name: octavia
port: 9876
- name: barbican
port: 9311
- name: manila
port: 8786
- name: designate
port: 9001
- name: magnum
port: 9511
- name: zun
port: 9517
- name: trove
port: 8779
- name: mistral
port: 8989
- name: aodh
port: 8042
- name: cloudkitty
port: 8889
- name: freezer
port: 9090
- name: blazar
port: 1234
- name: vitrage
port: 8999
- name: masakari
port: 15868
- name: tacker
port: 9890
- name: adjutant
port: 5050
- name: watcher
port: 9322
- name: zaqar
port: 8888
- name: http
port: 80
resources:
requests:
cpu: 50m
memory: 64Mi
limits:
memory: 256Mi
## Application environment (non-secret).
config:
logLevel: INFO
# OpenStack contract packs live under contracts/openstack/<series>/.
# Optional override for active series at cold start (yoga|antelope|caracal|dalmatian).
openstackSeries: dalmatian
requestIdHeader: X-Request-ID
## Secrets. Prefer existingSecret in production.
secret:
# Create a Secret from the values below when existingSecret is empty.
create: true
existingSecret: ""
# Keys expected in an existing secret (when existingSecret is set):
# DATABASE_URL, TICKET_SIGNING_KEY
ticketSigningKey: "change-me-to-a-long-random-secret"
# Used only when postgresql.enabled=true and databaseUrl is empty.
databaseUrl: ""
## Bundled PostgreSQL (official image — same major as docker-compose.release.yml).
postgresql:
enabled: true
image:
repository: postgres
tag: "17.5-bookworm"
pullPolicy: IfNotPresent
auth:
username: openstack
password: openstack
database: openstack_simulator
persistence:
enabled: true
size: 8Gi
storageClass: ""
resources:
requests:
cpu: 50m
memory: 128Mi
limits:
memory: 512Mi
## External database when postgresql.enabled=false.
externalDatabase:
host: ""
port: 5432
user: openstack
password: ""
database: openstack_simulator
existingSecret: ""
existingSecretPasswordKey: database-password
## Database migrations.
## Default: idempotent initContainer on the Deployment (recommended).
migrate:
enabled: true
asJob: false
backoffLimit: 20
activeDeadlineSeconds: 600
resources: {}
## Optional post-install seed Job (lab data).
## Profiles: minimal | demo (demo ≈ 1000 servers + full topology)
seed:
enabled: false
profile: minimal
backoffLimit: 3
resources: {}
resources:
requests:
cpu: 100m
memory: 256Mi
limits:
cpu: "1"
memory: 1Gi
livenessProbe:
httpGet:
path: /health/live
port: http
initialDelaySeconds: 10
periodSeconds: 10
timeoutSeconds: 3
failureThreshold: 3
readinessProbe:
httpGet:
path: /health/ready
port: http
initialDelaySeconds: 5
periodSeconds: 10
timeoutSeconds: 3
failureThreshold: 8
nodeSelector: {}
tolerations: []
affinity: {}
## Ingress + TLS via cert-manager (Let's Encrypt).
## Backend is the api-gateway Keystone/UI port (5000) when gateway.enabled.
ingress:
enabled: false
className: nginx
annotations: {}
hosts:
- host: os-sim.example.com
paths:
- path: /
pathType: Prefix
tls:
- secretName: openstack-api-simulator-tls
hosts:
- os-sim.example.com
## cert-manager ClusterIssuers for Let's Encrypt.
## Requires cert-manager already installed in the cluster.
certManager:
enabled: false
createClusterIssuer: true
email: admin@example.com
issuerName: letsencrypt-prod
server: https://acme-v02.api.letsencrypt.org/directory
createStagingIssuer: true
stagingIssuerName: letsencrypt-staging
stagingServer: https://acme-staging-v02.api.letsencrypt.org/directory
useStaging: false
solverIngressClassName: ""