crane
Crane is a tool for managing container images
Installation
dagger install github.com/opopops/daggerverse/crane@v1.5.3Entrypoint
Return Type
Crane !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| image | String | "cgr.dev/chainguard/wolfi-base:latest" | wolfi-base image |
| version | String | "0.20.6" | Crane version |
| user | String | "65532" | Image user |
Example
dagger -m github.com/opopops/daggerverse/crane@8ba7c0378a50657d7b7ec9ce1df67f2fbee562ae call \
func (m *MyModule) Example() *dagger.Crane {
return dag.
Crane()
}@function
def example() -> dagger.Crane:
return (
dag.crane()
)@func()
example(): Crane {
return dag
.crane()
}Types
Crane 🔗
Crane module
container() 🔗
Returns container
Return Type
Container ! Example
dagger -m github.com/opopops/daggerverse/crane@8ba7c0378a50657d7b7ec9ce1df67f2fbee562ae call \
containerfunc (m *MyModule) Example() *dagger.Container {
return dag.
Crane().
Container()
}@function
def example() -> dagger.Container:
return (
dag.crane()
.container()
)@func()
example(): Container {
return dag
.crane()
.container()
}copy() 🔗
Copy images.
Return Type
String !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| source | String ! | - | Source image |
| target | String ! | - | Target image |
| platform | Scalar | null | Specifies the platform |
| jobs | Integer | null | The maximum number of concurrent copies |
| allTags | Boolean | false | Copy all tags from SRC to DST |
| noClobber | Boolean | false | Avoid overwriting existing tags in DST |
Example
dagger -m github.com/opopops/daggerverse/crane@8ba7c0378a50657d7b7ec9ce1df67f2fbee562ae call \
copy --source string --target stringfunc (m *MyModule) Example(ctx context.Context, source string, target string) string {
return dag.
Crane().
Copy(ctx, source, target)
}@function
async def example(source: str, target: str) -> str:
return await (
dag.crane()
.copy(source, target)
)@func()
async example(source: string, target: string): Promise<string> {
return dag
.crane()
.copy(source, target)
}digest() 🔗
Tag remote image without downloading it.
Return Type
String !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| image | String ! | - | Image |
| platform | Scalar | null | Specifies the platform |
| fullRef | Boolean | false | Print the full image reference by digest |
| tarball | File | null | Tarball containing the image |
Example
dagger -m github.com/opopops/daggerverse/crane@8ba7c0378a50657d7b7ec9ce1df67f2fbee562ae call \
digest --image stringfunc (m *MyModule) Example(ctx context.Context, image string) string {
return dag.
Crane().
Digest(ctx, image)
}@function
async def example(image: str) -> str:
return await (
dag.crane()
.digest(image)
)@func()
async example(image: string): Promise<string> {
return dag
.crane()
.digest(image)
}dockerConfig() 🔗
Returns the Docker config file
Return Type
File ! Example
dagger -m github.com/opopops/daggerverse/crane@8ba7c0378a50657d7b7ec9ce1df67f2fbee562ae call \
docker-configfunc (m *MyModule) Example() *dagger.File {
return dag.
Crane().
DockerConfig()
}@function
def example() -> dagger.File:
return (
dag.crane()
.docker_config()
)@func()
example(): File {
return dag
.crane()
.dockerConfig()
}manifest() 🔗
Returns the manifest file of an image
Return Type
File !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| image | String ! | - | Image |
| platform | Scalar | null | Specifies the platform |
Example
dagger -m github.com/opopops/daggerverse/crane@8ba7c0378a50657d7b7ec9ce1df67f2fbee562ae call \
manifest --image stringfunc (m *MyModule) Example(image string) *dagger.File {
return dag.
Crane().
Manifest(image)
}@function
def example(image: str) -> dagger.File:
return (
dag.crane()
.manifest(image)
)@func()
example(image: string): File {
return dag
.crane()
.manifest(image)
}push() 🔗
Push image from OCI layout dir
Return Type
String !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| path | Directory ! | - | OCI layout dir |
| image | String ! | - | Image tag |
| index | Boolean | false | Push a collection of images as a single index |
| platform | Scalar | null | Specifies the platform |
Example
dagger -m github.com/opopops/daggerverse/crane@8ba7c0378a50657d7b7ec9ce1df67f2fbee562ae call \
push --path DIR_PATH --image stringfunc (m *MyModule) Example(ctx context.Context, path *dagger.Directory, image string) string {
return dag.
Crane().
Push(ctx, path, image)
}@function
async def example(path: dagger.Directory, image: str) -> str:
return await (
dag.crane()
.push(path, image)
)@func()
async example(path: Directory, image: string): Promise<string> {
return dag
.crane()
.push(path, image)
}pushTarball() 🔗
Push image from tarball
Return Type
String !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| tarball | File ! | - | Image tarball |
| image | String ! | - | Image tag |
| index | Boolean | false | Push a collection of images as a single index |
| platform | Scalar | null | Specifies the platform |
Example
dagger -m github.com/opopops/daggerverse/crane@8ba7c0378a50657d7b7ec9ce1df67f2fbee562ae call \
push-tarball --tarball file:path --image stringfunc (m *MyModule) Example(ctx context.Context, tarball *dagger.File, image string) string {
return dag.
Crane().
PushTarball(ctx, tarball, image)
}@function
async def example(tarball: dagger.File, image: str) -> str:
return await (
dag.crane()
.push_tarball(tarball, image)
)@func()
async example(tarball: File, image: string): Promise<string> {
return dag
.crane()
.pushTarball(tarball, image)
}tag() 🔗
Tag remote image without downloading it.
Return Type
String !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| image | String ! | - | Image |
| tag | String ! | - | New tag |
| platform | Scalar | null | Specifies the platform |
Example
dagger -m github.com/opopops/daggerverse/crane@8ba7c0378a50657d7b7ec9ce1df67f2fbee562ae call \
tag --image string --tag stringfunc (m *MyModule) Example(ctx context.Context, image string, tag string) string {
return dag.
Crane().
Tag(ctx, image, tag)
}@function
async def example(image: str, tag: str) -> str:
return await (
dag.crane()
.tag(image, tag)
)@func()
async example(image: string, tag: string): Promise<string> {
return dag
.crane()
.tag(image, tag)
}withCopy() 🔗
Copy images (For chaining).
Return Type
Crane !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| source | String ! | - | Source image |
| target | String ! | - | Target image |
| platform | Scalar | null | Specifies the platform |
| jobs | Integer | null | No description provided |
| allTags | Boolean | false | Copy all tags from SRC to DST |
| noClobber | Boolean | false | Avoid overwriting existing tags in DST |
Example
dagger -m github.com/opopops/daggerverse/crane@8ba7c0378a50657d7b7ec9ce1df67f2fbee562ae call \
with-copy --source string --target stringfunc (m *MyModule) Example(source string, target string) *dagger.Crane {
return dag.
Crane().
WithCopy(source, target)
}@function
def example(source: str, target: str) -> dagger.Crane:
return (
dag.crane()
.with_copy(source, target)
)@func()
example(source: string, target: string): Crane {
return dag
.crane()
.withCopy(source, target)
}withDockerConfig() 🔗
Set Docker config file (for chaining)
Return Type
Crane !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| dockerConfig | File ! | - | Docker config file |
Example
dagger -m github.com/opopops/daggerverse/crane@8ba7c0378a50657d7b7ec9ce1df67f2fbee562ae call \
with-docker-config --docker-config file:pathfunc (m *MyModule) Example(dockerConfig *dagger.File) *dagger.Crane {
return dag.
Crane().
WithDockerConfig(dockerConfig)
}@function
def example(docker_config: dagger.File) -> dagger.Crane:
return (
dag.crane()
.with_docker_config(docker_config)
)@func()
example(dockerConfig: File): Crane {
return dag
.crane()
.withDockerConfig(dockerConfig)
}withPush() 🔗
Push image from OCI layout dir (For chaining)
Return Type
Crane !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| path | Directory ! | - | OCI layout dir |
| image | String ! | - | Image tag |
| index | Boolean | false | Push a collection of images as a single index |
| platform | Scalar | null | Specifies the platform |
Example
dagger -m github.com/opopops/daggerverse/crane@8ba7c0378a50657d7b7ec9ce1df67f2fbee562ae call \
with-push --path DIR_PATH --image stringfunc (m *MyModule) Example(path *dagger.Directory, image string) *dagger.Crane {
return dag.
Crane().
WithPush(path, image)
}@function
def example(path: dagger.Directory, image: str) -> dagger.Crane:
return (
dag.crane()
.with_push(path, image)
)@func()
example(path: Directory, image: string): Crane {
return dag
.crane()
.withPush(path, image)
}withPushTarball() 🔗
Push image from tarball (For chaining)
Return Type
Crane !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| tarball | File ! | - | Image tarball |
| image | String ! | - | Image tag |
| platform | Scalar | null | Specifies the platform |
Example
dagger -m github.com/opopops/daggerverse/crane@8ba7c0378a50657d7b7ec9ce1df67f2fbee562ae call \
with-push-tarball --tarball file:path --image stringfunc (m *MyModule) Example(tarball *dagger.File, image string) *dagger.Crane {
return dag.
Crane().
WithPushTarball(tarball, image)
}@function
def example(tarball: dagger.File, image: str) -> dagger.Crane:
return (
dag.crane()
.with_push_tarball(tarball, image)
)@func()
example(tarball: File, image: string): Crane {
return dag
.crane()
.withPushTarball(tarball, image)
}withRegistryAuth() 🔗
Authenticate with registry
Return Type
Crane !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| username | String ! | - | Registry username |
| secret | Secret ! | - | Registry password |
| address | String | "docker.io" | Registry host |
Example
dagger -m github.com/opopops/daggerverse/crane@8ba7c0378a50657d7b7ec9ce1df67f2fbee562ae call \
with-registry-auth --username string --secret env:MYSECRETfunc (m *MyModule) Example(username string, secret *dagger.Secret) *dagger.Crane {
return dag.
Crane().
WithRegistryAuth(username, secret)
}@function
def example(username: str, secret: dagger.Secret) -> dagger.Crane:
return (
dag.crane()
.with_registry_auth(username, secret)
)@func()
example(username: string, secret: Secret): Crane {
return dag
.crane()
.withRegistryAuth(username, secret)
}withTag() 🔗
Tag remote image without downloading it (For chaining).
Return Type
Crane !Arguments
| Name | Type | Default Value | Description |
|---|---|---|---|
| image | String ! | - | Image |
| tag | String ! | - | New tag |
| platform | Scalar | null | Specifies the platform |
Example
dagger -m github.com/opopops/daggerverse/crane@8ba7c0378a50657d7b7ec9ce1df67f2fbee562ae call \
with-tag --image string --tag stringfunc (m *MyModule) Example(image string, tag string) *dagger.Crane {
return dag.
Crane().
WithTag(image, tag)
}@function
def example(image: str, tag: str) -> dagger.Crane:
return (
dag.crane()
.with_tag(image, tag)
)@func()
example(image: string, tag: string): Crane {
return dag
.crane()
.withTag(image, tag)
}