package main
import (
"encoding/yaml"
"dagger.io/dagger"
"dagger.io/aws"
"dagger.io/aws/eks"
"dagger.io/kubernetes"
"dagger.io/kubernetes/helm"
)
kubeSrc: {
apiVersion: "v1"
kind: "Pod"
metadata: name: "kube-test"
spec: {
restartPolicy: "Never"
containers: [{
name: "test"
image: "hello-world"
}]
}
// Fill using:
// --input-string awsConfig.accessKey=XXX
// --input-string awsConfig.secretKey=XXX
awsConfig: aws.#Config & {
region: *"us-east-2" | string
// Take the kubeconfig from the EKS cluster
cluster: eks.#KubeConfig & {
config: awsConfig
clusterName: *"dagger-example-eks-cluster" | string
// Example of a simple `kubectl apply` using a simple config
kubeApply: kubernetes.#Apply & {
source: yaml.Marshal(kubeSrc)
namespace: "test"
kubeconfig: cluster.kubeconfig
// Example of a `helm install` using a local chart
// --input-dir helmChart.chart=./testdata/mychart
helmChart: helm.#Chart & {
name: "test-helm"
chart: dagger.#Artifact