diff --git a/stdlib/aws/cloudformation/cloudformation.cue b/stdlib/aws/cloudformation/cloudformation.cue index 6501803b..91f85361 100644 --- a/stdlib/aws/cloudformation/cloudformation.cue +++ b/stdlib/aws/cloudformation/cloudformation.cue @@ -14,22 +14,22 @@ import ( config: aws.#Config // Source is the Cloudformation template (JSON/YAML string) - source: string + source: string @dagger(input) // Stackname is the cloudformation stack - stackName: string + stackName: string @dagger(input) // Stack parameters - parameters: [string]: _ + parameters: [string]: _ @dagger(input) // Behavior when failure to create/update the Stack - onFailure: *"DO_NOTHING" | "ROLLBACK" | "DELETE" + onFailure: *"DO_NOTHING" | "ROLLBACK" | "DELETE" @dagger(input) // Timeout for waiting for the stack to be created/updated (in minutes) - timeout: *10 | uint + timeout: *10 | uint @dagger(input) // Never update the stack if already exists - neverUpdate: *false | bool + neverUpdate: *false | bool @dagger(input) #files: { "/entrypoint.sh": #Code @@ -44,7 +44,7 @@ import ( } } - outputs: [string]: string + outputs: [string]: string @dagger(output) outputs: #up: [ op.#Load & { diff --git a/stdlib/aws/ecr/ecr.cue b/stdlib/aws/ecr/ecr.cue index c7b6b1d4..8ffdf038 100644 --- a/stdlib/aws/ecr/ecr.cue +++ b/stdlib/aws/ecr/ecr.cue @@ -15,7 +15,7 @@ import ( // ECR credentials username: "AWS" - secret: out + secret: out @dagger(output) aws.#Script & { always: true diff --git a/stdlib/aws/ecs/run-task.cue b/stdlib/aws/ecs/run-task.cue index c1ce72cf..a6a5a656 100644 --- a/stdlib/aws/ecs/run-task.cue +++ b/stdlib/aws/ecs/run-task.cue @@ -11,22 +11,22 @@ import ( config: aws.#Config // ECS cluster name - cluster: string + cluster: string @dagger(input) // Arn of the task to run - taskArn: string + taskArn: string @dagger(input) // Environment variables of the task - containerEnvironment: [string]: string + containerEnvironment: [string]: string @dagger(input) // Container name - containerName: string + containerName: string @dagger(input) // Container command to give - containerCommand: [...string] + containerCommand: [...string] @dagger(input) // Task role ARN - roleArn: string | *"" + roleArn: string | *"" @dagger(input) containerOverrides: { containerOverrides: [{ diff --git a/stdlib/aws/eks/eks.cue b/stdlib/aws/eks/eks.cue index a56fce0d..f7aa12a1 100644 --- a/stdlib/aws/eks/eks.cue +++ b/stdlib/aws/eks/eks.cue @@ -11,15 +11,15 @@ import ( config: aws.#Config // EKS cluster name - clusterName: string + clusterName: string @dagger(input) // Kubectl version - version: *"v1.19.9" | string + version: *"v1.19.9" | string @dagger(input) // kubeconfig is the generated kube configuration file kubeconfig: { // FIXME There is a problem with dagger.#Secret type - string + string @dagger(output) #up: [ op.#Load & { diff --git a/stdlib/aws/elb/elb.cue b/stdlib/aws/elb/elb.cue index cd6a0851..5a3757c7 100644 --- a/stdlib/aws/elb/elb.cue +++ b/stdlib/aws/elb/elb.cue @@ -10,12 +10,14 @@ import ( config: aws.#Config // ListenerArn - listenerArn: string + listenerArn: string @dagger(input) // Optional vhost for reusing priorities - vhost?: string + vhost?: string @dagger(input) // exported priority + priority: out @dagger(output) + out: string aws.#Script & { diff --git a/stdlib/aws/rds/rds.cue b/stdlib/aws/rds/rds.cue index f62787f8..920f08e8 100644 --- a/stdlib/aws/rds/rds.cue +++ b/stdlib/aws/rds/rds.cue @@ -11,18 +11,18 @@ import ( config: aws.#Config // DB name - name: string + name: string @dagger(input) // ARN of the database instance - dbArn: string + dbArn: string @dagger(input) // ARN of the database secret (for connecting via rds api) - secretArn: string + secretArn: string @dagger(input) - dbType: "mysql" | "postgres" + dbType: "mysql" | "postgres" @dagger(input) // Name of the DB created - out: string + out: string @dagger(output) aws.#Script & { "config": config diff --git a/stdlib/docker/docker.cue b/stdlib/docker/docker.cue index 63763e7e..8a432bf2 100644 --- a/stdlib/docker/docker.cue +++ b/stdlib/docker/docker.cue @@ -7,7 +7,7 @@ import ( // Build a Docker image from source, using included Dockerfile #Build: { - source: dagger.#Artifact + source: dagger.#Artifact @dagger(input) #up: [ op.#DockerBuild & { @@ -20,7 +20,7 @@ import ( // Pull a docker container #Pull: { // Remote ref (example: "index.docker.io/alpine:latest") - from: string + from: string @dagger(input) #up: [ op.#FetchContainer & {ref: from}, @@ -30,10 +30,10 @@ import ( // Push a docker image #Push: { // Remote ref (example: "index.docker.io/alpine:latest") - ref: string + ref: string @dagger(input) // Image - source: dagger.#Artifact + source: dagger.#Artifact @dagger(input) #up: [ op.#Load & {from: source}, @@ -46,8 +46,8 @@ import ( // Build a Docker image from the provided Dockerfile contents // FIXME: incorporate into #Build #ImageFromDockerfile: { - dockerfile: string - context: dagger.#Artifact + dockerfile: string @dagger(input) + context: dagger.#Artifact @dagger(input) #up: [ op.#DockerBuild & { diff --git a/stdlib/file/file.cue b/stdlib/file/file.cue index 1307da17..6c2cd1e3 100644 --- a/stdlib/file/file.cue +++ b/stdlib/file/file.cue @@ -7,9 +7,9 @@ import ( ) #Create: { - filename: !="" - permissions: int | *0o644 - contents: string | bytes + filename: !="" @dagger(input) + permissions: int | *0o644 @dagger(input) + contents: string | bytes @dagger(input) #up: [ op.#WriteFile & {dest: filename, content: contents, mode: permissions}, @@ -17,12 +17,12 @@ import ( } #Append: { - filename: !="" - permissions: int | *0o644 - contents: string | bytes - from: dagger.#Artifact + filename: !="" @dagger(input) + permissions: int | *0o644 @dagger(input) + contents: string | bytes @dagger(input) + from: dagger.#Artifact @dagger(input) - orig: (#read & {path: filename, "from": from}).data + orig: (#read & {path: filename, "from": from}).data @dagger(output) #up: [ op.#WriteFile & {dest: filename, content: "\(orig)\(contents)", mode: permissions}, @@ -30,16 +30,16 @@ import ( } #Read: { - filename: !="" - from: dagger.#Artifact - contents: (#read & {path: filename, "from": from}).data + filename: !="" @dagger(input) + from: dagger.#Artifact @dagger(input) + contents: (#read & {path: filename, "from": from}).data @dagger(output) } #read: { - path: !="" - from: dagger.#Artifact + path: !="" @dagger(input) + from: dagger.#Artifact @dagger(input) data: { - string + string @dagger(output) #up: [ op.#Load & {"from": from}, op.#Export & {source: path}, @@ -48,12 +48,12 @@ import ( } #Glob: { - glob: !="" - filenames: [...string] - from: dagger.#Artifact - files: (_#glob & {"glob": glob, "from": from}).data + glob: !="" @dagger(input) + filenames: [...string] @dagger(input) + from: dagger.#Artifact @dagger(input) + files: (_#glob & {"glob": glob, "from": from}).data @dagger(output) // trim suffix because ls always ends with newline - filenames: strings.Split(strings.TrimSuffix(files, "\n"), "\n") + filenames: strings.Split(strings.TrimSuffix(files, "\n"), "\n") @dagger(output) } _#glob: { diff --git a/stdlib/gcp/gcp.cue b/stdlib/gcp/gcp.cue index 797f5f16..97b7c4a0 100644 --- a/stdlib/gcp/gcp.cue +++ b/stdlib/gcp/gcp.cue @@ -7,9 +7,9 @@ import ( // Base Google Cloud Config #Config: { // GCP region - region: string + region: string @dagger(input) // GCP projcet - project: string + project: string @dagger(input) // GCP service key - serviceKey: dagger.#Secret + serviceKey: dagger.#Secret @dagger(input) } diff --git a/stdlib/gcp/gcr/gcr.cue b/stdlib/gcp/gcr/gcr.cue index b855a96e..6a7d02b2 100644 --- a/stdlib/gcp/gcr/gcr.cue +++ b/stdlib/gcp/gcr/gcr.cue @@ -13,7 +13,7 @@ import ( // GCR credentials username: "oauth2accesstoken" secret: { - string + string @dagger(output) #up: [ op.#Load & { diff --git a/stdlib/gcp/gke/gke.cue b/stdlib/gcp/gke/gke.cue index 89ba4641..9afa0d71 100644 --- a/stdlib/gcp/gke/gke.cue +++ b/stdlib/gcp/gke/gke.cue @@ -11,15 +11,15 @@ import ( config: gcp.#Config // GKE cluster name - clusterName: string + clusterName: string @dagger(input) // Kubectl version - version: *"v1.19.9" | string + version: *"v1.19.9" | string @dagger(input) // kubeconfig is the generated kube configuration file kubeconfig: { // FIXME There is a problem with dagger.#Secret type - string + string @dagger(output) #up: [ op.#Load & { diff --git a/stdlib/git/git.cue b/stdlib/git/git.cue index 33de44c1..569360fa 100644 --- a/stdlib/git/git.cue +++ b/stdlib/git/git.cue @@ -7,9 +7,9 @@ import ( // A git repository #Repository: { - remote: string - ref: string - subdir: string | *"" + remote: string @dagger(input) + ref: string @dagger(input) + subdir: string | *"" @dagger(input) #up: [ op.#FetchGit & { diff --git a/stdlib/go/go.cue b/stdlib/go/go.cue index a183ae54..82f11e7b 100644 --- a/stdlib/go/go.cue +++ b/stdlib/go/go.cue @@ -11,8 +11,8 @@ import ( // A standalone go environment #Container: { // Go version to use - version: *"1.16" | string - source: dagger.#Artifact + version: *"1.16" | string @dagger(input) + source: dagger.#Artifact @dagger(input) os.#Container & { env: CGO_ENABLED: "0" @@ -38,16 +38,16 @@ import ( #Go: { // Go version to use - version: *"1.16" | string + version: *"1.16" | string @dagger(input) // Arguments to the Go binary - args: [...string] + args: [...string] @dagger(input) // Source Directory to build - source: dagger.#Artifact + source: dagger.#Artifact @dagger(input) // Environment variables - env: [string]: string + env: [string]: string @dagger(input) #up: [ op.#FetchContainer & { @@ -70,30 +70,30 @@ import ( #Build: { // Go version to use - version: *#Go.version | string + version: *#Go.version | string @dagger(input) // Source Directory to build - source: dagger.#Artifact + source: dagger.#Artifact @dagger(input) // Packages to build - packages: *"." | string + packages: *"." | string @dagger(input) // Target architecture - arch: *"amd64" | string + arch: *"amd64" | string @dagger(input) // Target OS - os: *"linux" | string + os: *"linux" | string @dagger(input) // Build tags to use for building - tags: *"" | string + tags: *"" | string @dagger(input) // LDFLAGS to use for linking - ldflags: *"" | string + ldflags: *"" | string @dagger(input) // Specify the targeted binary name - output: string + output: string @dagger(output) - env: [string]: string + env: [string]: string @dagger(input) #up: [ op.#Copy & { @@ -111,13 +111,13 @@ import ( #Test: { // Go version to use - version: *#Go.version | string + version: *#Go.version | string @dagger(input) // Source Directory to build - source: dagger.#Artifact + source: dagger.#Artifact @dagger(input) // Packages to test - packages: *"." | string + packages: *"." | string @dagger(input) #Go & { "version": version diff --git a/stdlib/js/yarn/yarn.cue b/stdlib/js/yarn/yarn.cue index 09e020e1..fee532c0 100644 --- a/stdlib/js/yarn/yarn.cue +++ b/stdlib/js/yarn/yarn.cue @@ -13,26 +13,26 @@ import ( // A Yarn package. #Package: { // Application source code - source: dagger.#Artifact + source: dagger.#Artifact @dagger(input) // Environment variables - env: [string]: string + env: [string]: string @dagger(input) // Write the contents of `environment` to this file, // in the "envfile" format. - writeEnvFile: string | *"" + writeEnvFile: string | *"" @dagger(input) // Read build output from this directory // (path must be relative to working directory). - buildDir: string | *"build" + buildDir: string | *"build" @dagger(input) // Run this yarn script - script: string | *"build" + script: string | *"build" @dagger(input) build: os.#Dir & { from: ctr path: "/build" - } + } @dagger(output) ctr: os.#Container & { image: alpine.#Image & { diff --git a/stdlib/kubernetes/helm/helm.cue b/stdlib/kubernetes/helm/helm.cue index d822ae9e..d821bd42 100644 --- a/stdlib/kubernetes/helm/helm.cue +++ b/stdlib/kubernetes/helm/helm.cue @@ -11,47 +11,47 @@ import ( // Install a Helm chart #Chart: { // Helm deployment name - name: string + name: string @dagger(input) // Helm chart to install from source - chartSource: dagger.#Artifact + chartSource: dagger.#Artifact @dagger(input) // Helm chart to install from repository - chart?: string + chart?: string @dagger(input) // Helm chart repository (defaults to stable) - repository: *"https://charts.helm.sh/stable" | string + repository: *"https://charts.helm.sh/stable" | string @dagger(input) // Helm values (either a YAML string or a Cue structure) - values?: string + values?: string @dagger(input) // Kubernetes Namespace to deploy to - namespace: string + namespace: string @dagger(input) // Helm action to apply - action: *"installOrUpgrade" | "install" | "upgrade" + action: *"installOrUpgrade" | "install" | "upgrade" @dagger(input) // time to wait for any individual Kubernetes operation (like Jobs for hooks) - timeout: string | *"5m" + timeout: string | *"5m" @dagger(input) // if set, will wait until all Pods, PVCs, Services, and minimum number of // Pods of a Deployment, StatefulSet, or ReplicaSet are in a ready state // before marking the release as successful. // It will wait for as long as timeout - wait: *true | bool + wait: *true | bool @dagger(input) // if set, installation process purges chart on fail. // The wait option will be set automatically if atomic is used - atomic: *true | bool + atomic: *true | bool @dagger(input) // Kube config file - kubeconfig: dagger.#Secret + kubeconfig: dagger.#Secret @dagger(input) // Helm version - version: *"3.5.2" | string + version: *"3.5.2" | string @dagger(input) // Kubectl version - kubectlVersion: *"v1.19.9" | string + kubectlVersion: *"v1.19.9" | string @dagger(input) #up: [ op.#Load & { diff --git a/stdlib/kubernetes/kubernetes.cue b/stdlib/kubernetes/kubernetes.cue index 4cac9ac0..6633b5ed 100644 --- a/stdlib/kubernetes/kubernetes.cue +++ b/stdlib/kubernetes/kubernetes.cue @@ -47,19 +47,19 @@ import ( #Apply: { // Kubernetes config to deploy - source: dagger.#Artifact + source: dagger.#Artifact @dagger(input) // Kubernetes config to deploy inlined in a string - sourceInline?: string + sourceInline?: string @dagger(input) // Kubernetes Namespace to deploy to - namespace: string + namespace: string @dagger(input) // Version of kubectl client - version: *"v1.19.9" | string + version: *"v1.19.9" | string @dagger(input) // Kube config file - kubeconfig: dagger.#Secret + kubeconfig: dagger.#Secret @dagger(input) #code: #""" kubectl create namespace "$KUBE_NAMESPACE" || true diff --git a/stdlib/kubernetes/kustomize/kustomization.cue b/stdlib/kubernetes/kustomize/kustomization.cue index 9aa5dec0..dc7e6b93 100644 --- a/stdlib/kubernetes/kustomize/kustomization.cue +++ b/stdlib/kubernetes/kustomize/kustomization.cue @@ -8,7 +8,7 @@ import ( #Kustomization: { // Kustomize binary version - version: *"v3.8.7" | string + version: *"v3.8.7" | string @dagger(input) #code: #""" [ -e /usr/local/bin/kubectl ] || { @@ -46,13 +46,13 @@ import ( // Apply a Kubernetes Kustomize folder #Kustomize: { // Kubernetes source - source: dagger.#Artifact + source: dagger.#Artifact @dagger(input) // Optional Kustomization file - kustomization: string + kustomization: string @dagger(input) // Kustomize binary version - version: *"v3.8.7" | string + version: *"v3.8.7" | string @dagger(input) #code: #""" cp /kustomization.yaml /source | true diff --git a/stdlib/netlify/netlify.cue b/stdlib/netlify/netlify.cue index be977f5e..c141da2d 100644 --- a/stdlib/netlify/netlify.cue +++ b/stdlib/netlify/netlify.cue @@ -10,10 +10,10 @@ import ( #Account: { // Use this Netlify account name // (also referred to as "team" in the Netlify docs) - name: string | *"" + name: string | *"" @dagger(input) // Netlify authentication token - token: dagger.#Secret + token: dagger.#Secret @dagger(input) } // A Netlify site @@ -22,16 +22,16 @@ import ( account: #Account // Contents of the application to deploy - contents: dagger.#Artifact + contents: dagger.#Artifact @dagger(input) // Deploy to this Netlify site - name: string + name: string @dagger(input) // Host the site at this address - customDomain?: string + customDomain?: string @dagger(input) // Create the Netlify site if it doesn't exist? - create: bool | *true + create: bool | *true @dagger(input) // Website url url: { @@ -39,7 +39,7 @@ import ( from: ctr path: "/netlify/url" } - }.read.data + }.read.data @dagger(output) // Unique Deploy URL deployUrl: { @@ -47,7 +47,7 @@ import ( from: ctr path: "/netlify/deployUrl" } - }.read.data + }.read.data @dagger(output) // Logs URL for this deployment logsUrl: { @@ -55,7 +55,7 @@ import ( from: ctr path: "/netlify/logsUrl" } - }.read.data + }.read.data @dagger(output) ctr: os.#Container & { image: alpine.#Image & { diff --git a/stdlib/terraform/terraform.cue b/stdlib/terraform/terraform.cue index d2d32c53..55310d26 100644 --- a/stdlib/terraform/terraform.cue +++ b/stdlib/terraform/terraform.cue @@ -8,13 +8,13 @@ import ( ) #Configuration: { - version: string | *"latest" + version: string | *"latest" @dagger(input) - source: dagger.#Artifact + source: dagger.#Artifact @dagger(input) - tfvars?: [string]: _ + tfvars?: [string]: _ @dagger(input) - env: [string]: string + env: [string]: string @dagger(input) state: #up: [ op.#FetchContainer & { @@ -61,5 +61,5 @@ import ( }, ] ... - } + } @dagger(output) }