diff --git a/stdlib/aws/eks/eks.cue b/stdlib/aws/eks/eks.cue index cd94428d..a56fce0d 100644 --- a/stdlib/aws/eks/eks.cue +++ b/stdlib/aws/eks/eks.cue @@ -1,7 +1,6 @@ package eks import ( - "dagger.io/dagger" "dagger.io/dagger/op" "dagger.io/aws" ) @@ -19,16 +18,19 @@ import ( // kubeconfig is the generated kube configuration file kubeconfig: { - dagger.#Secret + // FIXME There is a problem with dagger.#Secret type + string #up: [ op.#Load & { from: aws.#CLI }, + op.#WriteFile & { dest: "/entrypoint.sh" content: #Code }, + op.#Exec & { always: true args: [ diff --git a/tests/stdlib.bats b/tests/stdlib.bats index 106de816..0da60c0a 100644 --- a/tests/stdlib.bats +++ b/tests/stdlib.bats @@ -42,4 +42,9 @@ setup() { skip_unless_secrets_available "$TESTDIR"/stdlib/aws/inputs.yaml "$DAGGER" compute "$TESTDIR"/stdlib/aws/s3 --input-dir TestDirectory="$TESTDIR"/stdlib/aws/s3/testdata --input-yaml "$TESTDIR"/stdlib/aws/inputs.yaml +} +@test "stdlib: aws" { + skip_unless_secrets_available "$TESTDIR"/stdlib/aws/inputs.yaml + + "$DAGGER" compute "$TESTDIR"/stdlib/aws/eks --input-yaml "$TESTDIR"/stdlib/aws/inputs.yaml } \ No newline at end of file diff --git a/tests/stdlib/aws/eks/eks.cue b/tests/stdlib/aws/eks/eks.cue new file mode 100644 index 00000000..1bfc98a1 --- /dev/null +++ b/tests/stdlib/aws/eks/eks.cue @@ -0,0 +1,53 @@ +package eks + +import ( + "dagger.io/aws" + "dagger.io/aws/eks" + "dagger.io/kubernetes" + "dagger.io/dagger/op" +) + +TestConfig: awsConfig: aws.#Config & { + region: "us-east-2" +} + +TestCluster: eks.#KubeConfig & { + config: TestConfig.awsConfig + clusterName: *"dagger-example-eks-cluster" | string +} + +TestEks: { + #GetPods: + """ + kubectl get pods -A + """ + + #up: [ + op.#Load & { + from: kubernetes.#Kubectl + }, + + op.#WriteFile & { + dest: "/kubeconfig" + content: TestCluster.kubeconfig + }, + + op.#WriteFile & { + dest: "/getPods.sh" + content: #GetPods + }, + + op.#Exec & { + always: true + args: [ + "/bin/bash", + "--noprofile", + "--norc", + "-eo", + "pipefail", + "/getPods.sh", + ] + env: KUBECONFIG: "/kubeconfig" + }, + ] +}