demo.yaml2.1 KB
View on GitHub# yaml-language-server: $schema=https://atmos.tools/schemas/atmos/atmos-manifest/1.0/atmos-manifest.json
components:
helmfile:
demo:
metadata:
type: abstract
component: nginx
# Helm CLI plugins required by helmfile. Atmos installs these into a managed
# HELM_PLUGINS directory before running helmfile. helmfile uses helm-diff for
# `diff` and `apply`. Concrete components inherit this list from the abstract
# `demo` base component.
plugins:
- diff@v3.9.14
# Atmos installs these CLIs and puts them on PATH for `atmos helmfile *`:
# helmfile (the orchestrator), helm (the chart engine it drives), and kubectl
# (the nginx release's presync/postuninstall hooks shell out to it). Resolved
# from the Aqua public registry configured in atmos.yaml. Versions are pinned
# for reproducibility (and because the Aqua `kubernetes/kubectl` package has no
# GitHub releases to resolve "latest" from — kubectl ships from dl.k8s.io).
dependencies:
tools:
helmfile: "v1.6.0"
helm: "v3.21.2"
kubectl: "1.31.3"
# The nginx release's AnnotationsTransformer runs through kustomize.
kustomize: "5.4.3"
vars:
image:
tag: "latest"
service:
type: ClusterIP
port: 80
replicaCount: 1
ingress:
enabled: true
hostname: fbi.com
paths:
- /
extraHosts:
- name: '*.app.github.dev'
path: /
- name: 'localhost'
path: /
readinessProbe:
initialDelaySeconds: 1
periodSeconds: 2
timeoutSeconds: 1
successThreshold: 1
failureThreshold: 3
persistence:
enabled: false
extraVolumes:
- name: custom-html
configMap:
name: custom-html
extraVolumeMounts:
- name: custom-html
mountPath: /app/index.html
subPath: index.html
readOnly: true