@pulumi/docker-build 0.0.1-alpha.3 → 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,106 +1,23 @@
1
- # Pulumi Native Provider Boilerplate
1
+ [![Slack](http://www.pulumi.com/images/docs/badges/slack.svg)](https://slack.pulumi.com)
2
+ [![NPM version](https://badge.fury.io/js/%40pulumi%2fdocker-build.svg)](https://www.npmjs.com/package/@pulumi/docker-build)
3
+ [![Python version](https://badge.fury.io/py/pulumi-docker-build.svg)](https://pypi.org/project/pulumi-docker-build)
4
+ [![NuGet version](https://badge.fury.io/nu/pulumi.dockerbuild.svg)](https://badge.fury.io/nu/pulumi.dockerbuild)
5
+ [![PkgGoDev](https://pkg.go.dev/badge/github.com/pulumi/pulumi-docker-build/sdk/go)](https://pkg.go.dev/github.com/pulumi/pulumi-docker-build/sdk/go)
6
+ [![License](https://img.shields.io/npm/l/%40pulumi%2Fpulumi.svg)](https://github.com/pulumi/pulumi-docker-build/blob/main/LICENSE)
2
7
 
3
- This repository is a boilerplate showing how to create and locally test a native Pulumi provider.
8
+ # Docker-Build Resource Provider
4
9
 
5
- ## Authoring a Pulumi Native Provider
10
+ A [Pulumi](http://pulumi.com) provider for building modern Docker images with [buildx](https://docs.docker.com/build/architecture/) and [BuildKit](https://docs.docker.com/build/buildkit/).
6
11
 
7
- This boilerplate creates a working Pulumi-owned provider named `xyz`.
8
- It implements a random number generator that you can [build and test out for yourself](#test-against-the-example) and then replace the Random code with code specific to your provider.
12
+ Not to be confused with the earlier
13
+ [Docker](http://github.com/pulumi/pulumi-docker) provider, which is still
14
+ appropriate for managing resources unrelated to building images.
9
15
 
16
+ | Provider | Use cases |
17
+ | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
18
+ | `@pulumi/docker-build` | Anything related to building images with `docker build`. |
19
+ | `@pulumi/docker` | Everything else -- including running containers and creating networks. |
10
20
 
11
- ### Prerequisites
21
+ ## Reference
12
22
 
13
- Prerequisites for this repository are already satisfied by the [Pulumi Devcontainer](https://github.com/pulumi/devcontainer) if you are using Github Codespaces, or VSCode.
14
-
15
- If you are not using VSCode, you will need to ensure the following tools are installed and present in your `$PATH`:
16
-
17
- * [`pulumictl`](https://github.com/pulumi/pulumictl#installation)
18
- * [Go 1.21](https://golang.org/dl/) or 1.latest
19
- * [NodeJS](https://nodejs.org/en/) 14.x. We recommend using [nvm](https://github.com/nvm-sh/nvm) to manage NodeJS installations.
20
- * [Yarn](https://yarnpkg.com/)
21
- * [TypeScript](https://www.typescriptlang.org/)
22
- * [Python](https://www.python.org/downloads/) (called as `python3`). For recent versions of MacOS, the system-installed version is fine.
23
- * [.NET](https://dotnet.microsoft.com/download)
24
-
25
-
26
- ### Build & test the boilerplate XYZ provider
27
-
28
- 1. Create a new Github CodeSpaces environment using this repository.
29
- 1. Open a terminal in the CodeSpaces environment.
30
- 1. Run `make build install` to build and install the provider.
31
- 1. Run `make gen_examples` to generate the example programs in `examples/` off of the source `examples/yaml` example program.
32
- 1. Run `make up` to run the example program in `examples/yaml`.
33
- 1. Run `make down` to tear down the example program.
34
-
35
- ### Creating a new provider repository
36
-
37
- Pulumi offers this repository as a [GitHub template repository](https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-repository-from-a-template) for convenience. From this repository:
38
-
39
- 1. Click "Use this template".
40
- 1. Set the following options:
41
- * Owner: pulumi
42
- * Repository name: pulumi-xyz-native (replace "xyz" with the name of your provider)
43
- * Description: Pulumi provider for xyz
44
- * Repository type: Public
45
- 1. Clone the generated repository.
46
-
47
- From the templated repository:
48
-
49
- 1. Search-replace `xyz` with the name of your desired provider.
50
-
51
- #### Build the provider and install the plugin
52
-
53
- ```bash
54
- $ make build install
55
- ```
56
-
57
- This will:
58
-
59
- 1. Create the SDK codegen binary and place it in a `./bin` folder (gitignored)
60
- 2. Create the provider binary and place it in the `./bin` folder (gitignored)
61
- 3. Generate the dotnet, Go, Node, and Python SDKs and place them in the `./sdk` folder
62
- 4. Install the provider on your machine.
63
-
64
- #### Test against the example
65
-
66
- ```bash
67
- $ cd examples/simple
68
- $ yarn link @pulumi/xyz
69
- $ yarn install
70
- $ pulumi stack init test
71
- $ pulumi up
72
- ```
73
-
74
- Now that you have completed all of the above steps, you have a working provider that generates a random string for you.
75
-
76
- #### A brief repository overview
77
-
78
- You now have:
79
-
80
- 1. A `provider/` folder containing the building and implementation logic
81
- 1. `cmd/pulumi-resource-xyz/main.go` - holds the provider's sample implementation logic.
82
- 2. `deployment-templates` - a set of files to help you around deployment and publication
83
- 3. `sdk` - holds the generated code libraries created by `pulumi-gen-xyz/main.go`
84
- 4. `examples` a folder of Pulumi programs to try locally and/or use in CI.
85
- 5. A `Makefile` and this `README`.
86
-
87
- #### Additional Details
88
-
89
- This repository depends on the pulumi-go-provider library. For more details on building providers, please check
90
- the [Pulumi Go Provider docs](https://github.com/pulumi/pulumi-go-provider).
91
-
92
- ### Build Examples
93
-
94
- Create an example program using the resources defined in your provider, and place it in the `examples/` folder.
95
-
96
- You can now repeat the steps for [build, install, and test](#test-against-the-example).
97
-
98
- ## Configuring CI and releases
99
-
100
- 1. Follow the instructions laid out in the [deployment templates](./deployment-templates/README-DEPLOYMENT.md).
101
-
102
- ## References
103
-
104
- Other resources/examples for implementing providers:
105
- * [Pulumi Command provider](https://github.com/pulumi/pulumi-command/blob/master/provider/pkg/provider/provider.go)
106
- * [Pulumi Go Provider repository](https://github.com/pulumi/pulumi-go-provider)
23
+ For more information, including examples and migration guidance, please see the Docker-Build provider's detailed [API documentation](https://www.pulumi.com/registry/packages/docker-build/).
package/image.d.ts CHANGED
@@ -8,20 +8,14 @@ import * as enums from "./types/enums";
8
8
  *
9
9
  * ## Stability
10
10
  *
11
- * **This resource is experimental and subject to change.**
11
+ * **This resource is pre-1.0 and in public preview.**
12
12
  *
13
- * API types are unstable. Subsequent releases _may_ require manual edits
14
- * to your state file(s) in order to adopt API changes.
13
+ * We will strive to keep APIs and behavior as stable as possible, but we
14
+ * cannot guarantee stability until version 1.0.
15
15
  *
16
- * `retainOnDelete: true` is recommended with this resource until it is
17
- * stable. This enables future API changes to be adopted more easily by renaming
18
- * resources.
16
+ * ## Migrating Pulumi Docker v3 and v4 Image resources
19
17
  *
20
- * Only use this resource if you understand and accept the risks.
21
- *
22
- * ## Migrating v3 and v4 Image resources
23
- *
24
- * The `Image` resource provides a superset of functionality over the `Image` resources available in versions 3 and 4 of the Pulumi Docker provider.
18
+ * This provider's `Image` resource provides a superset of functionality over the `Image` resources available in versions 3 and 4 of the Pulumi Docker provider.
25
19
  * Existing `Image` resources can be converted to the docker-build `Image` resources with minor modifications.
26
20
  *
27
21
  * ### Behavioral differences
@@ -35,19 +29,17 @@ import * as enums from "./types/enums";
35
29
  *
36
30
  * Version `4.x` changed build-on-preview behavior to be opt-in.
37
31
  * By default, `v4.x` `Image` resources do _not_ build during previews, but this behavior can be toggled with the `buildOnPreview` option.
38
- * Some users felt this made previews in CI less helpful because they no longer detected bad images by default.
32
+ * Several users reported outages due to the default behavior allowing bad images to accidentally sneak through CI.
39
33
  *
40
- * The default behavior of the `Image` resource has been changed to strike a better balance between CI use cases and manual updates.
41
- * By default, Pulumi will now only build `Image` resources during previews when it detects a CI environment like GitHub Actions.
42
- * Previews run in non-CI environments will not build images.
43
- * This behavior is still configurable with `buildOnPreview`.
34
+ * The default behavior of this provider's `Image` resource is similar to `3.x` and will build images during previews.
35
+ * This behavior can be changed by specifying `buildOnPreview`.
44
36
  *
45
37
  * #### Push behavior
46
38
  *
47
39
  * Versions `3.x` and `4.x` of the Pulumi Docker provider attempt to push images to remote registries by default.
48
40
  * They expose a `skipPush: true` option to disable pushing.
49
41
  *
50
- * The `Image` resource matches the Docker CLI's behavior and does not push images anywhere by default.
42
+ * This provider's `Image` resource matches the Docker CLI's behavior and does not push images anywhere by default.
51
43
  *
52
44
  * To push images to a registry you can include `push: true` (equivalent to Docker's `--push` flag) or configure an `export` of type `registry` (equivalent to Docker's `--output type=registry`).
53
45
  * Like Docker, if an image is configured without exports you will see a warning with instructions for how to enable pushing, but the build will still proceed normally.
@@ -165,7 +157,7 @@ import * as enums from "./types/enums";
165
157
  * context: {
166
158
  * location: "../app",
167
159
  * },
168
- * targets: ["mytarget"],
160
+ * target: "mytarget",
169
161
  * buildArgs: {
170
162
  * MY_BUILD_ARG: "foo",
171
163
  * },
@@ -224,7 +216,7 @@ import * as enums from "./types/enums";
224
216
  * context: {
225
217
  * location: "../app",
226
218
  * },
227
- * targets: ["mytarget"],
219
+ * target: "mytarget",
228
220
  * buildArgs: {
229
221
  * MY_BUILD_ARG: "foo",
230
222
  * },
@@ -248,13 +240,13 @@ import * as enums from "./types/enums";
248
240
  * ```typescript
249
241
  * import * as pulumi from "@pulumi/pulumi";
250
242
  * import * as aws from "@pulumi/aws";
251
- * import * as dockerbuild from "@pulumi/dockerbuild";
243
+ * import * as docker_build from "@pulumi/docker-build";
252
244
  *
253
245
  * const ecrRepository = new aws.ecr.Repository("ecr-repository", {});
254
246
  * const authToken = aws.ecr.getAuthorizationTokenOutput({
255
247
  * registryId: ecrRepository.registryId,
256
248
  * });
257
- * const myImage = new dockerbuild.Image("my-image", {
249
+ * const myImage = new docker_build.Image("my-image", {
258
250
  * cacheFrom: [{
259
251
  * registry: {
260
252
  * ref: pulumi.interpolate`${ecrRepository.repositoryUrl}:cache`,
@@ -284,25 +276,26 @@ import * as enums from "./types/enums";
284
276
  *
285
277
  * ```typescript
286
278
  * import * as pulumi from "@pulumi/pulumi";
287
- * import * as dockerbuild from "@pulumi/dockerbuild";
279
+ * import * as docker_build from "@pulumi/docker-build";
288
280
  *
289
- * const image = new dockerbuild.Image("image", {
281
+ * const image = new docker_build.Image("image", {
290
282
  * context: {
291
283
  * location: "app",
292
284
  * },
293
285
  * platforms: [
294
- * dockerbuild.Platform.Plan9_amd64,
295
- * dockerbuild.Platform.Plan9_386,
286
+ * docker_build.Platform.Plan9_amd64,
287
+ * docker_build.Platform.Plan9_386,
296
288
  * ],
289
+ * push: false,
297
290
  * });
298
291
  * ```
299
292
  * ### Registry export
300
293
  *
301
294
  * ```typescript
302
295
  * import * as pulumi from "@pulumi/pulumi";
303
- * import * as dockerbuild from "@pulumi/dockerbuild";
296
+ * import * as docker_build from "@pulumi/docker-build";
304
297
  *
305
- * const image = new dockerbuild.Image("image", {
298
+ * const image = new docker_build.Image("image", {
306
299
  * context: {
307
300
  * location: "app",
308
301
  * },
@@ -320,9 +313,9 @@ import * as enums from "./types/enums";
320
313
  *
321
314
  * ```typescript
322
315
  * import * as pulumi from "@pulumi/pulumi";
323
- * import * as dockerbuild from "@pulumi/dockerbuild";
316
+ * import * as docker_build from "@pulumi/docker-build";
324
317
  *
325
- * const image = new dockerbuild.Image("image", {
318
+ * const image = new docker_build.Image("image", {
326
319
  * cacheFrom: [{
327
320
  * local: {
328
321
  * src: "tmp/cache",
@@ -331,21 +324,22 @@ import * as enums from "./types/enums";
331
324
  * cacheTo: [{
332
325
  * local: {
333
326
  * dest: "tmp/cache",
334
- * mode: dockerbuild.CacheMode.Max,
327
+ * mode: docker_build.CacheMode.Max,
335
328
  * },
336
329
  * }],
337
330
  * context: {
338
331
  * location: "app",
339
332
  * },
333
+ * push: false,
340
334
  * });
341
335
  * ```
342
336
  * ### Docker Build Cloud
343
337
  *
344
338
  * ```typescript
345
339
  * import * as pulumi from "@pulumi/pulumi";
346
- * import * as dockerbuild from "@pulumi/dockerbuild";
340
+ * import * as docker_build from "@pulumi/docker-build";
347
341
  *
348
- * const image = new dockerbuild.Image("image", {
342
+ * const image = new docker_build.Image("image", {
349
343
  * builder: {
350
344
  * name: "cloud-builder-name",
351
345
  * },
@@ -353,33 +347,36 @@ import * as enums from "./types/enums";
353
347
  * location: "app",
354
348
  * },
355
349
  * exec: true,
350
+ * push: false,
356
351
  * });
357
352
  * ```
358
353
  * ### Build arguments
359
354
  *
360
355
  * ```typescript
361
356
  * import * as pulumi from "@pulumi/pulumi";
362
- * import * as dockerbuild from "@pulumi/dockerbuild";
357
+ * import * as docker_build from "@pulumi/docker-build";
363
358
  *
364
- * const image = new dockerbuild.Image("image", {
359
+ * const image = new docker_build.Image("image", {
365
360
  * buildArgs: {
366
361
  * SET_ME_TO_TRUE: "true",
367
362
  * },
368
363
  * context: {
369
364
  * location: "app",
370
365
  * },
366
+ * push: false,
371
367
  * });
372
368
  * ```
373
369
  * ### Build target
374
370
  *
375
371
  * ```typescript
376
372
  * import * as pulumi from "@pulumi/pulumi";
377
- * import * as dockerbuild from "@pulumi/dockerbuild";
373
+ * import * as docker_build from "@pulumi/docker-build";
378
374
  *
379
- * const image = new dockerbuild.Image("image", {
375
+ * const image = new docker_build.Image("image", {
380
376
  * context: {
381
377
  * location: "app",
382
378
  * },
379
+ * push: false,
383
380
  * target: "build-me",
384
381
  * });
385
382
  * ```
@@ -387,34 +384,40 @@ import * as enums from "./types/enums";
387
384
  *
388
385
  * ```typescript
389
386
  * import * as pulumi from "@pulumi/pulumi";
390
- * import * as dockerbuild from "@pulumi/dockerbuild";
387
+ * import * as docker_build from "@pulumi/docker-build";
391
388
  *
392
- * const image = new dockerbuild.Image("image", {context: {
393
- * location: "app",
394
- * named: {
395
- * "golang:latest": {
396
- * location: "docker-image://golang@sha256:b8e62cf593cdaff36efd90aa3a37de268e6781a2e68c6610940c48f7cdf36984",
389
+ * const image = new docker_build.Image("image", {
390
+ * context: {
391
+ * location: "app",
392
+ * named: {
393
+ * "golang:latest": {
394
+ * location: "docker-image://golang@sha256:b8e62cf593cdaff36efd90aa3a37de268e6781a2e68c6610940c48f7cdf36984",
395
+ * },
397
396
  * },
398
397
  * },
399
- * }});
398
+ * push: false,
399
+ * });
400
400
  * ```
401
401
  * ### Remote context
402
402
  *
403
403
  * ```typescript
404
404
  * import * as pulumi from "@pulumi/pulumi";
405
- * import * as dockerbuild from "@pulumi/dockerbuild";
405
+ * import * as docker_build from "@pulumi/docker-build";
406
406
  *
407
- * const image = new dockerbuild.Image("image", {context: {
408
- * location: "https://raw.githubusercontent.com/pulumi/pulumi-docker/api-types/provider/testdata/Dockerfile",
409
- * }});
407
+ * const image = new docker_build.Image("image", {
408
+ * context: {
409
+ * location: "https://raw.githubusercontent.com/pulumi/pulumi-docker/api-types/provider/testdata/Dockerfile",
410
+ * },
411
+ * push: false,
412
+ * });
410
413
  * ```
411
414
  * ### Inline Dockerfile
412
415
  *
413
416
  * ```typescript
414
417
  * import * as pulumi from "@pulumi/pulumi";
415
- * import * as dockerbuild from "@pulumi/dockerbuild";
418
+ * import * as docker_build from "@pulumi/docker-build";
416
419
  *
417
- * const image = new dockerbuild.Image("image", {
420
+ * const image = new docker_build.Image("image", {
418
421
  * context: {
419
422
  * location: "app",
420
423
  * },
@@ -423,30 +426,32 @@ import * as enums from "./types/enums";
423
426
  * COPY hello.c ./
424
427
  * `,
425
428
  * },
429
+ * push: false,
426
430
  * });
427
431
  * ```
428
432
  * ### Remote context
429
433
  *
430
434
  * ```typescript
431
435
  * import * as pulumi from "@pulumi/pulumi";
432
- * import * as dockerbuild from "@pulumi/dockerbuild";
436
+ * import * as docker_build from "@pulumi/docker-build";
433
437
  *
434
- * const image = new dockerbuild.Image("image", {
438
+ * const image = new docker_build.Image("image", {
435
439
  * context: {
436
440
  * location: "https://github.com/docker-library/hello-world.git",
437
441
  * },
438
442
  * dockerfile: {
439
443
  * location: "app/Dockerfile",
440
444
  * },
445
+ * push: false,
441
446
  * });
442
447
  * ```
443
448
  * ### Local export
444
449
  *
445
450
  * ```typescript
446
451
  * import * as pulumi from "@pulumi/pulumi";
447
- * import * as dockerbuild from "@pulumi/dockerbuild";
452
+ * import * as docker_build from "@pulumi/docker-build";
448
453
  *
449
- * const image = new dockerbuild.Image("image", {
454
+ * const image = new docker_build.Image("image", {
450
455
  * context: {
451
456
  * location: "app",
452
457
  * },
@@ -455,6 +460,7 @@ import * as enums from "./types/enums";
455
460
  * tar: true,
456
461
  * },
457
462
  * }],
463
+ * push: false,
458
464
  * });
459
465
  * ```
460
466
  */
@@ -494,20 +500,17 @@ export declare class Image extends pulumi.CustomResource {
494
500
  [key: string]: string;
495
501
  } | undefined>;
496
502
  /**
497
- * By default, preview behavior depends on the execution environment. If
498
- * Pulumi detects the operation is running on a CI system (GitHub Actions,
499
- * Travis CI, Azure Pipelines, etc.) then it will build images during
500
- * previews as a safeguard. Otherwise, if not running on CI, previews will
501
- * not build images.
502
- *
503
- * Setting this to `false` forces previews to never perform builds, and
504
- * setting it to `true` will always build the image during previews.
503
+ * Setting this to `false` will always skip image builds during previews,
504
+ * and setting it to `true` will always build images during previews.
505
505
  *
506
506
  * Images built during previews are never exported to registries, however
507
507
  * cache manifests are still exported.
508
508
  *
509
509
  * On-disk Dockerfiles are always validated for syntactic correctness
510
510
  * regardless of this setting.
511
+ *
512
+ * Defaults to `true` as a safeguard against broken images merging as part
513
+ * of CI pipelines.
511
514
  */
512
515
  readonly buildOnPreview: pulumi.Output<boolean | undefined>;
513
516
  /**
@@ -638,7 +641,7 @@ export declare class Image extends pulumi.CustomResource {
638
641
  *
639
642
  * Equivalent to Docker's `--push` flag.
640
643
  */
641
- readonly push: pulumi.Output<boolean | undefined>;
644
+ readonly push: pulumi.Output<boolean>;
642
645
  /**
643
646
  * If the image was pushed to any registries then this will contain a
644
647
  * single fully-qualified tag including the build's digest.
@@ -710,7 +713,7 @@ export declare class Image extends pulumi.CustomResource {
710
713
  * @param args The arguments to use to populate this resource's properties.
711
714
  * @param opts A bag of options that control this resource's behavior.
712
715
  */
713
- constructor(name: string, args?: ImageArgs, opts?: pulumi.CustomResourceOptions);
716
+ constructor(name: string, args: ImageArgs, opts?: pulumi.CustomResourceOptions);
714
717
  }
715
718
  /**
716
719
  * The set of arguments for constructing a Image resource.
@@ -737,20 +740,17 @@ export interface ImageArgs {
737
740
  [key: string]: pulumi.Input<string>;
738
741
  }>;
739
742
  /**
740
- * By default, preview behavior depends on the execution environment. If
741
- * Pulumi detects the operation is running on a CI system (GitHub Actions,
742
- * Travis CI, Azure Pipelines, etc.) then it will build images during
743
- * previews as a safeguard. Otherwise, if not running on CI, previews will
744
- * not build images.
745
- *
746
- * Setting this to `false` forces previews to never perform builds, and
747
- * setting it to `true` will always build the image during previews.
743
+ * Setting this to `false` will always skip image builds during previews,
744
+ * and setting it to `true` will always build images during previews.
748
745
  *
749
746
  * Images built during previews are never exported to registries, however
750
747
  * cache manifests are still exported.
751
748
  *
752
749
  * On-disk Dockerfiles are always validated for syntactic correctness
753
750
  * regardless of this setting.
751
+ *
752
+ * Defaults to `true` as a safeguard against broken images merging as part
753
+ * of CI pipelines.
754
754
  */
755
755
  buildOnPreview?: pulumi.Input<boolean>;
756
756
  /**
@@ -865,7 +865,7 @@ export interface ImageArgs {
865
865
  *
866
866
  * Equivalent to Docker's `--push` flag.
867
867
  */
868
- push?: pulumi.Input<boolean>;
868
+ push: pulumi.Input<boolean>;
869
869
  /**
870
870
  * Registry credentials. Required if reading or exporting to private
871
871
  * repositories.
package/image.js CHANGED
@@ -11,20 +11,14 @@ const utilities = require("./utilities");
11
11
  *
12
12
  * ## Stability
13
13
  *
14
- * **This resource is experimental and subject to change.**
14
+ * **This resource is pre-1.0 and in public preview.**
15
15
  *
16
- * API types are unstable. Subsequent releases _may_ require manual edits
17
- * to your state file(s) in order to adopt API changes.
16
+ * We will strive to keep APIs and behavior as stable as possible, but we
17
+ * cannot guarantee stability until version 1.0.
18
18
  *
19
- * `retainOnDelete: true` is recommended with this resource until it is
20
- * stable. This enables future API changes to be adopted more easily by renaming
21
- * resources.
19
+ * ## Migrating Pulumi Docker v3 and v4 Image resources
22
20
  *
23
- * Only use this resource if you understand and accept the risks.
24
- *
25
- * ## Migrating v3 and v4 Image resources
26
- *
27
- * The `Image` resource provides a superset of functionality over the `Image` resources available in versions 3 and 4 of the Pulumi Docker provider.
21
+ * This provider's `Image` resource provides a superset of functionality over the `Image` resources available in versions 3 and 4 of the Pulumi Docker provider.
28
22
  * Existing `Image` resources can be converted to the docker-build `Image` resources with minor modifications.
29
23
  *
30
24
  * ### Behavioral differences
@@ -38,19 +32,17 @@ const utilities = require("./utilities");
38
32
  *
39
33
  * Version `4.x` changed build-on-preview behavior to be opt-in.
40
34
  * By default, `v4.x` `Image` resources do _not_ build during previews, but this behavior can be toggled with the `buildOnPreview` option.
41
- * Some users felt this made previews in CI less helpful because they no longer detected bad images by default.
35
+ * Several users reported outages due to the default behavior allowing bad images to accidentally sneak through CI.
42
36
  *
43
- * The default behavior of the `Image` resource has been changed to strike a better balance between CI use cases and manual updates.
44
- * By default, Pulumi will now only build `Image` resources during previews when it detects a CI environment like GitHub Actions.
45
- * Previews run in non-CI environments will not build images.
46
- * This behavior is still configurable with `buildOnPreview`.
37
+ * The default behavior of this provider's `Image` resource is similar to `3.x` and will build images during previews.
38
+ * This behavior can be changed by specifying `buildOnPreview`.
47
39
  *
48
40
  * #### Push behavior
49
41
  *
50
42
  * Versions `3.x` and `4.x` of the Pulumi Docker provider attempt to push images to remote registries by default.
51
43
  * They expose a `skipPush: true` option to disable pushing.
52
44
  *
53
- * The `Image` resource matches the Docker CLI's behavior and does not push images anywhere by default.
45
+ * This provider's `Image` resource matches the Docker CLI's behavior and does not push images anywhere by default.
54
46
  *
55
47
  * To push images to a registry you can include `push: true` (equivalent to Docker's `--push` flag) or configure an `export` of type `registry` (equivalent to Docker's `--output type=registry`).
56
48
  * Like Docker, if an image is configured without exports you will see a warning with instructions for how to enable pushing, but the build will still proceed normally.
@@ -168,7 +160,7 @@ const utilities = require("./utilities");
168
160
  * context: {
169
161
  * location: "../app",
170
162
  * },
171
- * targets: ["mytarget"],
163
+ * target: "mytarget",
172
164
  * buildArgs: {
173
165
  * MY_BUILD_ARG: "foo",
174
166
  * },
@@ -227,7 +219,7 @@ const utilities = require("./utilities");
227
219
  * context: {
228
220
  * location: "../app",
229
221
  * },
230
- * targets: ["mytarget"],
222
+ * target: "mytarget",
231
223
  * buildArgs: {
232
224
  * MY_BUILD_ARG: "foo",
233
225
  * },
@@ -251,13 +243,13 @@ const utilities = require("./utilities");
251
243
  * ```typescript
252
244
  * import * as pulumi from "@pulumi/pulumi";
253
245
  * import * as aws from "@pulumi/aws";
254
- * import * as dockerbuild from "@pulumi/dockerbuild";
246
+ * import * as docker_build from "@pulumi/docker-build";
255
247
  *
256
248
  * const ecrRepository = new aws.ecr.Repository("ecr-repository", {});
257
249
  * const authToken = aws.ecr.getAuthorizationTokenOutput({
258
250
  * registryId: ecrRepository.registryId,
259
251
  * });
260
- * const myImage = new dockerbuild.Image("my-image", {
252
+ * const myImage = new docker_build.Image("my-image", {
261
253
  * cacheFrom: [{
262
254
  * registry: {
263
255
  * ref: pulumi.interpolate`${ecrRepository.repositoryUrl}:cache`,
@@ -287,25 +279,26 @@ const utilities = require("./utilities");
287
279
  *
288
280
  * ```typescript
289
281
  * import * as pulumi from "@pulumi/pulumi";
290
- * import * as dockerbuild from "@pulumi/dockerbuild";
282
+ * import * as docker_build from "@pulumi/docker-build";
291
283
  *
292
- * const image = new dockerbuild.Image("image", {
284
+ * const image = new docker_build.Image("image", {
293
285
  * context: {
294
286
  * location: "app",
295
287
  * },
296
288
  * platforms: [
297
- * dockerbuild.Platform.Plan9_amd64,
298
- * dockerbuild.Platform.Plan9_386,
289
+ * docker_build.Platform.Plan9_amd64,
290
+ * docker_build.Platform.Plan9_386,
299
291
  * ],
292
+ * push: false,
300
293
  * });
301
294
  * ```
302
295
  * ### Registry export
303
296
  *
304
297
  * ```typescript
305
298
  * import * as pulumi from "@pulumi/pulumi";
306
- * import * as dockerbuild from "@pulumi/dockerbuild";
299
+ * import * as docker_build from "@pulumi/docker-build";
307
300
  *
308
- * const image = new dockerbuild.Image("image", {
301
+ * const image = new docker_build.Image("image", {
309
302
  * context: {
310
303
  * location: "app",
311
304
  * },
@@ -323,9 +316,9 @@ const utilities = require("./utilities");
323
316
  *
324
317
  * ```typescript
325
318
  * import * as pulumi from "@pulumi/pulumi";
326
- * import * as dockerbuild from "@pulumi/dockerbuild";
319
+ * import * as docker_build from "@pulumi/docker-build";
327
320
  *
328
- * const image = new dockerbuild.Image("image", {
321
+ * const image = new docker_build.Image("image", {
329
322
  * cacheFrom: [{
330
323
  * local: {
331
324
  * src: "tmp/cache",
@@ -334,21 +327,22 @@ const utilities = require("./utilities");
334
327
  * cacheTo: [{
335
328
  * local: {
336
329
  * dest: "tmp/cache",
337
- * mode: dockerbuild.CacheMode.Max,
330
+ * mode: docker_build.CacheMode.Max,
338
331
  * },
339
332
  * }],
340
333
  * context: {
341
334
  * location: "app",
342
335
  * },
336
+ * push: false,
343
337
  * });
344
338
  * ```
345
339
  * ### Docker Build Cloud
346
340
  *
347
341
  * ```typescript
348
342
  * import * as pulumi from "@pulumi/pulumi";
349
- * import * as dockerbuild from "@pulumi/dockerbuild";
343
+ * import * as docker_build from "@pulumi/docker-build";
350
344
  *
351
- * const image = new dockerbuild.Image("image", {
345
+ * const image = new docker_build.Image("image", {
352
346
  * builder: {
353
347
  * name: "cloud-builder-name",
354
348
  * },
@@ -356,33 +350,36 @@ const utilities = require("./utilities");
356
350
  * location: "app",
357
351
  * },
358
352
  * exec: true,
353
+ * push: false,
359
354
  * });
360
355
  * ```
361
356
  * ### Build arguments
362
357
  *
363
358
  * ```typescript
364
359
  * import * as pulumi from "@pulumi/pulumi";
365
- * import * as dockerbuild from "@pulumi/dockerbuild";
360
+ * import * as docker_build from "@pulumi/docker-build";
366
361
  *
367
- * const image = new dockerbuild.Image("image", {
362
+ * const image = new docker_build.Image("image", {
368
363
  * buildArgs: {
369
364
  * SET_ME_TO_TRUE: "true",
370
365
  * },
371
366
  * context: {
372
367
  * location: "app",
373
368
  * },
369
+ * push: false,
374
370
  * });
375
371
  * ```
376
372
  * ### Build target
377
373
  *
378
374
  * ```typescript
379
375
  * import * as pulumi from "@pulumi/pulumi";
380
- * import * as dockerbuild from "@pulumi/dockerbuild";
376
+ * import * as docker_build from "@pulumi/docker-build";
381
377
  *
382
- * const image = new dockerbuild.Image("image", {
378
+ * const image = new docker_build.Image("image", {
383
379
  * context: {
384
380
  * location: "app",
385
381
  * },
382
+ * push: false,
386
383
  * target: "build-me",
387
384
  * });
388
385
  * ```
@@ -390,34 +387,40 @@ const utilities = require("./utilities");
390
387
  *
391
388
  * ```typescript
392
389
  * import * as pulumi from "@pulumi/pulumi";
393
- * import * as dockerbuild from "@pulumi/dockerbuild";
390
+ * import * as docker_build from "@pulumi/docker-build";
394
391
  *
395
- * const image = new dockerbuild.Image("image", {context: {
396
- * location: "app",
397
- * named: {
398
- * "golang:latest": {
399
- * location: "docker-image://golang@sha256:b8e62cf593cdaff36efd90aa3a37de268e6781a2e68c6610940c48f7cdf36984",
392
+ * const image = new docker_build.Image("image", {
393
+ * context: {
394
+ * location: "app",
395
+ * named: {
396
+ * "golang:latest": {
397
+ * location: "docker-image://golang@sha256:b8e62cf593cdaff36efd90aa3a37de268e6781a2e68c6610940c48f7cdf36984",
398
+ * },
400
399
  * },
401
400
  * },
402
- * }});
401
+ * push: false,
402
+ * });
403
403
  * ```
404
404
  * ### Remote context
405
405
  *
406
406
  * ```typescript
407
407
  * import * as pulumi from "@pulumi/pulumi";
408
- * import * as dockerbuild from "@pulumi/dockerbuild";
408
+ * import * as docker_build from "@pulumi/docker-build";
409
409
  *
410
- * const image = new dockerbuild.Image("image", {context: {
411
- * location: "https://raw.githubusercontent.com/pulumi/pulumi-docker/api-types/provider/testdata/Dockerfile",
412
- * }});
410
+ * const image = new docker_build.Image("image", {
411
+ * context: {
412
+ * location: "https://raw.githubusercontent.com/pulumi/pulumi-docker/api-types/provider/testdata/Dockerfile",
413
+ * },
414
+ * push: false,
415
+ * });
413
416
  * ```
414
417
  * ### Inline Dockerfile
415
418
  *
416
419
  * ```typescript
417
420
  * import * as pulumi from "@pulumi/pulumi";
418
- * import * as dockerbuild from "@pulumi/dockerbuild";
421
+ * import * as docker_build from "@pulumi/docker-build";
419
422
  *
420
- * const image = new dockerbuild.Image("image", {
423
+ * const image = new docker_build.Image("image", {
421
424
  * context: {
422
425
  * location: "app",
423
426
  * },
@@ -426,30 +429,32 @@ const utilities = require("./utilities");
426
429
  * COPY hello.c ./
427
430
  * `,
428
431
  * },
432
+ * push: false,
429
433
  * });
430
434
  * ```
431
435
  * ### Remote context
432
436
  *
433
437
  * ```typescript
434
438
  * import * as pulumi from "@pulumi/pulumi";
435
- * import * as dockerbuild from "@pulumi/dockerbuild";
439
+ * import * as docker_build from "@pulumi/docker-build";
436
440
  *
437
- * const image = new dockerbuild.Image("image", {
441
+ * const image = new docker_build.Image("image", {
438
442
  * context: {
439
443
  * location: "https://github.com/docker-library/hello-world.git",
440
444
  * },
441
445
  * dockerfile: {
442
446
  * location: "app/Dockerfile",
443
447
  * },
448
+ * push: false,
444
449
  * });
445
450
  * ```
446
451
  * ### Local export
447
452
  *
448
453
  * ```typescript
449
454
  * import * as pulumi from "@pulumi/pulumi";
450
- * import * as dockerbuild from "@pulumi/dockerbuild";
455
+ * import * as docker_build from "@pulumi/docker-build";
451
456
  *
452
- * const image = new dockerbuild.Image("image", {
457
+ * const image = new docker_build.Image("image", {
453
458
  * context: {
454
459
  * location: "app",
455
460
  * },
@@ -458,6 +463,7 @@ const utilities = require("./utilities");
458
463
  * tar: true,
459
464
  * },
460
465
  * }],
466
+ * push: false,
461
467
  * });
462
468
  * ```
463
469
  */
@@ -491,13 +497,16 @@ class Image extends pulumi.CustomResource {
491
497
  * @param opts A bag of options that control this resource's behavior.
492
498
  */
493
499
  constructor(name, args, opts) {
494
- var _a;
500
+ var _a, _b;
495
501
  let resourceInputs = {};
496
502
  opts = opts || {};
497
503
  if (!opts.id) {
504
+ if ((!args || args.push === undefined) && !opts.urn) {
505
+ throw new Error("Missing required property 'push'");
506
+ }
498
507
  resourceInputs["addHosts"] = args ? args.addHosts : undefined;
499
508
  resourceInputs["buildArgs"] = args ? args.buildArgs : undefined;
500
- resourceInputs["buildOnPreview"] = args ? args.buildOnPreview : undefined;
509
+ resourceInputs["buildOnPreview"] = (_a = (args ? args.buildOnPreview : undefined)) !== null && _a !== void 0 ? _a : true;
501
510
  resourceInputs["builder"] = args ? args.builder : undefined;
502
511
  resourceInputs["cacheFrom"] = args ? args.cacheFrom : undefined;
503
512
  resourceInputs["cacheTo"] = args ? args.cacheTo : undefined;
@@ -507,7 +516,7 @@ class Image extends pulumi.CustomResource {
507
516
  resourceInputs["exports"] = args ? args.exports : undefined;
508
517
  resourceInputs["labels"] = args ? args.labels : undefined;
509
518
  resourceInputs["load"] = args ? args.load : undefined;
510
- resourceInputs["network"] = (_a = (args ? args.network : undefined)) !== null && _a !== void 0 ? _a : "default";
519
+ resourceInputs["network"] = (_b = (args ? args.network : undefined)) !== null && _b !== void 0 ? _b : "default";
511
520
  resourceInputs["noCache"] = args ? args.noCache : undefined;
512
521
  resourceInputs["platforms"] = args ? args.platforms : undefined;
513
522
  resourceInputs["pull"] = args ? args.pull : undefined;
package/image.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"image.js","sourceRoot":"","sources":["../image.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"image.js","sourceRoot":"","sources":["../image.ts"],"names":[],"mappings":"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"}
package/index_.d.ts CHANGED
@@ -2,13 +2,25 @@ import * as pulumi from "@pulumi/pulumi";
2
2
  import * as inputs from "./types/input";
3
3
  import * as outputs from "./types/output";
4
4
  /**
5
- * An index (or manifest list) referencing one or more existing images.
5
+ * A wrapper around `docker buildx imagetools create` to create an index
6
+ * (or manifest list) referencing one or more existing images.
6
7
  *
7
- * Useful for crafting a multi-platform image from several
8
- * platform-specific images.
8
+ * In most cases you do not need an `Index` to build a multi-platform
9
+ * image -- specifying multiple platforms on the `Image` will handle this
10
+ * for you automatically.
9
11
  *
10
- * This creates an OCI image index or a Docker manifest list depending on
11
- * the media types of the source images.
12
+ * However, as of April 2024, building multi-platform images _with
13
+ * caching_ will only export a cache for one platform at a time (see [this
14
+ * discussion](https://github.com/docker/buildx/discussions/1382) for more
15
+ * details).
16
+ *
17
+ * Therefore this resource can be helpful if you are building
18
+ * multi-platform images with caching: each platform can be built and
19
+ * cached separately, and an `Index` can join them all together. An
20
+ * example of this is shown below.
21
+ *
22
+ * This resource creates an OCI image index or a Docker manifest list
23
+ * depending on the media types of the source images.
12
24
  *
13
25
  * ## Example Usage
14
26
  * ### Multi-platform registry caching
package/index_.js CHANGED
@@ -6,13 +6,25 @@ exports.Index = void 0;
6
6
  const pulumi = require("@pulumi/pulumi");
7
7
  const utilities = require("./utilities");
8
8
  /**
9
- * An index (or manifest list) referencing one or more existing images.
9
+ * A wrapper around `docker buildx imagetools create` to create an index
10
+ * (or manifest list) referencing one or more existing images.
10
11
  *
11
- * Useful for crafting a multi-platform image from several
12
- * platform-specific images.
12
+ * In most cases you do not need an `Index` to build a multi-platform
13
+ * image -- specifying multiple platforms on the `Image` will handle this
14
+ * for you automatically.
13
15
  *
14
- * This creates an OCI image index or a Docker manifest list depending on
15
- * the media types of the source images.
16
+ * However, as of April 2024, building multi-platform images _with
17
+ * caching_ will only export a cache for one platform at a time (see [this
18
+ * discussion](https://github.com/docker/buildx/discussions/1382) for more
19
+ * details).
20
+ *
21
+ * Therefore this resource can be helpful if you are building
22
+ * multi-platform images with caching: each platform can be built and
23
+ * cached separately, and an `Index` can join them all together. An
24
+ * example of this is shown below.
25
+ *
26
+ * This resource creates an OCI image index or a Docker manifest list
27
+ * depending on the media types of the source images.
16
28
  *
17
29
  * ## Example Usage
18
30
  * ### Multi-platform registry caching
package/index_.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index_.js","sourceRoot":"","sources":["../index_.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAIzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6DG;AACH,MAAa,KAAM,SAAQ,MAAM,CAAC,cAAc;IAC5C;;;;;;;OAOG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,IAAmC;QAC5F,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,SAAgB,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IAClE,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,KAAK,CAAC,YAAY,CAAC;IACtD,CAAC;IA6BD;;;;;;OAMG;IACH,YAAY,IAAY,EAAE,IAAe,EAAE,IAAmC;;QAC1E,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;YACV,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACpD,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;aAC1D;YACD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAChD,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;aACtD;YACD,cAAc,CAAC,MAAM,CAAC,GAAG,MAAA,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,mCAAI,IAAI,CAAC;YAChE,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,cAAc,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;YACpD,cAAc,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SAC7C;aAAM;YACH,cAAc,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAC3C,cAAc,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAC1C,cAAc,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAC/C,cAAc,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAC9C,cAAc,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SAC7C;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC1D,CAAC;;AArFL,sBAsFC;AAzEG,gBAAgB;AACO,kBAAY,GAAG,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index_.js","sourceRoot":"","sources":["../index_.ts"],"names":[],"mappings":";AAAA,sEAAsE;AACtE,iFAAiF;;;AAEjF,yCAAyC;AAIzC,yCAAyC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyEG;AACH,MAAa,KAAM,SAAQ,MAAM,CAAC,cAAc;IAC5C;;;;;;;OAOG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,IAAmC;QAC5F,OAAO,IAAI,KAAK,CAAC,IAAI,EAAE,SAAgB,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IAClE,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,KAAK,CAAC,YAAY,CAAC;IACtD,CAAC;IA6BD;;;;;;OAMG;IACH,YAAY,IAAY,EAAE,IAAe,EAAE,IAAmC;;QAC1E,IAAI,cAAc,GAAkB,EAAE,CAAC;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;YACV,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACpD,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;aAC1D;YACD,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAChD,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;aACtD;YACD,cAAc,CAAC,MAAM,CAAC,GAAG,MAAA,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,mCAAI,IAAI,CAAC;YAChE,cAAc,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,cAAc,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC5D,cAAc,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;YACpD,cAAc,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SAC7C;aAAM;YACH,cAAc,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAC3C,cAAc,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAC1C,cAAc,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAC/C,cAAc,CAAC,SAAS,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAC9C,cAAc,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SAC7C;QACD,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,SAAS,CAAC,oBAAoB,EAAE,EAAE,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,KAAK,CAAC,YAAY,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,CAAC,CAAC;IAC1D,CAAC;;AArFL,sBAsFC;AAzEG,gBAAgB;AACO,kBAAY,GAAG,0BAA0B,CAAC"}
package/package.json CHANGED
@@ -1,17 +1,18 @@
1
1
  {
2
2
  "name": "@pulumi/docker-build",
3
- "version": "v0.0.1-alpha.3",
3
+ "version": "v0.0.2",
4
4
  "keywords": [
5
5
  "docker",
6
6
  "buildkit",
7
- "buildx"
7
+ "buildx",
8
+ "kind/native"
8
9
  ],
9
- "homepage": "https://pulumi.io",
10
+ "homepage": "https://pulumi.com",
10
11
  "repository": "https://github.com/pulumi/pulumi-docker-build",
11
12
  "license": "Apache-2.0",
12
13
  "scripts": {
13
14
  "build": "tsc",
14
- "install": "node scripts/install-pulumi-plugin.js resource docker-build v0.0.1-alpha.3"
15
+ "install": "node scripts/install-pulumi-plugin.js resource docker-build v0.0.2"
15
16
  },
16
17
  "dependencies": {
17
18
  "@pulumi/pulumi": "^3.0.0"
@@ -22,7 +23,6 @@
22
23
  },
23
24
  "pulumi": {
24
25
  "resource": true,
25
- "name": "docker-build",
26
- "server": "github.com/pulumi/pulumi-docker-build"
26
+ "name": "docker-build"
27
27
  }
28
28
  }
package/package.json.dev CHANGED
@@ -1,12 +1,13 @@
1
1
  {
2
2
  "name": "@pulumi/docker-build",
3
- "version": "v0.0.1-alpha.3",
3
+ "version": "v0.0.2",
4
4
  "keywords": [
5
5
  "docker",
6
6
  "buildkit",
7
- "buildx"
7
+ "buildx",
8
+ "kind/native"
8
9
  ],
9
- "homepage": "https://pulumi.io",
10
+ "homepage": "https://pulumi.com",
10
11
  "repository": "https://github.com/pulumi/pulumi-docker-build",
11
12
  "license": "Apache-2.0",
12
13
  "scripts": {
@@ -21,7 +22,6 @@
21
22
  },
22
23
  "pulumi": {
23
24
  "resource": true,
24
- "name": "docker-build",
25
- "server": "github.com/pulumi/pulumi-docker-build"
25
+ "name": "docker-build"
26
26
  }
27
27
  }
package/utilities.js CHANGED
@@ -61,7 +61,7 @@ function getVersion() {
61
61
  exports.getVersion = getVersion;
62
62
  /** @internal */
63
63
  function resourceOptsDefaults() {
64
- return { version: getVersion(), pluginDownloadURL: "github.com/pulumi/pulumi-docker-build" };
64
+ return { version: getVersion() };
65
65
  }
66
66
  exports.resourceOptsDefaults = resourceOptsDefaults;
67
67
  /** @internal */
package/utilities.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"utilities.js","sourceRoot":"","sources":["../utilities.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utilities.js","sourceRoot":"","sources":["../utilities.ts"],"names":[],"mappings":"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"}