dhall-kubernetes/examples/deployment.dhall
Gabriel Gonzalez 058e24fb5f
Update top-level README and examples (#164)
Currently CI does not enforce that they stay
in sync with the `1.17/` package, so I had to
explicitly run the `generate.sh` script to update
them.  I will follow up with another change to
automate this check.
2021-03-18 11:25:57 -07:00

48 lines
1.6 KiB
Plaintext

let Prelude =
../Prelude.dhall sha256:10db3c919c25e9046833df897a8ffe2701dc390fa0893d958c3430524be5a43e
let kubernetes =
../package.dhall sha256:532e110f424ea8a9f960a13b2ca54779ddcac5d5aa531f86d82f41f8f18d7ef1
let deployment =
kubernetes.Deployment::{
, metadata = kubernetes.ObjectMeta::{ name = Some "nginx" }
, spec = Some kubernetes.DeploymentSpec::{
, replicas = Some +2
, revisionHistoryLimit = Some +10
, selector = kubernetes.LabelSelector::{
, matchLabels = Some (toMap { app = "nginx" })
}
, strategy = Some kubernetes.DeploymentStrategy::{
, type = Some "RollingUpdate"
, rollingUpdate = Some
{ maxSurge = Some (kubernetes.IntOrString.Int +5)
, maxUnavailable = Some (kubernetes.IntOrString.Int +0)
}
}
, template = kubernetes.PodTemplateSpec::{
, metadata = Some kubernetes.ObjectMeta::{
, name = Some "nginx"
, labels = Some (toMap { app = "nginx" })
}
, spec = Some kubernetes.PodSpec::{
, containers =
[ kubernetes.Container::{
, name = "nginx"
, image = Some "nginx:1.15.3"
, imagePullPolicy = Some "Always"
, ports = Some
[ kubernetes.ContainerPort::{ containerPort = +80 } ]
, resources = Some
{ limits = Some (toMap { cpu = "500m" })
, requests = Some (toMap { cpu = "10m" })
}
}
]
}
}
}
}
in deployment