Add test for kube-aws basic & deployment
Signed-off-by: Tom Chauveau <tom.chauveau@epitech.eu>
This commit is contained in:
committed by
Guillaume de Rouville
parent
a91181bb5f
commit
5fcaaa6cfe
18
docs/learn/tests/kube-aws/basic/config.cue
Normal file
18
docs/learn/tests/kube-aws/basic/config.cue
Normal file
@@ -0,0 +1,18 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"alpha.dagger.io/aws"
|
||||
"alpha.dagger.io/aws/eks"
|
||||
)
|
||||
|
||||
// Value created for generic reference of `kubeconfig` in `todoapp.cue`
|
||||
kubeconfig: eksConfig.kubeconfig
|
||||
|
||||
// awsConfig for Amazon connection
|
||||
awsConfig: aws.#Config
|
||||
|
||||
// eksConfig used for deployment
|
||||
eksConfig: eks.#KubeConfig & {
|
||||
// config field references `gkeConfig` value to set in once
|
||||
config: awsConfig
|
||||
}
|
11
docs/learn/tests/kube-aws/basic/input.cue
Normal file
11
docs/learn/tests/kube-aws/basic/input.cue
Normal file
@@ -0,0 +1,11 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"alpha.dagger.io/git"
|
||||
)
|
||||
|
||||
manifest: git.#Repository & {
|
||||
remote: "https://github.com/dagger/examples.git"
|
||||
ref: "main"
|
||||
subdir: "todoapp/k8s"
|
||||
}
|
66
docs/learn/tests/kube-aws/basic/test/test.cue
Normal file
66
docs/learn/tests/kube-aws/basic/test/test.cue
Normal file
@@ -0,0 +1,66 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"alpha.dagger.io/dagger/op"
|
||||
"alpha.dagger.io/kubernetes"
|
||||
)
|
||||
|
||||
TestEks: {
|
||||
#_GetDeployment: """
|
||||
kubectl describe deployment todoapp | grep 'True'
|
||||
"""
|
||||
|
||||
#_DeleteDeployment: """
|
||||
kubectl delete deployment todoapp
|
||||
kubectl delete service todoapp-service
|
||||
"""
|
||||
|
||||
#up: [
|
||||
op.#Load & {
|
||||
from: kubernetes.#Kubectl
|
||||
},
|
||||
|
||||
op.#WriteFile & {
|
||||
dest: "/kubeconfig"
|
||||
content: todoApp.kubeconfig
|
||||
},
|
||||
|
||||
op.#WriteFile & {
|
||||
dest: "/getPods.sh"
|
||||
content: #_GetDeployment
|
||||
},
|
||||
|
||||
op.#WriteFile & {
|
||||
dest: "/deletePods.sh"
|
||||
content: #_DeleteDeployment
|
||||
},
|
||||
|
||||
// Get pods
|
||||
op.#Exec & {
|
||||
always: true
|
||||
args: [
|
||||
"/bin/bash",
|
||||
"--noprofile",
|
||||
"--norc",
|
||||
"-eo",
|
||||
"pipefail",
|
||||
"/getPods.sh",
|
||||
]
|
||||
env: KUBECONFIG: "/kubeconfig"
|
||||
},
|
||||
|
||||
// Delete pods
|
||||
op.#Exec & {
|
||||
always: true
|
||||
args: [
|
||||
"/bin/bash",
|
||||
"--noprofile",
|
||||
"--norc",
|
||||
"-eo",
|
||||
"pipefail",
|
||||
"/deletePods.sh",
|
||||
]
|
||||
env: KUBECONFIG: "/kubeconfig"
|
||||
},
|
||||
]
|
||||
}
|
16
docs/learn/tests/kube-aws/basic/todoapp.cue
Normal file
16
docs/learn/tests/kube-aws/basic/todoapp.cue
Normal file
@@ -0,0 +1,16 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"alpha.dagger.io/dagger"
|
||||
"alpha.dagger.io/kubernetes"
|
||||
)
|
||||
|
||||
// input: kubernetes objects directory to deploy to
|
||||
// set with `dagger input dir manifest ./k8s -e kube`
|
||||
manifest: dagger.#Artifact & dagger.#Input
|
||||
|
||||
// Deploy the manifest to a kubernetes cluster
|
||||
todoApp: kubernetes.#Resources & {
|
||||
"kubeconfig": kubeconfig
|
||||
source: manifest
|
||||
}
|
Reference in New Issue
Block a user