tests(stdlib/k8s/helm): test basic helm chart
tests(stdlib/k8s/helm): add verification style(tests/): rename helper into verify to confirm that deployments works Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
This commit is contained in:
@@ -1,9 +1,11 @@
|
||||
package helm
|
||||
|
||||
import (
|
||||
"dagger.io/kubernetes/helm"
|
||||
"dagger.io/dagger"
|
||||
"dagger.io/dagger/op"
|
||||
"dagger.io/alpine"
|
||||
"dagger.io/file"
|
||||
"dagger.io/kubernetes/helm"
|
||||
)
|
||||
|
||||
// We assume that a kinD cluster is running locally
|
||||
@@ -16,25 +18,50 @@ config: file.#Read & {
|
||||
from: kubeconfig
|
||||
}
|
||||
|
||||
// Dagger test k8s namespace
|
||||
namespace: "dagger-test"
|
||||
// Generate random string
|
||||
random: {
|
||||
string
|
||||
#up: [
|
||||
op.#Load & {from: alpine.#Image},
|
||||
op.#Exec & {
|
||||
args: ["sh", "-c", "cat /dev/urandom | tr -dc 'a-z' | fold -w 10 | head -n 1 | tr -d '\n' > /rand"]
|
||||
},
|
||||
op.#Export & {
|
||||
source: "/rand"
|
||||
},
|
||||
]
|
||||
}
|
||||
|
||||
chartName: "test-helm"
|
||||
|
||||
// Example of a `helm install` using a local chart
|
||||
// Fill using:
|
||||
// --input-dir helmChart.chart=./testdata/mychart
|
||||
// Deploy user local chart
|
||||
TestHelmSimpleChart: {
|
||||
helm.#Chart & {
|
||||
name: chartName
|
||||
"namespace": namespace
|
||||
// Deploy chart
|
||||
deploy: helm.#Chart & {
|
||||
name: "dagger-test-helm-simple-chart-\(random)"
|
||||
namespace: "dagger-test"
|
||||
kubeconfig: config.contents
|
||||
chart: dagger.#Artifact
|
||||
chartSource: dagger.#Artifact
|
||||
}
|
||||
|
||||
// Verify deployment
|
||||
verify: #VerifyHelm & {
|
||||
"chartName": chartName
|
||||
chartName: deploy.name
|
||||
namespace: deploy.namespace
|
||||
}
|
||||
}
|
||||
|
||||
result: helmApply: TestHelmSimpleChart.verify
|
||||
// Deploy remote chart
|
||||
TestHelmRepoChart: {
|
||||
// Deploy chart
|
||||
deploy: helm.#Chart & {
|
||||
name: "dagger-test-helm-repository-\(random)"
|
||||
namespace: "dagger-test"
|
||||
kubeconfig: config.contents
|
||||
chart: "redis"
|
||||
}
|
||||
|
||||
// Verify deployment
|
||||
verify: #VerifyHelm & {
|
||||
chartName: deploy.name
|
||||
namespace: deploy.namespace
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user