Europa: integrate core packages, separate universe
Signed-off-by: Solomon Hykes <solomon@dagger.io>
This commit is contained in:
@@ -3,7 +3,7 @@ package dagger
|
||||
|
||||
import (
|
||||
"alpha.dagger.io/dagger/op"
|
||||
"alpha.dagger.io/dagger/engine"
|
||||
"alpha.dagger.io/europa/dagger/engine"
|
||||
)
|
||||
|
||||
// An artifact such as source code checkout, container image, binary archive...
|
||||
|
@@ -1,45 +0,0 @@
|
||||
package engine
|
||||
|
||||
// A ref is an address for a remote container image
|
||||
//
|
||||
// Examples:
|
||||
// - "index.docker.io/dagger"
|
||||
// - "dagger"
|
||||
// - "index.docker.io/dagger:latest"
|
||||
// - "index.docker.io/dagger:latest@sha256:a89cb097693dd354de598d279c304a1c73ee550fbfff6d9ee515568e0c749cfe"
|
||||
#Ref: string
|
||||
|
||||
// Container image config. See [OCI](https://opencontainers.org/).
|
||||
// Spec left open on purpose to account for additional fields.
|
||||
// [Image Spec](https://github.com/opencontainers/image-spec/blob/main/specs-go/v1/config.go)
|
||||
// [Docker Superset](https://github.com/moby/buildkit/blob/master/frontend/dockerfile/dockerfile2llb/image.go)
|
||||
#ImageConfig: {
|
||||
Env?: [...string]
|
||||
User?: string
|
||||
Cmd?: [...string]
|
||||
...
|
||||
}
|
||||
|
||||
// Download a container image from a remote repository
|
||||
#Pull: {
|
||||
_type: "Pull"
|
||||
|
||||
// Repository source ref
|
||||
source: #Ref
|
||||
|
||||
// Authentication
|
||||
auth: [...{
|
||||
target: string
|
||||
username: string
|
||||
secret: string | #Secret
|
||||
}]
|
||||
|
||||
// Root filesystem of downloaded image
|
||||
output: #FS
|
||||
|
||||
// Image digest
|
||||
digest: string
|
||||
|
||||
// Downloaded container image config
|
||||
config: #ImageConfig
|
||||
}
|
@@ -1,41 +0,0 @@
|
||||
package engine
|
||||
|
||||
// A deployment plan executed by `dagger up`
|
||||
#Plan: {
|
||||
context: #Context
|
||||
actions: [string]: _
|
||||
}
|
||||
|
||||
// FIXME: Platform spec here
|
||||
#Platform: string
|
||||
|
||||
#Context: {
|
||||
// Platform to target
|
||||
platform?: #Platform
|
||||
|
||||
// Import directories
|
||||
imports: [string]: {
|
||||
_type: "Import"
|
||||
|
||||
path: string
|
||||
include?: [...string]
|
||||
exclude?: [...string]
|
||||
fs: #FS
|
||||
}
|
||||
|
||||
// Securely load external secrets
|
||||
secrets: [string]: {
|
||||
// Secrets can be securely mounted into action containers as a file
|
||||
contents: #Secret
|
||||
|
||||
{
|
||||
_type: "SecretFile"
|
||||
// Read secret from a file
|
||||
path: string
|
||||
} | {
|
||||
_type: "SecretEnv"
|
||||
// Read secret from an environment variable ON THE CLIENT MACHINE
|
||||
envvar: string
|
||||
}
|
||||
}
|
||||
}
|
@@ -1,29 +0,0 @@
|
||||
package engine
|
||||
|
||||
// A reference to a filesystem tree.
|
||||
// For example:
|
||||
// - The root filesystem of a container
|
||||
// - A source code repository
|
||||
// - A directory containing binary artifacts
|
||||
// Rule of thumb: if it fits in a tar archive, it fits in a #FS.
|
||||
#FS: {
|
||||
_fs: id: string
|
||||
}
|
||||
|
||||
// A reference to an external secret, for example:
|
||||
// - A password
|
||||
// - A SSH private key
|
||||
// - An API token
|
||||
// Secrets are never merged in the Cue tree. They can only be used
|
||||
// by a special filesystem mount designed to minimize leak risk.
|
||||
#Secret: {
|
||||
_secret: id: string
|
||||
}
|
||||
|
||||
// A reference to a network service endpoint, for example:
|
||||
// - A TCP or UDP port
|
||||
// - A unix or npipe socket
|
||||
// - An HTTPS endpoint
|
||||
#Service: {
|
||||
_service: id: string
|
||||
}
|
Reference in New Issue
Block a user