Compare commits
4 Commits
update-pul
...
debug-imag
| Author | SHA1 | Date | |
|---|---|---|---|
| 3d88c1443f | |||
|
|
e956539593 | ||
|
|
c83bd01570 | ||
|
|
9802dd5ed4 |
2
.github/workflows/build.yml
vendored
2
.github/workflows/build.yml
vendored
@@ -345,7 +345,7 @@ jobs:
|
|||||||
requested-token-type: urn:pulumi:token-type:access_token:organization
|
requested-token-type: urn:pulumi:token-type:access_token:organization
|
||||||
export-environment-variables: false
|
export-environment-variables: false
|
||||||
- name: Export AWS Credentials
|
- name: Export AWS Credentials
|
||||||
uses: pulumi/esc-action@197ccaa42ab49560ce838a3010eb8345ce086896
|
uses: pulumi/esc-action@f3cfbabf37488463817366338165b92b5f99117e
|
||||||
env:
|
env:
|
||||||
PULUMI_ACCESS_TOKEN: ${{ steps.generate_pulumi_token.outputs.pulumi-access-token }}
|
PULUMI_ACCESS_TOKEN: ${{ steps.generate_pulumi_token.outputs.pulumi-access-token }}
|
||||||
with:
|
with:
|
||||||
|
|||||||
2
.github/workflows/claude.yml
vendored
2
.github/workflows/claude.yml
vendored
@@ -45,7 +45,7 @@ jobs:
|
|||||||
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
|
||||||
id: esc-secrets
|
id: esc-secrets
|
||||||
name: Fetch secrets from ESC
|
name: Fetch secrets from ESC
|
||||||
uses: pulumi/esc-action@197ccaa42ab49560ce838a3010eb8345ce086896
|
uses: pulumi/esc-action@f3cfbabf37488463817366338165b92b5f99117e
|
||||||
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
|
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|||||||
2
.github/workflows/prerelease.yml
vendored
2
.github/workflows/prerelease.yml
vendored
@@ -301,7 +301,7 @@ jobs:
|
|||||||
requested-token-type: urn:pulumi:token-type:access_token:organization
|
requested-token-type: urn:pulumi:token-type:access_token:organization
|
||||||
export-environment-variables: false
|
export-environment-variables: false
|
||||||
- name: Export AWS Credentials
|
- name: Export AWS Credentials
|
||||||
uses: pulumi/esc-action@197ccaa42ab49560ce838a3010eb8345ce086896
|
uses: pulumi/esc-action@f3cfbabf37488463817366338165b92b5f99117e
|
||||||
env:
|
env:
|
||||||
PULUMI_ACCESS_TOKEN: ${{ steps.generate_pulumi_token.outputs.pulumi-access-token }}
|
PULUMI_ACCESS_TOKEN: ${{ steps.generate_pulumi_token.outputs.pulumi-access-token }}
|
||||||
with:
|
with:
|
||||||
|
|||||||
2
.github/workflows/release.yml
vendored
2
.github/workflows/release.yml
vendored
@@ -301,7 +301,7 @@ jobs:
|
|||||||
requested-token-type: urn:pulumi:token-type:access_token:organization
|
requested-token-type: urn:pulumi:token-type:access_token:organization
|
||||||
export-environment-variables: false
|
export-environment-variables: false
|
||||||
- name: Export AWS Credentials
|
- name: Export AWS Credentials
|
||||||
uses: pulumi/esc-action@197ccaa42ab49560ce838a3010eb8345ce086896
|
uses: pulumi/esc-action@f3cfbabf37488463817366338165b92b5f99117e
|
||||||
env:
|
env:
|
||||||
PULUMI_ACCESS_TOKEN: ${{ steps.generate_pulumi_token.outputs.pulumi-access-token }}
|
PULUMI_ACCESS_TOKEN: ${{ steps.generate_pulumi_token.outputs.pulumi-access-token }}
|
||||||
with:
|
with:
|
||||||
|
|||||||
2
.github/workflows/run-acceptance-tests.yml
vendored
2
.github/workflows/run-acceptance-tests.yml
vendored
@@ -452,7 +452,7 @@ jobs:
|
|||||||
requested-token-type: urn:pulumi:token-type:access_token:organization
|
requested-token-type: urn:pulumi:token-type:access_token:organization
|
||||||
export-environment-variables: false
|
export-environment-variables: false
|
||||||
- name: Export AWS Credentials
|
- name: Export AWS Credentials
|
||||||
uses: pulumi/esc-action@197ccaa42ab49560ce838a3010eb8345ce086896
|
uses: pulumi/esc-action@f3cfbabf37488463817366338165b92b5f99117e
|
||||||
env:
|
env:
|
||||||
PULUMI_ACCESS_TOKEN: ${{ steps.generate_pulumi_token.outputs.pulumi-access-token }}
|
PULUMI_ACCESS_TOKEN: ${{ steps.generate_pulumi_token.outputs.pulumi-access-token }}
|
||||||
with:
|
with:
|
||||||
|
|||||||
@@ -5,6 +5,6 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"typescript": "^4.0.0",
|
"typescript": "^4.0.0",
|
||||||
"@pulumi/pulumi": "3.243.0"
|
"@pulumi/pulumi": "3.244.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,6 +4,6 @@
|
|||||||
"@types/node": "^20.0.0"
|
"@types/node": "^20.0.0"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@pulumi/pulumi": "3.243.0"
|
"@pulumi/pulumi": "3.244.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -424,10 +424,10 @@
|
|||||||
resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570"
|
resolved "https://registry.yarnpkg.com/@protobufjs/utf8/-/utf8-1.1.0.tgz#a777360b5b39a1a2e5106f8e858f2fd2d060c570"
|
||||||
integrity sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==
|
integrity sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==
|
||||||
|
|
||||||
"@pulumi/pulumi@3.243.0":
|
"@pulumi/pulumi@3.244.0":
|
||||||
version "3.243.0"
|
version "3.244.0"
|
||||||
resolved "https://registry.yarnpkg.com/@pulumi/pulumi/-/pulumi-3.243.0.tgz#a75ae019b1091f3f97351bf84d66b5d3c2e8ce0f"
|
resolved "https://registry.yarnpkg.com/@pulumi/pulumi/-/pulumi-3.244.0.tgz#cb99cb9ae446d8ebdf1ee3e7de32d537a9a4a2f9"
|
||||||
integrity sha512-KRIBErgCj9+gsEG7fOo3xRvvhq3VGw8gnzVpbFiyW2Zqr84MCIKDDVmj4MZDt/61KOn3OapI4ia1/6dSg3qwzQ==
|
integrity sha512-vJnzsxPalz0mtatiheaVvZmImiBIufaPyXRpfABLM8l6Q/sQJHp/BDdX359XeAdxg1uuNTAxIQEgoIDjQYKlMg==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@grpc/grpc-js" "^1.10.1"
|
"@grpc/grpc-js" "^1.10.1"
|
||||||
"@logdna/tail-file" "^2.0.6"
|
"@logdna/tail-file" "^2.0.6"
|
||||||
|
|||||||
@@ -4,6 +4,6 @@
|
|||||||
"@types/node": "^20.0.0"
|
"@types/node": "^20.0.0"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@pulumi/pulumi": "3.243.0"
|
"@pulumi/pulumi": "3.244.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,6 +5,6 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"typescript": "^4.0.0",
|
"typescript": "^4.0.0",
|
||||||
"@pulumi/pulumi": "3.243.0"
|
"@pulumi/pulumi": "3.244.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -68,7 +68,8 @@ type Image struct {
|
|||||||
|
|
||||||
// Annotate provides a description of the Image resource.
|
// Annotate provides a description of the Image resource.
|
||||||
func (i *Image) Annotate(a infer.Annotator) {
|
func (i *Image) Annotate(a infer.Annotator) {
|
||||||
a.Describe(&i, dedent(`
|
a.Describe(
|
||||||
|
&i, dedent(`
|
||||||
A Docker image built using buildx -- Docker's interface to the improved
|
A Docker image built using buildx -- Docker's interface to the improved
|
||||||
BuildKit backend.
|
BuildKit backend.
|
||||||
|
|
||||||
@@ -79,8 +80,8 @@ func (i *Image) Annotate(a infer.Annotator) {
|
|||||||
We will strive to keep APIs and behavior as stable as possible, but we
|
We will strive to keep APIs and behavior as stable as possible, but we
|
||||||
cannot guarantee stability until version 1.0.
|
cannot guarantee stability until version 1.0.
|
||||||
`)+
|
`)+
|
||||||
"\n\n"+_migration+
|
"\n\n"+_migration+
|
||||||
"\n\n"+_imageExamples,
|
"\n\n"+_imageExamples,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -302,7 +303,8 @@ type ImageState struct {
|
|||||||
func (is *ImageState) Annotate(a infer.Annotator) {
|
func (is *ImageState) Annotate(a infer.Annotator) {
|
||||||
is.ImageArgs.Annotate(a)
|
is.ImageArgs.Annotate(a)
|
||||||
|
|
||||||
a.Describe(&is.Digest, dedent(`
|
a.Describe(&is.Digest, dedent(
|
||||||
|
`
|
||||||
A SHA256 digest of the image if it was exported to a registry or
|
A SHA256 digest of the image if it was exported to a registry or
|
||||||
elsewhere.
|
elsewhere.
|
||||||
|
|
||||||
@@ -434,7 +436,13 @@ func (ia *ImageArgs) normalize(preview bool) ImageArgs {
|
|||||||
func (ia *ImageArgs) buildable() bool {
|
func (ia *ImageArgs) buildable() bool {
|
||||||
// We can build the given inputs if filtering unknowns is a no-op.
|
// We can build the given inputs if filtering unknowns is a no-op.
|
||||||
filtered := ia.normalize(true)
|
filtered := ia.normalize(true)
|
||||||
return reflect.DeepEqual(ia, &filtered)
|
equal := reflect.DeepEqual(ia, &filtered)
|
||||||
|
|
||||||
|
if !equal {
|
||||||
|
fmt.Printf("Not buildable:\n\tArgs => %v\n\tNormalize => %v", ia, &filtered)
|
||||||
|
}
|
||||||
|
|
||||||
|
return equal
|
||||||
}
|
}
|
||||||
|
|
||||||
// isExported returns true if the args include a registry export.
|
// isExported returns true if the args include a registry export.
|
||||||
@@ -499,13 +507,15 @@ func (ia ImageArgs) toBuild(
|
|||||||
if len(ia.Exports) == 0 && !ia.Push && !ia.Load {
|
if len(ia.Exports) == 0 && !ia.Push && !ia.Load {
|
||||||
provider.GetLogger(ctx).Warning(
|
provider.GetLogger(ctx).Warning(
|
||||||
"No exports were specified so the build will only remain in the local build cache. " +
|
"No exports were specified so the build will only remain in the local build cache. " +
|
||||||
"Use `push` to upload the image to a registry, or silence this warning with a `cacheonly` export.")
|
"Use `push` to upload the image to a registry, or silence this warning with a `cacheonly` export.",
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
if len(opts.Platforms) > 1 && len(opts.CacheTo) > 0 {
|
if len(opts.Platforms) > 1 && len(opts.CacheTo) > 0 {
|
||||||
provider.GetLogger(ctx).Warning(
|
provider.GetLogger(ctx).Warning(
|
||||||
"Caching doesn't work reliably with multi-platform builds (https://github.com/docker/buildx/discussions/1382). " +
|
"Caching doesn't work reliably with multi-platform builds (https://github.com/docker/buildx/discussions/1382). " +
|
||||||
"Instead, perform one cached build per platform and create an Index to join them all together.")
|
"Instead, perform one cached build per platform and create an Index to join them all together.",
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
return &build{
|
return &build{
|
||||||
@@ -523,7 +533,8 @@ func (ia *ImageArgs) validate(supportsMultipleExports, preview bool) (controller
|
|||||||
|
|
||||||
if !supportsMultipleExports {
|
if !supportsMultipleExports {
|
||||||
if len(ia.Exports) > 1 {
|
if len(ia.Exports) > 1 {
|
||||||
multierr = errors.Join(multierr,
|
multierr = errors.Join(
|
||||||
|
multierr,
|
||||||
newCheckFailure(errors.New("multiple exports require a v0.13 buildkit daemon or newer"), "exports"),
|
newCheckFailure(errors.New("multiple exports require a v0.13 buildkit daemon or newer"), "exports"),
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
@@ -537,7 +548,8 @@ func (ia *ImageArgs) validate(supportsMultipleExports, preview bool) (controller
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
if len(ia.Exports) > 0 && (ia.Push || ia.Load) {
|
if len(ia.Exports) > 0 && (ia.Push || ia.Load) {
|
||||||
multierr = errors.Join(multierr,
|
multierr = errors.Join(
|
||||||
|
multierr,
|
||||||
newCheckFailure(errors.New("multiple exports require a v0.13 buildkit daemon or newer"), "exports"),
|
newCheckFailure(errors.New("multiple exports require a v0.13 buildkit daemon or newer"), "exports"),
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
@@ -778,7 +790,8 @@ func (i *Image) Update(
|
|||||||
ctx context.Context,
|
ctx context.Context,
|
||||||
req infer.UpdateRequest[ImageArgs, ImageState],
|
req infer.UpdateRequest[ImageArgs, ImageState],
|
||||||
) (infer.UpdateResponse[ImageState], error) {
|
) (infer.UpdateResponse[ImageState], error) {
|
||||||
resp, err := i.Create(ctx,
|
resp, err := i.Create(
|
||||||
|
ctx,
|
||||||
infer.CreateRequest[ImageArgs]{Name: req.ID, Inputs: req.Inputs, DryRun: req.DryRun},
|
infer.CreateRequest[ImageArgs]{Name: req.ID, Inputs: req.Inputs, DryRun: req.DryRun},
|
||||||
)
|
)
|
||||||
return infer.UpdateResponse[ImageState]{Output: resp.Output}, err
|
return infer.UpdateResponse[ImageState]{Output: resp.Output}, err
|
||||||
|
|||||||
Reference in New Issue
Block a user