pulumi-docker-build 0.0.1__py3-none-any.whl → 0.0.1a3__py3-none-any.whl
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.
Potentially problematic release.
This version of pulumi-docker-build might be problematic. Click here for more details.
- pulumi_docker_build/_utilities.py +1 -1
- pulumi_docker_build/image.py +172 -148
- pulumi_docker_build/index.py +10 -34
- pulumi_docker_build/pulumi-plugin.json +2 -1
- pulumi_docker_build-0.0.1a3.dist-info/METADATA +120 -0
- {pulumi_docker_build-0.0.1.dist-info → pulumi_docker_build-0.0.1a3.dist-info}/RECORD +8 -8
- pulumi_docker_build-0.0.1.dist-info/METADATA +0 -37
- {pulumi_docker_build-0.0.1.dist-info → pulumi_docker_build-0.0.1a3.dist-info}/WHEEL +0 -0
- {pulumi_docker_build-0.0.1.dist-info → pulumi_docker_build-0.0.1a3.dist-info}/top_level.txt +0 -0
pulumi_docker_build/image.py
CHANGED
|
@@ -53,17 +53,20 @@ class ImageArgs:
|
|
|
53
53
|
if these arguments are sensitive.
|
|
54
54
|
|
|
55
55
|
Equivalent to Docker's `--build-arg` flag.
|
|
56
|
-
:param pulumi.Input[bool] build_on_preview:
|
|
57
|
-
|
|
56
|
+
:param pulumi.Input[bool] build_on_preview: By default, preview behavior depends on the execution environment. If
|
|
57
|
+
Pulumi detects the operation is running on a CI system (GitHub Actions,
|
|
58
|
+
Travis CI, Azure Pipelines, etc.) then it will build images during
|
|
59
|
+
previews as a safeguard. Otherwise, if not running on CI, previews will
|
|
60
|
+
not build images.
|
|
61
|
+
|
|
62
|
+
Setting this to `false` forces previews to never perform builds, and
|
|
63
|
+
setting it to `true` will always build the image during previews.
|
|
58
64
|
|
|
59
65
|
Images built during previews are never exported to registries, however
|
|
60
66
|
cache manifests are still exported.
|
|
61
67
|
|
|
62
68
|
On-disk Dockerfiles are always validated for syntactic correctness
|
|
63
69
|
regardless of this setting.
|
|
64
|
-
|
|
65
|
-
Defaults to `true` as a safeguard against broken images merging as part
|
|
66
|
-
of CI pipelines.
|
|
67
70
|
:param pulumi.Input['BuilderConfigArgs'] builder: Builder configuration.
|
|
68
71
|
:param pulumi.Input[Sequence[pulumi.Input['CacheFromArgs']]] cache_from: Cache export configuration.
|
|
69
72
|
|
|
@@ -168,8 +171,6 @@ class ImageArgs:
|
|
|
168
171
|
pulumi.set(__self__, "add_hosts", add_hosts)
|
|
169
172
|
if build_args is not None:
|
|
170
173
|
pulumi.set(__self__, "build_args", build_args)
|
|
171
|
-
if build_on_preview is None:
|
|
172
|
-
build_on_preview = True
|
|
173
174
|
if build_on_preview is not None:
|
|
174
175
|
pulumi.set(__self__, "build_on_preview", build_on_preview)
|
|
175
176
|
if builder is not None:
|
|
@@ -251,17 +252,20 @@ class ImageArgs:
|
|
|
251
252
|
@pulumi.getter(name="buildOnPreview")
|
|
252
253
|
def build_on_preview(self) -> Optional[pulumi.Input[bool]]:
|
|
253
254
|
"""
|
|
254
|
-
|
|
255
|
-
|
|
255
|
+
By default, preview behavior depends on the execution environment. If
|
|
256
|
+
Pulumi detects the operation is running on a CI system (GitHub Actions,
|
|
257
|
+
Travis CI, Azure Pipelines, etc.) then it will build images during
|
|
258
|
+
previews as a safeguard. Otherwise, if not running on CI, previews will
|
|
259
|
+
not build images.
|
|
260
|
+
|
|
261
|
+
Setting this to `false` forces previews to never perform builds, and
|
|
262
|
+
setting it to `true` will always build the image during previews.
|
|
256
263
|
|
|
257
264
|
Images built during previews are never exported to registries, however
|
|
258
265
|
cache manifests are still exported.
|
|
259
266
|
|
|
260
267
|
On-disk Dockerfiles are always validated for syntactic correctness
|
|
261
268
|
regardless of this setting.
|
|
262
|
-
|
|
263
|
-
Defaults to `true` as a safeguard against broken images merging as part
|
|
264
|
-
of CI pipelines.
|
|
265
269
|
"""
|
|
266
270
|
return pulumi.get(self, "build_on_preview")
|
|
267
271
|
|
|
@@ -612,14 +616,20 @@ class Image(pulumi.CustomResource):
|
|
|
612
616
|
|
|
613
617
|
## Stability
|
|
614
618
|
|
|
615
|
-
**This resource is
|
|
619
|
+
**This resource is experimental and subject to change.**
|
|
620
|
+
|
|
621
|
+
API types are unstable. Subsequent releases _may_ require manual edits
|
|
622
|
+
to your state file(s) in order to adopt API changes.
|
|
623
|
+
|
|
624
|
+
`retainOnDelete: true` is recommended with this resource until it is
|
|
625
|
+
stable. This enables future API changes to be adopted more easily by renaming
|
|
626
|
+
resources.
|
|
616
627
|
|
|
617
|
-
|
|
618
|
-
cannot guarantee stability until version 1.0.
|
|
628
|
+
Only use this resource if you understand and accept the risks.
|
|
619
629
|
|
|
620
|
-
## Migrating
|
|
630
|
+
## Migrating v3 and v4 Image resources
|
|
621
631
|
|
|
622
|
-
|
|
632
|
+
The `Image` resource provides a superset of functionality over the `Image` resources available in versions 3 and 4 of the Pulumi Docker provider.
|
|
623
633
|
Existing `Image` resources can be converted to the docker-build `Image` resources with minor modifications.
|
|
624
634
|
|
|
625
635
|
### Behavioral differences
|
|
@@ -633,17 +643,19 @@ class Image(pulumi.CustomResource):
|
|
|
633
643
|
|
|
634
644
|
Version `4.x` changed build-on-preview behavior to be opt-in.
|
|
635
645
|
By default, `v4.x` `Image` resources do _not_ build during previews, but this behavior can be toggled with the `buildOnPreview` option.
|
|
636
|
-
|
|
646
|
+
Some users felt this made previews in CI less helpful because they no longer detected bad images by default.
|
|
637
647
|
|
|
638
|
-
The default behavior of
|
|
639
|
-
|
|
648
|
+
The default behavior of the `Image` resource has been changed to strike a better balance between CI use cases and manual updates.
|
|
649
|
+
By default, Pulumi will now only build `Image` resources during previews when it detects a CI environment like GitHub Actions.
|
|
650
|
+
Previews run in non-CI environments will not build images.
|
|
651
|
+
This behavior is still configurable with `buildOnPreview`.
|
|
640
652
|
|
|
641
653
|
#### Push behavior
|
|
642
654
|
|
|
643
655
|
Versions `3.x` and `4.x` of the Pulumi Docker provider attempt to push images to remote registries by default.
|
|
644
656
|
They expose a `skipPush: true` option to disable pushing.
|
|
645
657
|
|
|
646
|
-
|
|
658
|
+
The `Image` resource matches the Docker CLI's behavior and does not push images anywhere by default.
|
|
647
659
|
|
|
648
660
|
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`).
|
|
649
661
|
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.
|
|
@@ -714,28 +726,28 @@ class Image(pulumi.CustomResource):
|
|
|
714
726
|
```python
|
|
715
727
|
import pulumi
|
|
716
728
|
import pulumi_aws as aws
|
|
717
|
-
import
|
|
729
|
+
import pulumi_dockerbuild as dockerbuild
|
|
718
730
|
|
|
719
731
|
ecr_repository = aws.ecr.Repository("ecr-repository")
|
|
720
732
|
auth_token = aws.ecr.get_authorization_token_output(registry_id=ecr_repository.registry_id)
|
|
721
|
-
my_image =
|
|
722
|
-
cache_from=[
|
|
723
|
-
registry=
|
|
733
|
+
my_image = dockerbuild.Image("my-image",
|
|
734
|
+
cache_from=[dockerbuild.CacheFromArgs(
|
|
735
|
+
registry=dockerbuild.CacheFromRegistryArgs(
|
|
724
736
|
ref=ecr_repository.repository_url.apply(lambda repository_url: f"{repository_url}:cache"),
|
|
725
737
|
),
|
|
726
738
|
)],
|
|
727
|
-
cache_to=[
|
|
728
|
-
registry=
|
|
739
|
+
cache_to=[dockerbuild.CacheToArgs(
|
|
740
|
+
registry=dockerbuild.CacheToRegistryArgs(
|
|
729
741
|
image_manifest=True,
|
|
730
742
|
oci_media_types=True,
|
|
731
743
|
ref=ecr_repository.repository_url.apply(lambda repository_url: f"{repository_url}:cache"),
|
|
732
744
|
),
|
|
733
745
|
)],
|
|
734
|
-
context=
|
|
746
|
+
context=dockerbuild.BuildContextArgs(
|
|
735
747
|
location="./app",
|
|
736
748
|
),
|
|
737
749
|
push=True,
|
|
738
|
-
registries=[
|
|
750
|
+
registries=[dockerbuild.RegistryArgs(
|
|
739
751
|
address=ecr_repository.repository_url,
|
|
740
752
|
password=auth_token.password,
|
|
741
753
|
username=auth_token.user_name,
|
|
@@ -746,28 +758,28 @@ class Image(pulumi.CustomResource):
|
|
|
746
758
|
### Multi-platform image
|
|
747
759
|
```python
|
|
748
760
|
import pulumi
|
|
749
|
-
import
|
|
761
|
+
import pulumi_dockerbuild as dockerbuild
|
|
750
762
|
|
|
751
|
-
image =
|
|
752
|
-
context=
|
|
763
|
+
image = dockerbuild.Image("image",
|
|
764
|
+
context=dockerbuild.BuildContextArgs(
|
|
753
765
|
location="app",
|
|
754
766
|
),
|
|
755
767
|
platforms=[
|
|
756
|
-
|
|
757
|
-
|
|
768
|
+
dockerbuild.Platform.PLAN9_AMD64,
|
|
769
|
+
dockerbuild.Platform.PLAN9_386,
|
|
758
770
|
])
|
|
759
771
|
```
|
|
760
772
|
### Registry export
|
|
761
773
|
```python
|
|
762
774
|
import pulumi
|
|
763
|
-
import
|
|
775
|
+
import pulumi_dockerbuild as dockerbuild
|
|
764
776
|
|
|
765
|
-
image =
|
|
766
|
-
context=
|
|
777
|
+
image = dockerbuild.Image("image",
|
|
778
|
+
context=dockerbuild.BuildContextArgs(
|
|
767
779
|
location="app",
|
|
768
780
|
),
|
|
769
781
|
push=True,
|
|
770
|
-
registries=[
|
|
782
|
+
registries=[dockerbuild.RegistryArgs(
|
|
771
783
|
address="docker.io",
|
|
772
784
|
password=docker_hub_password,
|
|
773
785
|
username="pulumibot",
|
|
@@ -778,34 +790,34 @@ class Image(pulumi.CustomResource):
|
|
|
778
790
|
### Caching
|
|
779
791
|
```python
|
|
780
792
|
import pulumi
|
|
781
|
-
import
|
|
793
|
+
import pulumi_dockerbuild as dockerbuild
|
|
782
794
|
|
|
783
|
-
image =
|
|
784
|
-
cache_from=[
|
|
785
|
-
local=
|
|
795
|
+
image = dockerbuild.Image("image",
|
|
796
|
+
cache_from=[dockerbuild.CacheFromArgs(
|
|
797
|
+
local=dockerbuild.CacheFromLocalArgs(
|
|
786
798
|
src="tmp/cache",
|
|
787
799
|
),
|
|
788
800
|
)],
|
|
789
|
-
cache_to=[
|
|
790
|
-
local=
|
|
801
|
+
cache_to=[dockerbuild.CacheToArgs(
|
|
802
|
+
local=dockerbuild.CacheToLocalArgs(
|
|
791
803
|
dest="tmp/cache",
|
|
792
|
-
mode=
|
|
804
|
+
mode=dockerbuild.CacheMode.MAX,
|
|
793
805
|
),
|
|
794
806
|
)],
|
|
795
|
-
context=
|
|
807
|
+
context=dockerbuild.BuildContextArgs(
|
|
796
808
|
location="app",
|
|
797
809
|
))
|
|
798
810
|
```
|
|
799
811
|
### Docker Build Cloud
|
|
800
812
|
```python
|
|
801
813
|
import pulumi
|
|
802
|
-
import
|
|
814
|
+
import pulumi_dockerbuild as dockerbuild
|
|
803
815
|
|
|
804
|
-
image =
|
|
805
|
-
builder=
|
|
816
|
+
image = dockerbuild.Image("image",
|
|
817
|
+
builder=dockerbuild.BuilderConfigArgs(
|
|
806
818
|
name="cloud-builder-name",
|
|
807
819
|
),
|
|
808
|
-
context=
|
|
820
|
+
context=dockerbuild.BuildContextArgs(
|
|
809
821
|
location="app",
|
|
810
822
|
),
|
|
811
823
|
exec_=True)
|
|
@@ -813,23 +825,23 @@ class Image(pulumi.CustomResource):
|
|
|
813
825
|
### Build arguments
|
|
814
826
|
```python
|
|
815
827
|
import pulumi
|
|
816
|
-
import
|
|
828
|
+
import pulumi_dockerbuild as dockerbuild
|
|
817
829
|
|
|
818
|
-
image =
|
|
830
|
+
image = dockerbuild.Image("image",
|
|
819
831
|
build_args={
|
|
820
832
|
"SET_ME_TO_TRUE": "true",
|
|
821
833
|
},
|
|
822
|
-
context=
|
|
834
|
+
context=dockerbuild.BuildContextArgs(
|
|
823
835
|
location="app",
|
|
824
836
|
))
|
|
825
837
|
```
|
|
826
838
|
### Build target
|
|
827
839
|
```python
|
|
828
840
|
import pulumi
|
|
829
|
-
import
|
|
841
|
+
import pulumi_dockerbuild as dockerbuild
|
|
830
842
|
|
|
831
|
-
image =
|
|
832
|
-
context=
|
|
843
|
+
image = dockerbuild.Image("image",
|
|
844
|
+
context=dockerbuild.BuildContextArgs(
|
|
833
845
|
location="app",
|
|
834
846
|
),
|
|
835
847
|
target="build-me")
|
|
@@ -837,12 +849,12 @@ class Image(pulumi.CustomResource):
|
|
|
837
849
|
### Named contexts
|
|
838
850
|
```python
|
|
839
851
|
import pulumi
|
|
840
|
-
import
|
|
852
|
+
import pulumi_dockerbuild as dockerbuild
|
|
841
853
|
|
|
842
|
-
image =
|
|
854
|
+
image = dockerbuild.Image("image", context=dockerbuild.BuildContextArgs(
|
|
843
855
|
location="app",
|
|
844
856
|
named={
|
|
845
|
-
"golang:latest":
|
|
857
|
+
"golang:latest": dockerbuild.ContextArgs(
|
|
846
858
|
location="docker-image://golang@sha256:b8e62cf593cdaff36efd90aa3a37de268e6781a2e68c6610940c48f7cdf36984",
|
|
847
859
|
),
|
|
848
860
|
},
|
|
@@ -851,22 +863,22 @@ class Image(pulumi.CustomResource):
|
|
|
851
863
|
### Remote context
|
|
852
864
|
```python
|
|
853
865
|
import pulumi
|
|
854
|
-
import
|
|
866
|
+
import pulumi_dockerbuild as dockerbuild
|
|
855
867
|
|
|
856
|
-
image =
|
|
868
|
+
image = dockerbuild.Image("image", context=dockerbuild.BuildContextArgs(
|
|
857
869
|
location="https://raw.githubusercontent.com/pulumi/pulumi-docker/api-types/provider/testdata/Dockerfile",
|
|
858
870
|
))
|
|
859
871
|
```
|
|
860
872
|
### Inline Dockerfile
|
|
861
873
|
```python
|
|
862
874
|
import pulumi
|
|
863
|
-
import
|
|
875
|
+
import pulumi_dockerbuild as dockerbuild
|
|
864
876
|
|
|
865
|
-
image =
|
|
866
|
-
context=
|
|
877
|
+
image = dockerbuild.Image("image",
|
|
878
|
+
context=dockerbuild.BuildContextArgs(
|
|
867
879
|
location="app",
|
|
868
880
|
),
|
|
869
|
-
dockerfile=
|
|
881
|
+
dockerfile=dockerbuild.DockerfileArgs(
|
|
870
882
|
inline=\"\"\"FROM busybox
|
|
871
883
|
COPY hello.c ./
|
|
872
884
|
\"\"\",
|
|
@@ -875,27 +887,27 @@ class Image(pulumi.CustomResource):
|
|
|
875
887
|
### Remote context
|
|
876
888
|
```python
|
|
877
889
|
import pulumi
|
|
878
|
-
import
|
|
890
|
+
import pulumi_dockerbuild as dockerbuild
|
|
879
891
|
|
|
880
|
-
image =
|
|
881
|
-
context=
|
|
892
|
+
image = dockerbuild.Image("image",
|
|
893
|
+
context=dockerbuild.BuildContextArgs(
|
|
882
894
|
location="https://github.com/docker-library/hello-world.git",
|
|
883
895
|
),
|
|
884
|
-
dockerfile=
|
|
896
|
+
dockerfile=dockerbuild.DockerfileArgs(
|
|
885
897
|
location="app/Dockerfile",
|
|
886
898
|
))
|
|
887
899
|
```
|
|
888
900
|
### Local export
|
|
889
901
|
```python
|
|
890
902
|
import pulumi
|
|
891
|
-
import
|
|
903
|
+
import pulumi_dockerbuild as dockerbuild
|
|
892
904
|
|
|
893
|
-
image =
|
|
894
|
-
context=
|
|
905
|
+
image = dockerbuild.Image("image",
|
|
906
|
+
context=dockerbuild.BuildContextArgs(
|
|
895
907
|
location="app",
|
|
896
908
|
),
|
|
897
|
-
exports=[
|
|
898
|
-
docker=
|
|
909
|
+
exports=[dockerbuild.ExportArgs(
|
|
910
|
+
docker=dockerbuild.ExportDockerArgs(
|
|
899
911
|
tar=True,
|
|
900
912
|
),
|
|
901
913
|
)])
|
|
@@ -915,17 +927,20 @@ class Image(pulumi.CustomResource):
|
|
|
915
927
|
if these arguments are sensitive.
|
|
916
928
|
|
|
917
929
|
Equivalent to Docker's `--build-arg` flag.
|
|
918
|
-
:param pulumi.Input[bool] build_on_preview:
|
|
919
|
-
|
|
930
|
+
:param pulumi.Input[bool] build_on_preview: By default, preview behavior depends on the execution environment. If
|
|
931
|
+
Pulumi detects the operation is running on a CI system (GitHub Actions,
|
|
932
|
+
Travis CI, Azure Pipelines, etc.) then it will build images during
|
|
933
|
+
previews as a safeguard. Otherwise, if not running on CI, previews will
|
|
934
|
+
not build images.
|
|
935
|
+
|
|
936
|
+
Setting this to `false` forces previews to never perform builds, and
|
|
937
|
+
setting it to `true` will always build the image during previews.
|
|
920
938
|
|
|
921
939
|
Images built during previews are never exported to registries, however
|
|
922
940
|
cache manifests are still exported.
|
|
923
941
|
|
|
924
942
|
On-disk Dockerfiles are always validated for syntactic correctness
|
|
925
943
|
regardless of this setting.
|
|
926
|
-
|
|
927
|
-
Defaults to `true` as a safeguard against broken images merging as part
|
|
928
|
-
of CI pipelines.
|
|
929
944
|
:param pulumi.Input[pulumi.InputType['BuilderConfigArgs']] builder: Builder configuration.
|
|
930
945
|
:param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['CacheFromArgs']]]] cache_from: Cache export configuration.
|
|
931
946
|
|
|
@@ -1038,14 +1053,20 @@ class Image(pulumi.CustomResource):
|
|
|
1038
1053
|
|
|
1039
1054
|
## Stability
|
|
1040
1055
|
|
|
1041
|
-
**This resource is
|
|
1056
|
+
**This resource is experimental and subject to change.**
|
|
1057
|
+
|
|
1058
|
+
API types are unstable. Subsequent releases _may_ require manual edits
|
|
1059
|
+
to your state file(s) in order to adopt API changes.
|
|
1042
1060
|
|
|
1043
|
-
|
|
1044
|
-
|
|
1061
|
+
`retainOnDelete: true` is recommended with this resource until it is
|
|
1062
|
+
stable. This enables future API changes to be adopted more easily by renaming
|
|
1063
|
+
resources.
|
|
1045
1064
|
|
|
1046
|
-
|
|
1065
|
+
Only use this resource if you understand and accept the risks.
|
|
1047
1066
|
|
|
1048
|
-
|
|
1067
|
+
## Migrating v3 and v4 Image resources
|
|
1068
|
+
|
|
1069
|
+
The `Image` resource provides a superset of functionality over the `Image` resources available in versions 3 and 4 of the Pulumi Docker provider.
|
|
1049
1070
|
Existing `Image` resources can be converted to the docker-build `Image` resources with minor modifications.
|
|
1050
1071
|
|
|
1051
1072
|
### Behavioral differences
|
|
@@ -1059,17 +1080,19 @@ class Image(pulumi.CustomResource):
|
|
|
1059
1080
|
|
|
1060
1081
|
Version `4.x` changed build-on-preview behavior to be opt-in.
|
|
1061
1082
|
By default, `v4.x` `Image` resources do _not_ build during previews, but this behavior can be toggled with the `buildOnPreview` option.
|
|
1062
|
-
|
|
1083
|
+
Some users felt this made previews in CI less helpful because they no longer detected bad images by default.
|
|
1063
1084
|
|
|
1064
|
-
The default behavior of
|
|
1065
|
-
|
|
1085
|
+
The default behavior of the `Image` resource has been changed to strike a better balance between CI use cases and manual updates.
|
|
1086
|
+
By default, Pulumi will now only build `Image` resources during previews when it detects a CI environment like GitHub Actions.
|
|
1087
|
+
Previews run in non-CI environments will not build images.
|
|
1088
|
+
This behavior is still configurable with `buildOnPreview`.
|
|
1066
1089
|
|
|
1067
1090
|
#### Push behavior
|
|
1068
1091
|
|
|
1069
1092
|
Versions `3.x` and `4.x` of the Pulumi Docker provider attempt to push images to remote registries by default.
|
|
1070
1093
|
They expose a `skipPush: true` option to disable pushing.
|
|
1071
1094
|
|
|
1072
|
-
|
|
1095
|
+
The `Image` resource matches the Docker CLI's behavior and does not push images anywhere by default.
|
|
1073
1096
|
|
|
1074
1097
|
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`).
|
|
1075
1098
|
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.
|
|
@@ -1140,28 +1163,28 @@ class Image(pulumi.CustomResource):
|
|
|
1140
1163
|
```python
|
|
1141
1164
|
import pulumi
|
|
1142
1165
|
import pulumi_aws as aws
|
|
1143
|
-
import
|
|
1166
|
+
import pulumi_dockerbuild as dockerbuild
|
|
1144
1167
|
|
|
1145
1168
|
ecr_repository = aws.ecr.Repository("ecr-repository")
|
|
1146
1169
|
auth_token = aws.ecr.get_authorization_token_output(registry_id=ecr_repository.registry_id)
|
|
1147
|
-
my_image =
|
|
1148
|
-
cache_from=[
|
|
1149
|
-
registry=
|
|
1170
|
+
my_image = dockerbuild.Image("my-image",
|
|
1171
|
+
cache_from=[dockerbuild.CacheFromArgs(
|
|
1172
|
+
registry=dockerbuild.CacheFromRegistryArgs(
|
|
1150
1173
|
ref=ecr_repository.repository_url.apply(lambda repository_url: f"{repository_url}:cache"),
|
|
1151
1174
|
),
|
|
1152
1175
|
)],
|
|
1153
|
-
cache_to=[
|
|
1154
|
-
registry=
|
|
1176
|
+
cache_to=[dockerbuild.CacheToArgs(
|
|
1177
|
+
registry=dockerbuild.CacheToRegistryArgs(
|
|
1155
1178
|
image_manifest=True,
|
|
1156
1179
|
oci_media_types=True,
|
|
1157
1180
|
ref=ecr_repository.repository_url.apply(lambda repository_url: f"{repository_url}:cache"),
|
|
1158
1181
|
),
|
|
1159
1182
|
)],
|
|
1160
|
-
context=
|
|
1183
|
+
context=dockerbuild.BuildContextArgs(
|
|
1161
1184
|
location="./app",
|
|
1162
1185
|
),
|
|
1163
1186
|
push=True,
|
|
1164
|
-
registries=[
|
|
1187
|
+
registries=[dockerbuild.RegistryArgs(
|
|
1165
1188
|
address=ecr_repository.repository_url,
|
|
1166
1189
|
password=auth_token.password,
|
|
1167
1190
|
username=auth_token.user_name,
|
|
@@ -1172,28 +1195,28 @@ class Image(pulumi.CustomResource):
|
|
|
1172
1195
|
### Multi-platform image
|
|
1173
1196
|
```python
|
|
1174
1197
|
import pulumi
|
|
1175
|
-
import
|
|
1198
|
+
import pulumi_dockerbuild as dockerbuild
|
|
1176
1199
|
|
|
1177
|
-
image =
|
|
1178
|
-
context=
|
|
1200
|
+
image = dockerbuild.Image("image",
|
|
1201
|
+
context=dockerbuild.BuildContextArgs(
|
|
1179
1202
|
location="app",
|
|
1180
1203
|
),
|
|
1181
1204
|
platforms=[
|
|
1182
|
-
|
|
1183
|
-
|
|
1205
|
+
dockerbuild.Platform.PLAN9_AMD64,
|
|
1206
|
+
dockerbuild.Platform.PLAN9_386,
|
|
1184
1207
|
])
|
|
1185
1208
|
```
|
|
1186
1209
|
### Registry export
|
|
1187
1210
|
```python
|
|
1188
1211
|
import pulumi
|
|
1189
|
-
import
|
|
1212
|
+
import pulumi_dockerbuild as dockerbuild
|
|
1190
1213
|
|
|
1191
|
-
image =
|
|
1192
|
-
context=
|
|
1214
|
+
image = dockerbuild.Image("image",
|
|
1215
|
+
context=dockerbuild.BuildContextArgs(
|
|
1193
1216
|
location="app",
|
|
1194
1217
|
),
|
|
1195
1218
|
push=True,
|
|
1196
|
-
registries=[
|
|
1219
|
+
registries=[dockerbuild.RegistryArgs(
|
|
1197
1220
|
address="docker.io",
|
|
1198
1221
|
password=docker_hub_password,
|
|
1199
1222
|
username="pulumibot",
|
|
@@ -1204,34 +1227,34 @@ class Image(pulumi.CustomResource):
|
|
|
1204
1227
|
### Caching
|
|
1205
1228
|
```python
|
|
1206
1229
|
import pulumi
|
|
1207
|
-
import
|
|
1230
|
+
import pulumi_dockerbuild as dockerbuild
|
|
1208
1231
|
|
|
1209
|
-
image =
|
|
1210
|
-
cache_from=[
|
|
1211
|
-
local=
|
|
1232
|
+
image = dockerbuild.Image("image",
|
|
1233
|
+
cache_from=[dockerbuild.CacheFromArgs(
|
|
1234
|
+
local=dockerbuild.CacheFromLocalArgs(
|
|
1212
1235
|
src="tmp/cache",
|
|
1213
1236
|
),
|
|
1214
1237
|
)],
|
|
1215
|
-
cache_to=[
|
|
1216
|
-
local=
|
|
1238
|
+
cache_to=[dockerbuild.CacheToArgs(
|
|
1239
|
+
local=dockerbuild.CacheToLocalArgs(
|
|
1217
1240
|
dest="tmp/cache",
|
|
1218
|
-
mode=
|
|
1241
|
+
mode=dockerbuild.CacheMode.MAX,
|
|
1219
1242
|
),
|
|
1220
1243
|
)],
|
|
1221
|
-
context=
|
|
1244
|
+
context=dockerbuild.BuildContextArgs(
|
|
1222
1245
|
location="app",
|
|
1223
1246
|
))
|
|
1224
1247
|
```
|
|
1225
1248
|
### Docker Build Cloud
|
|
1226
1249
|
```python
|
|
1227
1250
|
import pulumi
|
|
1228
|
-
import
|
|
1251
|
+
import pulumi_dockerbuild as dockerbuild
|
|
1229
1252
|
|
|
1230
|
-
image =
|
|
1231
|
-
builder=
|
|
1253
|
+
image = dockerbuild.Image("image",
|
|
1254
|
+
builder=dockerbuild.BuilderConfigArgs(
|
|
1232
1255
|
name="cloud-builder-name",
|
|
1233
1256
|
),
|
|
1234
|
-
context=
|
|
1257
|
+
context=dockerbuild.BuildContextArgs(
|
|
1235
1258
|
location="app",
|
|
1236
1259
|
),
|
|
1237
1260
|
exec_=True)
|
|
@@ -1239,23 +1262,23 @@ class Image(pulumi.CustomResource):
|
|
|
1239
1262
|
### Build arguments
|
|
1240
1263
|
```python
|
|
1241
1264
|
import pulumi
|
|
1242
|
-
import
|
|
1265
|
+
import pulumi_dockerbuild as dockerbuild
|
|
1243
1266
|
|
|
1244
|
-
image =
|
|
1267
|
+
image = dockerbuild.Image("image",
|
|
1245
1268
|
build_args={
|
|
1246
1269
|
"SET_ME_TO_TRUE": "true",
|
|
1247
1270
|
},
|
|
1248
|
-
context=
|
|
1271
|
+
context=dockerbuild.BuildContextArgs(
|
|
1249
1272
|
location="app",
|
|
1250
1273
|
))
|
|
1251
1274
|
```
|
|
1252
1275
|
### Build target
|
|
1253
1276
|
```python
|
|
1254
1277
|
import pulumi
|
|
1255
|
-
import
|
|
1278
|
+
import pulumi_dockerbuild as dockerbuild
|
|
1256
1279
|
|
|
1257
|
-
image =
|
|
1258
|
-
context=
|
|
1280
|
+
image = dockerbuild.Image("image",
|
|
1281
|
+
context=dockerbuild.BuildContextArgs(
|
|
1259
1282
|
location="app",
|
|
1260
1283
|
),
|
|
1261
1284
|
target="build-me")
|
|
@@ -1263,12 +1286,12 @@ class Image(pulumi.CustomResource):
|
|
|
1263
1286
|
### Named contexts
|
|
1264
1287
|
```python
|
|
1265
1288
|
import pulumi
|
|
1266
|
-
import
|
|
1289
|
+
import pulumi_dockerbuild as dockerbuild
|
|
1267
1290
|
|
|
1268
|
-
image =
|
|
1291
|
+
image = dockerbuild.Image("image", context=dockerbuild.BuildContextArgs(
|
|
1269
1292
|
location="app",
|
|
1270
1293
|
named={
|
|
1271
|
-
"golang:latest":
|
|
1294
|
+
"golang:latest": dockerbuild.ContextArgs(
|
|
1272
1295
|
location="docker-image://golang@sha256:b8e62cf593cdaff36efd90aa3a37de268e6781a2e68c6610940c48f7cdf36984",
|
|
1273
1296
|
),
|
|
1274
1297
|
},
|
|
@@ -1277,22 +1300,22 @@ class Image(pulumi.CustomResource):
|
|
|
1277
1300
|
### Remote context
|
|
1278
1301
|
```python
|
|
1279
1302
|
import pulumi
|
|
1280
|
-
import
|
|
1303
|
+
import pulumi_dockerbuild as dockerbuild
|
|
1281
1304
|
|
|
1282
|
-
image =
|
|
1305
|
+
image = dockerbuild.Image("image", context=dockerbuild.BuildContextArgs(
|
|
1283
1306
|
location="https://raw.githubusercontent.com/pulumi/pulumi-docker/api-types/provider/testdata/Dockerfile",
|
|
1284
1307
|
))
|
|
1285
1308
|
```
|
|
1286
1309
|
### Inline Dockerfile
|
|
1287
1310
|
```python
|
|
1288
1311
|
import pulumi
|
|
1289
|
-
import
|
|
1312
|
+
import pulumi_dockerbuild as dockerbuild
|
|
1290
1313
|
|
|
1291
|
-
image =
|
|
1292
|
-
context=
|
|
1314
|
+
image = dockerbuild.Image("image",
|
|
1315
|
+
context=dockerbuild.BuildContextArgs(
|
|
1293
1316
|
location="app",
|
|
1294
1317
|
),
|
|
1295
|
-
dockerfile=
|
|
1318
|
+
dockerfile=dockerbuild.DockerfileArgs(
|
|
1296
1319
|
inline=\"\"\"FROM busybox
|
|
1297
1320
|
COPY hello.c ./
|
|
1298
1321
|
\"\"\",
|
|
@@ -1301,27 +1324,27 @@ class Image(pulumi.CustomResource):
|
|
|
1301
1324
|
### Remote context
|
|
1302
1325
|
```python
|
|
1303
1326
|
import pulumi
|
|
1304
|
-
import
|
|
1327
|
+
import pulumi_dockerbuild as dockerbuild
|
|
1305
1328
|
|
|
1306
|
-
image =
|
|
1307
|
-
context=
|
|
1329
|
+
image = dockerbuild.Image("image",
|
|
1330
|
+
context=dockerbuild.BuildContextArgs(
|
|
1308
1331
|
location="https://github.com/docker-library/hello-world.git",
|
|
1309
1332
|
),
|
|
1310
|
-
dockerfile=
|
|
1333
|
+
dockerfile=dockerbuild.DockerfileArgs(
|
|
1311
1334
|
location="app/Dockerfile",
|
|
1312
1335
|
))
|
|
1313
1336
|
```
|
|
1314
1337
|
### Local export
|
|
1315
1338
|
```python
|
|
1316
1339
|
import pulumi
|
|
1317
|
-
import
|
|
1340
|
+
import pulumi_dockerbuild as dockerbuild
|
|
1318
1341
|
|
|
1319
|
-
image =
|
|
1320
|
-
context=
|
|
1342
|
+
image = dockerbuild.Image("image",
|
|
1343
|
+
context=dockerbuild.BuildContextArgs(
|
|
1321
1344
|
location="app",
|
|
1322
1345
|
),
|
|
1323
|
-
exports=[
|
|
1324
|
-
docker=
|
|
1346
|
+
exports=[dockerbuild.ExportArgs(
|
|
1347
|
+
docker=dockerbuild.ExportDockerArgs(
|
|
1325
1348
|
tar=True,
|
|
1326
1349
|
),
|
|
1327
1350
|
)])
|
|
@@ -1375,8 +1398,6 @@ class Image(pulumi.CustomResource):
|
|
|
1375
1398
|
|
|
1376
1399
|
__props__.__dict__["add_hosts"] = add_hosts
|
|
1377
1400
|
__props__.__dict__["build_args"] = build_args
|
|
1378
|
-
if build_on_preview is None:
|
|
1379
|
-
build_on_preview = True
|
|
1380
1401
|
__props__.__dict__["build_on_preview"] = build_on_preview
|
|
1381
1402
|
__props__.__dict__["builder"] = builder
|
|
1382
1403
|
__props__.__dict__["cache_from"] = cache_from
|
|
@@ -1481,17 +1502,20 @@ class Image(pulumi.CustomResource):
|
|
|
1481
1502
|
@pulumi.getter(name="buildOnPreview")
|
|
1482
1503
|
def build_on_preview(self) -> pulumi.Output[Optional[bool]]:
|
|
1483
1504
|
"""
|
|
1484
|
-
|
|
1485
|
-
|
|
1505
|
+
By default, preview behavior depends on the execution environment. If
|
|
1506
|
+
Pulumi detects the operation is running on a CI system (GitHub Actions,
|
|
1507
|
+
Travis CI, Azure Pipelines, etc.) then it will build images during
|
|
1508
|
+
previews as a safeguard. Otherwise, if not running on CI, previews will
|
|
1509
|
+
not build images.
|
|
1510
|
+
|
|
1511
|
+
Setting this to `false` forces previews to never perform builds, and
|
|
1512
|
+
setting it to `true` will always build the image during previews.
|
|
1486
1513
|
|
|
1487
1514
|
Images built during previews are never exported to registries, however
|
|
1488
1515
|
cache manifests are still exported.
|
|
1489
1516
|
|
|
1490
1517
|
On-disk Dockerfiles are always validated for syntactic correctness
|
|
1491
1518
|
regardless of this setting.
|
|
1492
|
-
|
|
1493
|
-
Defaults to `true` as a safeguard against broken images merging as part
|
|
1494
|
-
of CI pipelines.
|
|
1495
1519
|
"""
|
|
1496
1520
|
return pulumi.get(self, "build_on_preview")
|
|
1497
1521
|
|
pulumi_docker_build/index.py
CHANGED
|
@@ -104,25 +104,13 @@ class Index(pulumi.CustomResource):
|
|
|
104
104
|
tag: Optional[pulumi.Input[str]] = None,
|
|
105
105
|
__props__=None):
|
|
106
106
|
"""
|
|
107
|
-
|
|
108
|
-
(or manifest list) referencing one or more existing images.
|
|
107
|
+
An index (or manifest list) referencing one or more existing images.
|
|
109
108
|
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
for you automatically.
|
|
109
|
+
Useful for crafting a multi-platform image from several
|
|
110
|
+
platform-specific images.
|
|
113
111
|
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
discussion](https://github.com/docker/buildx/discussions/1382) for more
|
|
117
|
-
details).
|
|
118
|
-
|
|
119
|
-
Therefore this resource can be helpful if you are building
|
|
120
|
-
multi-platform images with caching: each platform can be built and
|
|
121
|
-
cached separately, and an `Index` can join them all together. An
|
|
122
|
-
example of this is shown below.
|
|
123
|
-
|
|
124
|
-
This resource creates an OCI image index or a Docker manifest list
|
|
125
|
-
depending on the media types of the source images.
|
|
112
|
+
This creates an OCI image index or a Docker manifest list depending on
|
|
113
|
+
the media types of the source images.
|
|
126
114
|
|
|
127
115
|
## Example Usage
|
|
128
116
|
### Multi-platform registry caching
|
|
@@ -191,25 +179,13 @@ class Index(pulumi.CustomResource):
|
|
|
191
179
|
args: IndexArgs,
|
|
192
180
|
opts: Optional[pulumi.ResourceOptions] = None):
|
|
193
181
|
"""
|
|
194
|
-
|
|
195
|
-
(or manifest list) referencing one or more existing images.
|
|
196
|
-
|
|
197
|
-
In most cases you do not need an `Index` to build a multi-platform
|
|
198
|
-
image -- specifying multiple platforms on the `Image` will handle this
|
|
199
|
-
for you automatically.
|
|
200
|
-
|
|
201
|
-
However, as of April 2024, building multi-platform images _with
|
|
202
|
-
caching_ will only export a cache for one platform at a time (see [this
|
|
203
|
-
discussion](https://github.com/docker/buildx/discussions/1382) for more
|
|
204
|
-
details).
|
|
182
|
+
An index (or manifest list) referencing one or more existing images.
|
|
205
183
|
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
cached separately, and an `Index` can join them all together. An
|
|
209
|
-
example of this is shown below.
|
|
184
|
+
Useful for crafting a multi-platform image from several
|
|
185
|
+
platform-specific images.
|
|
210
186
|
|
|
211
|
-
This
|
|
212
|
-
|
|
187
|
+
This creates an OCI image index or a Docker manifest list depending on
|
|
188
|
+
the media types of the source images.
|
|
213
189
|
|
|
214
190
|
## Example Usage
|
|
215
191
|
### Multi-platform registry caching
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: pulumi_docker_build
|
|
3
|
+
Version: 0.0.1a3
|
|
4
|
+
Summary: A Pulumi provider for Docker buildx
|
|
5
|
+
License: Apache-2.0
|
|
6
|
+
Project-URL: Homepage, https://pulumi.io
|
|
7
|
+
Project-URL: Repository, https://github.com/pulumi/pulumi-docker-build
|
|
8
|
+
Keywords: docker,buildkit,buildx
|
|
9
|
+
Requires-Python: >=3.8
|
|
10
|
+
Description-Content-Type: text/markdown
|
|
11
|
+
Requires-Dist: parver >=0.2.1
|
|
12
|
+
Requires-Dist: pulumi <4.0.0,>=3.0.0
|
|
13
|
+
Requires-Dist: semver >=2.8.1
|
|
14
|
+
|
|
15
|
+
# Pulumi Native Provider Boilerplate
|
|
16
|
+
|
|
17
|
+
This repository is a boilerplate showing how to create and locally test a native Pulumi provider.
|
|
18
|
+
|
|
19
|
+
## Authoring a Pulumi Native Provider
|
|
20
|
+
|
|
21
|
+
This boilerplate creates a working Pulumi-owned provider named `xyz`.
|
|
22
|
+
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.
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
### Prerequisites
|
|
26
|
+
|
|
27
|
+
Prerequisites for this repository are already satisfied by the [Pulumi Devcontainer](https://github.com/pulumi/devcontainer) if you are using Github Codespaces, or VSCode.
|
|
28
|
+
|
|
29
|
+
If you are not using VSCode, you will need to ensure the following tools are installed and present in your `$PATH`:
|
|
30
|
+
|
|
31
|
+
* [`pulumictl`](https://github.com/pulumi/pulumictl#installation)
|
|
32
|
+
* [Go 1.21](https://golang.org/dl/) or 1.latest
|
|
33
|
+
* [NodeJS](https://nodejs.org/en/) 14.x. We recommend using [nvm](https://github.com/nvm-sh/nvm) to manage NodeJS installations.
|
|
34
|
+
* [Yarn](https://yarnpkg.com/)
|
|
35
|
+
* [TypeScript](https://www.typescriptlang.org/)
|
|
36
|
+
* [Python](https://www.python.org/downloads/) (called as `python3`). For recent versions of MacOS, the system-installed version is fine.
|
|
37
|
+
* [.NET](https://dotnet.microsoft.com/download)
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
### Build & test the boilerplate XYZ provider
|
|
41
|
+
|
|
42
|
+
1. Create a new Github CodeSpaces environment using this repository.
|
|
43
|
+
1. Open a terminal in the CodeSpaces environment.
|
|
44
|
+
1. Run `make build install` to build and install the provider.
|
|
45
|
+
1. Run `make gen_examples` to generate the example programs in `examples/` off of the source `examples/yaml` example program.
|
|
46
|
+
1. Run `make up` to run the example program in `examples/yaml`.
|
|
47
|
+
1. Run `make down` to tear down the example program.
|
|
48
|
+
|
|
49
|
+
### Creating a new provider repository
|
|
50
|
+
|
|
51
|
+
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:
|
|
52
|
+
|
|
53
|
+
1. Click "Use this template".
|
|
54
|
+
1. Set the following options:
|
|
55
|
+
* Owner: pulumi
|
|
56
|
+
* Repository name: pulumi-xyz-native (replace "xyz" with the name of your provider)
|
|
57
|
+
* Description: Pulumi provider for xyz
|
|
58
|
+
* Repository type: Public
|
|
59
|
+
1. Clone the generated repository.
|
|
60
|
+
|
|
61
|
+
From the templated repository:
|
|
62
|
+
|
|
63
|
+
1. Search-replace `xyz` with the name of your desired provider.
|
|
64
|
+
|
|
65
|
+
#### Build the provider and install the plugin
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
$ make build install
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
This will:
|
|
72
|
+
|
|
73
|
+
1. Create the SDK codegen binary and place it in a `./bin` folder (gitignored)
|
|
74
|
+
2. Create the provider binary and place it in the `./bin` folder (gitignored)
|
|
75
|
+
3. Generate the dotnet, Go, Node, and Python SDKs and place them in the `./sdk` folder
|
|
76
|
+
4. Install the provider on your machine.
|
|
77
|
+
|
|
78
|
+
#### Test against the example
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
$ cd examples/simple
|
|
82
|
+
$ yarn link @pulumi/xyz
|
|
83
|
+
$ yarn install
|
|
84
|
+
$ pulumi stack init test
|
|
85
|
+
$ pulumi up
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
Now that you have completed all of the above steps, you have a working provider that generates a random string for you.
|
|
89
|
+
|
|
90
|
+
#### A brief repository overview
|
|
91
|
+
|
|
92
|
+
You now have:
|
|
93
|
+
|
|
94
|
+
1. A `provider/` folder containing the building and implementation logic
|
|
95
|
+
1. `cmd/pulumi-resource-xyz/main.go` - holds the provider's sample implementation logic.
|
|
96
|
+
2. `deployment-templates` - a set of files to help you around deployment and publication
|
|
97
|
+
3. `sdk` - holds the generated code libraries created by `pulumi-gen-xyz/main.go`
|
|
98
|
+
4. `examples` a folder of Pulumi programs to try locally and/or use in CI.
|
|
99
|
+
5. A `Makefile` and this `README`.
|
|
100
|
+
|
|
101
|
+
#### Additional Details
|
|
102
|
+
|
|
103
|
+
This repository depends on the pulumi-go-provider library. For more details on building providers, please check
|
|
104
|
+
the [Pulumi Go Provider docs](https://github.com/pulumi/pulumi-go-provider).
|
|
105
|
+
|
|
106
|
+
### Build Examples
|
|
107
|
+
|
|
108
|
+
Create an example program using the resources defined in your provider, and place it in the `examples/` folder.
|
|
109
|
+
|
|
110
|
+
You can now repeat the steps for [build, install, and test](#test-against-the-example).
|
|
111
|
+
|
|
112
|
+
## Configuring CI and releases
|
|
113
|
+
|
|
114
|
+
1. Follow the instructions laid out in the [deployment templates](./deployment-templates/README-DEPLOYMENT.md).
|
|
115
|
+
|
|
116
|
+
## References
|
|
117
|
+
|
|
118
|
+
Other resources/examples for implementing providers:
|
|
119
|
+
* [Pulumi Command provider](https://github.com/pulumi/pulumi-command/blob/master/provider/pkg/provider/provider.go)
|
|
120
|
+
* [Pulumi Go Provider repository](https://github.com/pulumi/pulumi-go-provider)
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
pulumi_docker_build/__init__.py,sha256=jbA6SMpisvwJDycUKuo4IXVJ5_qjIao_1iPP9lcZ-Vw,983
|
|
2
2
|
pulumi_docker_build/_enums.py,sha256=yfsDmimBobvf70zx6VAR_6ABp50Dan452rpIFVs8jkA,1928
|
|
3
3
|
pulumi_docker_build/_inputs.py,sha256=L_v8wgNW_tjfh4caAatNqLUzqJwmPRbFSFFXrAs0h88,97964
|
|
4
|
-
pulumi_docker_build/_utilities.py,sha256=
|
|
5
|
-
pulumi_docker_build/image.py,sha256=
|
|
6
|
-
pulumi_docker_build/index.py,sha256=
|
|
4
|
+
pulumi_docker_build/_utilities.py,sha256=rA8XvgybOPKFzEaIJx85muKv85tzLL5lEBQ58eVLEzs,9265
|
|
5
|
+
pulumi_docker_build/image.py,sha256=AXN-kxI63aLrYFwbwTYjIuRf8XiPaC-YDtmh7jmqUpo,76626
|
|
6
|
+
pulumi_docker_build/index.py,sha256=KHTpB_4i7e3b2no1batLV7KyhYJrWUj-bEdKh9VEYYQ,13254
|
|
7
7
|
pulumi_docker_build/outputs.py,sha256=l9VIy-AMXUdQffKVpYcR-KCdtc7huWQ2qCDhv_hgHVs,83253
|
|
8
8
|
pulumi_docker_build/provider.py,sha256=5f1FtyHXjxcCA3nouMG5HVJyrBEdCB452ezcNt53NmQ,4780
|
|
9
|
-
pulumi_docker_build/pulumi-plugin.json,sha256=
|
|
9
|
+
pulumi_docker_build/pulumi-plugin.json,sha256=aNWnPPkTjPtNuWio8hIVyGOPhfmTF0knTyxRragQ0dQ,102
|
|
10
10
|
pulumi_docker_build/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
11
11
|
pulumi_docker_build/config/__init__.py,sha256=YdGLR92OvYD0CYDgt_FTaHJOb_VzW8fto_Cgx6fLd3k,267
|
|
12
12
|
pulumi_docker_build/config/__init__.pyi,sha256=2lJs0q5nxrEi63kCCpe7M23-j-0NiQu9UpKaYAWe5TM,441
|
|
13
13
|
pulumi_docker_build/config/vars.py,sha256=6g1SHA-v-YBMxDX9KwlhaZZ3Yk7DzC5_EB2xz0FQiKo,756
|
|
14
|
-
pulumi_docker_build-0.0.
|
|
15
|
-
pulumi_docker_build-0.0.
|
|
16
|
-
pulumi_docker_build-0.0.
|
|
17
|
-
pulumi_docker_build-0.0.
|
|
14
|
+
pulumi_docker_build-0.0.1a3.dist-info/METADATA,sha256=IeBXqw170V8JSN9pgBeD4VtD4Gp2rW0_bgDB6WLEIi0,4791
|
|
15
|
+
pulumi_docker_build-0.0.1a3.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
|
16
|
+
pulumi_docker_build-0.0.1a3.dist-info/top_level.txt,sha256=-O-MiPQ61mhil3wD9QdYf8yA4r5vNPmBgSGdi9cOQ18,20
|
|
17
|
+
pulumi_docker_build-0.0.1a3.dist-info/RECORD,,
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.1
|
|
2
|
-
Name: pulumi_docker_build
|
|
3
|
-
Version: 0.0.1
|
|
4
|
-
Summary: A Pulumi provider for building modern Docker images with buildx and BuildKit.
|
|
5
|
-
License: Apache-2.0
|
|
6
|
-
Project-URL: Homepage, https://pulumi.com
|
|
7
|
-
Project-URL: Repository, https://github.com/pulumi/pulumi-docker-build
|
|
8
|
-
Keywords: docker,buildkit,buildx,kind/native
|
|
9
|
-
Requires-Python: >=3.8
|
|
10
|
-
Description-Content-Type: text/markdown
|
|
11
|
-
Requires-Dist: parver >=0.2.1
|
|
12
|
-
Requires-Dist: pulumi <4.0.0,>=3.0.0
|
|
13
|
-
Requires-Dist: semver >=2.8.1
|
|
14
|
-
|
|
15
|
-
[](https://slack.pulumi.com)
|
|
16
|
-
[](https://www.npmjs.com/package/@pulumi/docker-build)
|
|
17
|
-
[](https://pypi.org/project/pulumi-docker-build)
|
|
18
|
-
[](https://badge.fury.io/nu/pulumi.dockerbuild)
|
|
19
|
-
[](https://pkg.go.dev/github.com/pulumi/pulumi-docker-build/sdk/go)
|
|
20
|
-
[](https://github.com/pulumi/pulumi-docker-build/blob/main/LICENSE)
|
|
21
|
-
|
|
22
|
-
# Docker-Build Resource Provider
|
|
23
|
-
|
|
24
|
-
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/).
|
|
25
|
-
|
|
26
|
-
Not to be confused with the earlier
|
|
27
|
-
[Docker](http://github.com/pulumi/pulumi-docker) provider, which is still
|
|
28
|
-
appropriate for managing resources unrelated to building images.
|
|
29
|
-
|
|
30
|
-
| Provider | Use cases |
|
|
31
|
-
| ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
32
|
-
| `@pulumi/docker-build` | Anything related to building images with `docker build`. |
|
|
33
|
-
| `@pulumi/docker` | Everything else -- including running containers and creating networks. |
|
|
34
|
-
|
|
35
|
-
## Reference
|
|
36
|
-
|
|
37
|
-
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/).
|
|
File without changes
|
|
File without changes
|