pulumi-docker 4.6.0b1__py3-none-any.whl → 4.6.0b3__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 might be problematic. Click here for more details.

@@ -14,31 +14,31 @@ from ._enums import *
14
14
  __all__ = [
15
15
  'BuildContext',
16
16
  'BuilderConfig',
17
+ 'CacheFrom',
17
18
  'CacheFromAzureBlob',
18
- 'CacheFromEntry',
19
19
  'CacheFromGitHubActions',
20
20
  'CacheFromLocal',
21
21
  'CacheFromRegistry',
22
22
  'CacheFromS3',
23
- 'CacheInline',
23
+ 'CacheTo',
24
24
  'CacheToAzureBlob',
25
- 'CacheToEntry',
26
25
  'CacheToGitHubActions',
26
+ 'CacheToInline',
27
27
  'CacheToLocal',
28
28
  'CacheToRegistry',
29
29
  'CacheToS3',
30
30
  'Context',
31
31
  'Dockerfile',
32
+ 'Export',
33
+ 'ExportCacheOnly',
32
34
  'ExportDocker',
33
- 'ExportEntry',
34
35
  'ExportImage',
35
36
  'ExportLocal',
36
37
  'ExportOCI',
37
38
  'ExportRegistry',
38
39
  'ExportTar',
39
- 'Manifest',
40
- 'ManifestPlatform',
41
40
  'RegistryAuth',
41
+ 'SSH',
42
42
  ]
43
43
 
44
44
  @pulumi.output_type
@@ -104,6 +104,8 @@ class BuilderConfig(dict):
104
104
 
105
105
  Only `docker-container`, `kubernetes`, or `remote` drivers are
106
106
  supported. The legacy `docker` driver is not supported.
107
+
108
+ Equivalent to Docker's `--builder` flag.
107
109
  """
108
110
  if name is not None:
109
111
  pulumi.set(__self__, "name", name)
@@ -116,90 +118,29 @@ class BuilderConfig(dict):
116
118
 
117
119
  Only `docker-container`, `kubernetes`, or `remote` drivers are
118
120
  supported. The legacy `docker` driver is not supported.
119
- """
120
- return pulumi.get(self, "name")
121
-
122
-
123
- @pulumi.output_type
124
- class CacheFromAzureBlob(dict):
125
- @staticmethod
126
- def __key_warning(key: str):
127
- suggest = None
128
- if key == "accountUrl":
129
- suggest = "account_url"
130
- elif key == "secretAccessKey":
131
- suggest = "secret_access_key"
132
-
133
- if suggest:
134
- pulumi.log.warn(f"Key '{key}' not found in CacheFromAzureBlob. Access the value via the '{suggest}' property getter instead.")
135
-
136
- def __getitem__(self, key: str) -> Any:
137
- CacheFromAzureBlob.__key_warning(key)
138
- return super().__getitem__(key)
139
-
140
- def get(self, key: str, default = None) -> Any:
141
- CacheFromAzureBlob.__key_warning(key)
142
- return super().get(key, default)
143
-
144
- def __init__(__self__, *,
145
- name: str,
146
- account_url: Optional[str] = None,
147
- secret_access_key: Optional[str] = None):
148
- """
149
- :param str name: The name of the cache image.
150
- :param str account_url: Base URL of the storage account.
151
- :param str secret_access_key: Blob storage account key.
152
- """
153
- pulumi.set(__self__, "name", name)
154
- if account_url is not None:
155
- pulumi.set(__self__, "account_url", account_url)
156
- if secret_access_key is not None:
157
- pulumi.set(__self__, "secret_access_key", secret_access_key)
158
121
 
159
- @property
160
- @pulumi.getter
161
- def name(self) -> str:
162
- """
163
- The name of the cache image.
122
+ Equivalent to Docker's `--builder` flag.
164
123
  """
165
124
  return pulumi.get(self, "name")
166
125
 
167
- @property
168
- @pulumi.getter(name="accountUrl")
169
- def account_url(self) -> Optional[str]:
170
- """
171
- Base URL of the storage account.
172
- """
173
- return pulumi.get(self, "account_url")
174
-
175
- @property
176
- @pulumi.getter(name="secretAccessKey")
177
- def secret_access_key(self) -> Optional[str]:
178
- """
179
- Blob storage account key.
180
- """
181
- return pulumi.get(self, "secret_access_key")
182
-
183
126
 
184
127
  @pulumi.output_type
185
- class CacheFromEntry(dict):
128
+ class CacheFrom(dict):
186
129
  def __init__(__self__, *,
187
130
  azblob: Optional['outputs.CacheFromAzureBlob'] = None,
131
+ disabled: Optional[bool] = None,
188
132
  gha: Optional['outputs.CacheFromGitHubActions'] = None,
189
- inline: Optional['outputs.CacheInline'] = None,
190
133
  local: Optional['outputs.CacheFromLocal'] = None,
191
134
  raw: Optional[str] = None,
192
135
  registry: Optional['outputs.CacheFromRegistry'] = None,
193
136
  s3: Optional['outputs.CacheFromS3'] = None):
194
137
  """
195
138
  :param 'CacheFromAzureBlobArgs' azblob: Upload build caches to Azure's blob storage service.
139
+ :param bool disabled: When `true` this entry will be excluded. Defaults to `false`.
196
140
  :param 'CacheFromGitHubActionsArgs' gha: Recommended for use with GitHub Actions workflows.
197
141
 
198
142
  An action like `crazy-max/ghaction-github-runtime` is recommended to
199
143
  expose appropriate credentials to your GitHub workflow.
200
- :param 'CacheInlineArgs' inline: The inline cache storage backend is the simplest implementation to get
201
- started with, but it does not handle multi-stage builds. Consider the
202
- registry cache backend instead.
203
144
  :param 'CacheFromLocalArgs' local: A simple backend which caches images on your local filesystem.
204
145
  :param str raw: A raw string as you would provide it to the Docker CLI (e.g.,
205
146
  `type=inline`).
@@ -209,10 +150,10 @@ class CacheFromEntry(dict):
209
150
  """
210
151
  if azblob is not None:
211
152
  pulumi.set(__self__, "azblob", azblob)
153
+ if disabled is not None:
154
+ pulumi.set(__self__, "disabled", disabled)
212
155
  if gha is not None:
213
156
  pulumi.set(__self__, "gha", gha)
214
- if inline is not None:
215
- pulumi.set(__self__, "inline", inline)
216
157
  if local is not None:
217
158
  pulumi.set(__self__, "local", local)
218
159
  if raw is not None:
@@ -230,6 +171,14 @@ class CacheFromEntry(dict):
230
171
  """
231
172
  return pulumi.get(self, "azblob")
232
173
 
174
+ @property
175
+ @pulumi.getter
176
+ def disabled(self) -> Optional[bool]:
177
+ """
178
+ When `true` this entry will be excluded. Defaults to `false`.
179
+ """
180
+ return pulumi.get(self, "disabled")
181
+
233
182
  @property
234
183
  @pulumi.getter
235
184
  def gha(self) -> Optional['outputs.CacheFromGitHubActions']:
@@ -241,16 +190,6 @@ class CacheFromEntry(dict):
241
190
  """
242
191
  return pulumi.get(self, "gha")
243
192
 
244
- @property
245
- @pulumi.getter
246
- def inline(self) -> Optional['outputs.CacheInline']:
247
- """
248
- The inline cache storage backend is the simplest implementation to get
249
- started with, but it does not handle multi-stage builds. Consider the
250
- registry cache backend instead.
251
- """
252
- return pulumi.get(self, "inline")
253
-
254
193
  @property
255
194
  @pulumi.getter
256
195
  def local(self) -> Optional['outputs.CacheFromLocal']:
@@ -286,6 +225,67 @@ class CacheFromEntry(dict):
286
225
  return pulumi.get(self, "s3")
287
226
 
288
227
 
228
+ @pulumi.output_type
229
+ class CacheFromAzureBlob(dict):
230
+ @staticmethod
231
+ def __key_warning(key: str):
232
+ suggest = None
233
+ if key == "accountUrl":
234
+ suggest = "account_url"
235
+ elif key == "secretAccessKey":
236
+ suggest = "secret_access_key"
237
+
238
+ if suggest:
239
+ pulumi.log.warn(f"Key '{key}' not found in CacheFromAzureBlob. Access the value via the '{suggest}' property getter instead.")
240
+
241
+ def __getitem__(self, key: str) -> Any:
242
+ CacheFromAzureBlob.__key_warning(key)
243
+ return super().__getitem__(key)
244
+
245
+ def get(self, key: str, default = None) -> Any:
246
+ CacheFromAzureBlob.__key_warning(key)
247
+ return super().get(key, default)
248
+
249
+ def __init__(__self__, *,
250
+ name: str,
251
+ account_url: Optional[str] = None,
252
+ secret_access_key: Optional[str] = None):
253
+ """
254
+ :param str name: The name of the cache image.
255
+ :param str account_url: Base URL of the storage account.
256
+ :param str secret_access_key: Blob storage account key.
257
+ """
258
+ pulumi.set(__self__, "name", name)
259
+ if account_url is not None:
260
+ pulumi.set(__self__, "account_url", account_url)
261
+ if secret_access_key is not None:
262
+ pulumi.set(__self__, "secret_access_key", secret_access_key)
263
+
264
+ @property
265
+ @pulumi.getter
266
+ def name(self) -> str:
267
+ """
268
+ The name of the cache image.
269
+ """
270
+ return pulumi.get(self, "name")
271
+
272
+ @property
273
+ @pulumi.getter(name="accountUrl")
274
+ def account_url(self) -> Optional[str]:
275
+ """
276
+ Base URL of the storage account.
277
+ """
278
+ return pulumi.get(self, "account_url")
279
+
280
+ @property
281
+ @pulumi.getter(name="secretAccessKey")
282
+ def secret_access_key(self) -> Optional[str]:
283
+ """
284
+ Blob storage account key.
285
+ """
286
+ return pulumi.get(self, "secret_access_key")
287
+
288
+
289
289
  @pulumi.output_type
290
290
  class CacheFromGitHubActions(dict):
291
291
  def __init__(__self__, *,
@@ -570,119 +570,24 @@ class CacheFromS3(dict):
570
570
 
571
571
 
572
572
  @pulumi.output_type
573
- class CacheInline(dict):
574
- def __init__(__self__):
575
- pass
576
-
577
-
578
- @pulumi.output_type
579
- class CacheToAzureBlob(dict):
580
- @staticmethod
581
- def __key_warning(key: str):
582
- suggest = None
583
- if key == "accountUrl":
584
- suggest = "account_url"
585
- elif key == "ignoreError":
586
- suggest = "ignore_error"
587
- elif key == "secretAccessKey":
588
- suggest = "secret_access_key"
589
-
590
- if suggest:
591
- pulumi.log.warn(f"Key '{key}' not found in CacheToAzureBlob. Access the value via the '{suggest}' property getter instead.")
592
-
593
- def __getitem__(self, key: str) -> Any:
594
- CacheToAzureBlob.__key_warning(key)
595
- return super().__getitem__(key)
596
-
597
- def get(self, key: str, default = None) -> Any:
598
- CacheToAzureBlob.__key_warning(key)
599
- return super().get(key, default)
600
-
601
- def __init__(__self__, *,
602
- name: str,
603
- account_url: Optional[str] = None,
604
- ignore_error: Optional[bool] = None,
605
- mode: Optional['CacheMode'] = None,
606
- secret_access_key: Optional[str] = None):
607
- """
608
- :param str name: The name of the cache image.
609
- :param str account_url: Base URL of the storage account.
610
- :param bool ignore_error: Ignore errors caused by failed cache exports.
611
- :param 'CacheMode' mode: The cache mode to use. Defaults to `min`.
612
- :param str secret_access_key: Blob storage account key.
613
- """
614
- pulumi.set(__self__, "name", name)
615
- if account_url is not None:
616
- pulumi.set(__self__, "account_url", account_url)
617
- if ignore_error is None:
618
- ignore_error = False
619
- if ignore_error is not None:
620
- pulumi.set(__self__, "ignore_error", ignore_error)
621
- if mode is None:
622
- mode = 'min'
623
- if mode is not None:
624
- pulumi.set(__self__, "mode", mode)
625
- if secret_access_key is not None:
626
- pulumi.set(__self__, "secret_access_key", secret_access_key)
627
-
628
- @property
629
- @pulumi.getter
630
- def name(self) -> str:
631
- """
632
- The name of the cache image.
633
- """
634
- return pulumi.get(self, "name")
635
-
636
- @property
637
- @pulumi.getter(name="accountUrl")
638
- def account_url(self) -> Optional[str]:
639
- """
640
- Base URL of the storage account.
641
- """
642
- return pulumi.get(self, "account_url")
643
-
644
- @property
645
- @pulumi.getter(name="ignoreError")
646
- def ignore_error(self) -> Optional[bool]:
647
- """
648
- Ignore errors caused by failed cache exports.
649
- """
650
- return pulumi.get(self, "ignore_error")
651
-
652
- @property
653
- @pulumi.getter
654
- def mode(self) -> Optional['CacheMode']:
655
- """
656
- The cache mode to use. Defaults to `min`.
657
- """
658
- return pulumi.get(self, "mode")
659
-
660
- @property
661
- @pulumi.getter(name="secretAccessKey")
662
- def secret_access_key(self) -> Optional[str]:
663
- """
664
- Blob storage account key.
665
- """
666
- return pulumi.get(self, "secret_access_key")
667
-
668
-
669
- @pulumi.output_type
670
- class CacheToEntry(dict):
573
+ class CacheTo(dict):
671
574
  def __init__(__self__, *,
672
575
  azblob: Optional['outputs.CacheToAzureBlob'] = None,
576
+ disabled: Optional[bool] = None,
673
577
  gha: Optional['outputs.CacheToGitHubActions'] = None,
674
- inline: Optional['outputs.CacheInline'] = None,
578
+ inline: Optional['outputs.CacheToInline'] = None,
675
579
  local: Optional['outputs.CacheToLocal'] = None,
676
580
  raw: Optional[str] = None,
677
581
  registry: Optional['outputs.CacheToRegistry'] = None,
678
582
  s3: Optional['outputs.CacheToS3'] = None):
679
583
  """
680
584
  :param 'CacheToAzureBlobArgs' azblob: Push cache to Azure's blob storage service.
585
+ :param bool disabled: When `true` this entry will be excluded. Defaults to `false`.
681
586
  :param 'CacheToGitHubActionsArgs' gha: Recommended for use with GitHub Actions workflows.
682
587
 
683
588
  An action like `crazy-max/ghaction-github-runtime` is recommended to
684
589
  expose appropriate credentials to your GitHub workflow.
685
- :param 'CacheInlineArgs' inline: The inline cache storage backend is the simplest implementation to get
590
+ :param 'CacheToInlineArgs' inline: The inline cache storage backend is the simplest implementation to get
686
591
  started with, but it does not handle multi-stage builds. Consider the
687
592
  `registry` cache backend instead.
688
593
  :param 'CacheToLocalArgs' local: A simple backend which caches imagines on your local filesystem.
@@ -694,6 +599,8 @@ class CacheToEntry(dict):
694
599
  """
695
600
  if azblob is not None:
696
601
  pulumi.set(__self__, "azblob", azblob)
602
+ if disabled is not None:
603
+ pulumi.set(__self__, "disabled", disabled)
697
604
  if gha is not None:
698
605
  pulumi.set(__self__, "gha", gha)
699
606
  if inline is not None:
@@ -715,6 +622,14 @@ class CacheToEntry(dict):
715
622
  """
716
623
  return pulumi.get(self, "azblob")
717
624
 
625
+ @property
626
+ @pulumi.getter
627
+ def disabled(self) -> Optional[bool]:
628
+ """
629
+ When `true` this entry will be excluded. Defaults to `false`.
630
+ """
631
+ return pulumi.get(self, "disabled")
632
+
718
633
  @property
719
634
  @pulumi.getter
720
635
  def gha(self) -> Optional['outputs.CacheToGitHubActions']:
@@ -728,7 +643,7 @@ class CacheToEntry(dict):
728
643
 
729
644
  @property
730
645
  @pulumi.getter
731
- def inline(self) -> Optional['outputs.CacheInline']:
646
+ def inline(self) -> Optional['outputs.CacheToInline']:
732
647
  """
733
648
  The inline cache storage backend is the simplest implementation to get
734
649
  started with, but it does not handle multi-stage builds. Consider the
@@ -771,6 +686,97 @@ class CacheToEntry(dict):
771
686
  return pulumi.get(self, "s3")
772
687
 
773
688
 
689
+ @pulumi.output_type
690
+ class CacheToAzureBlob(dict):
691
+ @staticmethod
692
+ def __key_warning(key: str):
693
+ suggest = None
694
+ if key == "accountUrl":
695
+ suggest = "account_url"
696
+ elif key == "ignoreError":
697
+ suggest = "ignore_error"
698
+ elif key == "secretAccessKey":
699
+ suggest = "secret_access_key"
700
+
701
+ if suggest:
702
+ pulumi.log.warn(f"Key '{key}' not found in CacheToAzureBlob. Access the value via the '{suggest}' property getter instead.")
703
+
704
+ def __getitem__(self, key: str) -> Any:
705
+ CacheToAzureBlob.__key_warning(key)
706
+ return super().__getitem__(key)
707
+
708
+ def get(self, key: str, default = None) -> Any:
709
+ CacheToAzureBlob.__key_warning(key)
710
+ return super().get(key, default)
711
+
712
+ def __init__(__self__, *,
713
+ name: str,
714
+ account_url: Optional[str] = None,
715
+ ignore_error: Optional[bool] = None,
716
+ mode: Optional['CacheMode'] = None,
717
+ secret_access_key: Optional[str] = None):
718
+ """
719
+ :param str name: The name of the cache image.
720
+ :param str account_url: Base URL of the storage account.
721
+ :param bool ignore_error: Ignore errors caused by failed cache exports.
722
+ :param 'CacheMode' mode: The cache mode to use. Defaults to `min`.
723
+ :param str secret_access_key: Blob storage account key.
724
+ """
725
+ pulumi.set(__self__, "name", name)
726
+ if account_url is not None:
727
+ pulumi.set(__self__, "account_url", account_url)
728
+ if ignore_error is None:
729
+ ignore_error = False
730
+ if ignore_error is not None:
731
+ pulumi.set(__self__, "ignore_error", ignore_error)
732
+ if mode is None:
733
+ mode = 'min'
734
+ if mode is not None:
735
+ pulumi.set(__self__, "mode", mode)
736
+ if secret_access_key is not None:
737
+ pulumi.set(__self__, "secret_access_key", secret_access_key)
738
+
739
+ @property
740
+ @pulumi.getter
741
+ def name(self) -> str:
742
+ """
743
+ The name of the cache image.
744
+ """
745
+ return pulumi.get(self, "name")
746
+
747
+ @property
748
+ @pulumi.getter(name="accountUrl")
749
+ def account_url(self) -> Optional[str]:
750
+ """
751
+ Base URL of the storage account.
752
+ """
753
+ return pulumi.get(self, "account_url")
754
+
755
+ @property
756
+ @pulumi.getter(name="ignoreError")
757
+ def ignore_error(self) -> Optional[bool]:
758
+ """
759
+ Ignore errors caused by failed cache exports.
760
+ """
761
+ return pulumi.get(self, "ignore_error")
762
+
763
+ @property
764
+ @pulumi.getter
765
+ def mode(self) -> Optional['CacheMode']:
766
+ """
767
+ The cache mode to use. Defaults to `min`.
768
+ """
769
+ return pulumi.get(self, "mode")
770
+
771
+ @property
772
+ @pulumi.getter(name="secretAccessKey")
773
+ def secret_access_key(self) -> Optional[str]:
774
+ """
775
+ Blob storage account key.
776
+ """
777
+ return pulumi.get(self, "secret_access_key")
778
+
779
+
774
780
  @pulumi.output_type
775
781
  class CacheToGitHubActions(dict):
776
782
  @staticmethod
@@ -889,6 +895,18 @@ class CacheToGitHubActions(dict):
889
895
  return pulumi.get(self, "url")
890
896
 
891
897
 
898
+ @pulumi.output_type
899
+ class CacheToInline(dict):
900
+ """
901
+ Include an inline cache with the exported image.
902
+ """
903
+ def __init__(__self__):
904
+ """
905
+ Include an inline cache with the exported image.
906
+ """
907
+ pass
908
+
909
+
892
910
  @pulumi.output_type
893
911
  class CacheToLocal(dict):
894
912
  @staticmethod
@@ -1041,11 +1059,14 @@ class CacheToRegistry(dict):
1041
1059
  :param bool force_compression: Forcefully apply compression.
1042
1060
  :param bool ignore_error: Ignore errors caused by failed cache exports.
1043
1061
  :param bool image_manifest: Export cache manifest as an OCI-compatible image manifest instead of a
1044
- manifest list (requires OCI media types).
1062
+ manifest list. Requires `ociMediaTypes` to also be `true`.
1045
1063
 
1046
- Defaults to `false`.
1064
+ Some registries like AWS ECR will not work with caching if this is
1065
+ `false`.
1066
+
1067
+ Defaults to `false` to match Docker's default behavior.
1047
1068
  :param 'CacheMode' mode: The cache mode to use. Defaults to `min`.
1048
- :param bool oci_media_types: Whether to use OCI mediatypes in exported manifests. Defaults to
1069
+ :param bool oci_media_types: Whether to use OCI media types in exported manifests. Defaults to
1049
1070
  `true`.
1050
1071
  """
1051
1072
  pulumi.set(__self__, "ref", ref)
@@ -1123,9 +1144,12 @@ class CacheToRegistry(dict):
1123
1144
  def image_manifest(self) -> Optional[bool]:
1124
1145
  """
1125
1146
  Export cache manifest as an OCI-compatible image manifest instead of a
1126
- manifest list (requires OCI media types).
1147
+ manifest list. Requires `ociMediaTypes` to also be `true`.
1148
+
1149
+ Some registries like AWS ECR will not work with caching if this is
1150
+ `false`.
1127
1151
 
1128
- Defaults to `false`.
1152
+ Defaults to `false` to match Docker's default behavior.
1129
1153
  """
1130
1154
  return pulumi.get(self, "image_manifest")
1131
1155
 
@@ -1141,7 +1165,7 @@ class CacheToRegistry(dict):
1141
1165
  @pulumi.getter(name="ociMediaTypes")
1142
1166
  def oci_media_types(self) -> Optional[bool]:
1143
1167
  """
1144
- Whether to use OCI mediatypes in exported manifests. Defaults to
1168
+ Whether to use OCI media types in exported manifests. Defaults to
1145
1169
  `true`.
1146
1170
  """
1147
1171
  return pulumi.get(self, "oci_media_types")
@@ -1326,92 +1350,225 @@ class CacheToS3(dict):
1326
1350
  @pulumi.getter(name="sessionToken")
1327
1351
  def session_token(self) -> Optional[str]:
1328
1352
  """
1329
- Defaults to `$AWS_SESSION_TOKEN`.
1353
+ Defaults to `$AWS_SESSION_TOKEN`.
1354
+ """
1355
+ return pulumi.get(self, "session_token")
1356
+
1357
+ @property
1358
+ @pulumi.getter(name="usePathStyle")
1359
+ def use_path_style(self) -> Optional[bool]:
1360
+ """
1361
+ Uses `bucket` in the URL instead of hostname when `true`.
1362
+ """
1363
+ return pulumi.get(self, "use_path_style")
1364
+
1365
+
1366
+ @pulumi.output_type
1367
+ class Context(dict):
1368
+ def __init__(__self__, *,
1369
+ location: str):
1370
+ """
1371
+ :param str location: Resources to use for build context.
1372
+
1373
+ The location can be:
1374
+ * A relative or absolute path to a local directory (`.`, `./app`,
1375
+ `/app`, etc.).
1376
+ * A remote URL of a Git repository, tarball, or plain text file
1377
+ (`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`,
1378
+ etc.).
1379
+ """
1380
+ pulumi.set(__self__, "location", location)
1381
+
1382
+ @property
1383
+ @pulumi.getter
1384
+ def location(self) -> str:
1385
+ """
1386
+ Resources to use for build context.
1387
+
1388
+ The location can be:
1389
+ * A relative or absolute path to a local directory (`.`, `./app`,
1390
+ `/app`, etc.).
1391
+ * A remote URL of a Git repository, tarball, or plain text file
1392
+ (`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`,
1393
+ etc.).
1394
+ """
1395
+ return pulumi.get(self, "location")
1396
+
1397
+
1398
+ @pulumi.output_type
1399
+ class Dockerfile(dict):
1400
+ def __init__(__self__, *,
1401
+ inline: Optional[str] = None,
1402
+ location: Optional[str] = None):
1403
+ """
1404
+ :param str inline: Raw Dockerfile contents.
1405
+
1406
+ Conflicts with `location`.
1407
+
1408
+ Equivalent to invoking Docker with `-f -`.
1409
+ :param str location: Location of the Dockerfile to use.
1410
+
1411
+ Can be a relative or absolute path to a local file, or a remote URL.
1412
+
1413
+ Defaults to `${context.location}/Dockerfile` if context is on-disk.
1414
+
1415
+ Conflicts with `inline`.
1416
+ """
1417
+ if inline is not None:
1418
+ pulumi.set(__self__, "inline", inline)
1419
+ if location is not None:
1420
+ pulumi.set(__self__, "location", location)
1421
+
1422
+ @property
1423
+ @pulumi.getter
1424
+ def inline(self) -> Optional[str]:
1425
+ """
1426
+ Raw Dockerfile contents.
1427
+
1428
+ Conflicts with `location`.
1429
+
1430
+ Equivalent to invoking Docker with `-f -`.
1431
+ """
1432
+ return pulumi.get(self, "inline")
1433
+
1434
+ @property
1435
+ @pulumi.getter
1436
+ def location(self) -> Optional[str]:
1437
+ """
1438
+ Location of the Dockerfile to use.
1439
+
1440
+ Can be a relative or absolute path to a local file, or a remote URL.
1441
+
1442
+ Defaults to `${context.location}/Dockerfile` if context is on-disk.
1443
+
1444
+ Conflicts with `inline`.
1445
+ """
1446
+ return pulumi.get(self, "location")
1447
+
1448
+
1449
+ @pulumi.output_type
1450
+ class Export(dict):
1451
+ def __init__(__self__, *,
1452
+ cacheonly: Optional['outputs.ExportCacheOnly'] = None,
1453
+ disabled: Optional[bool] = None,
1454
+ docker: Optional['outputs.ExportDocker'] = None,
1455
+ image: Optional['outputs.ExportImage'] = None,
1456
+ local: Optional['outputs.ExportLocal'] = None,
1457
+ oci: Optional['outputs.ExportOCI'] = None,
1458
+ raw: Optional[str] = None,
1459
+ registry: Optional['outputs.ExportRegistry'] = None,
1460
+ tar: Optional['outputs.ExportTar'] = None):
1461
+ """
1462
+ :param 'ExportCacheOnlyArgs' cacheonly: A no-op export. Helpful for silencing the 'no exports' warning if you
1463
+ just want to populate caches.
1464
+ :param bool disabled: When `true` this entry will be excluded. Defaults to `false`.
1465
+ :param 'ExportDockerArgs' docker: Export as a Docker image layout.
1466
+ :param 'ExportImageArgs' image: Outputs the build result into a container image format.
1467
+ :param 'ExportLocalArgs' local: Export to a local directory as files and directories.
1468
+ :param 'ExportOCIArgs' oci: Identical to the Docker exporter but uses OCI media types by default.
1469
+ :param str raw: A raw string as you would provide it to the Docker CLI (e.g.,
1470
+ `type=docker`)
1471
+ :param 'ExportRegistryArgs' registry: Identical to the Image exporter, but pushes by default.
1472
+ :param 'ExportTarArgs' tar: Export to a local directory as a tarball.
1473
+ """
1474
+ if cacheonly is not None:
1475
+ pulumi.set(__self__, "cacheonly", cacheonly)
1476
+ if disabled is not None:
1477
+ pulumi.set(__self__, "disabled", disabled)
1478
+ if docker is not None:
1479
+ pulumi.set(__self__, "docker", docker)
1480
+ if image is not None:
1481
+ pulumi.set(__self__, "image", image)
1482
+ if local is not None:
1483
+ pulumi.set(__self__, "local", local)
1484
+ if oci is not None:
1485
+ pulumi.set(__self__, "oci", oci)
1486
+ if raw is not None:
1487
+ pulumi.set(__self__, "raw", raw)
1488
+ if registry is not None:
1489
+ pulumi.set(__self__, "registry", registry)
1490
+ if tar is not None:
1491
+ pulumi.set(__self__, "tar", tar)
1492
+
1493
+ @property
1494
+ @pulumi.getter
1495
+ def cacheonly(self) -> Optional['outputs.ExportCacheOnly']:
1496
+ """
1497
+ A no-op export. Helpful for silencing the 'no exports' warning if you
1498
+ just want to populate caches.
1499
+ """
1500
+ return pulumi.get(self, "cacheonly")
1501
+
1502
+ @property
1503
+ @pulumi.getter
1504
+ def disabled(self) -> Optional[bool]:
1505
+ """
1506
+ When `true` this entry will be excluded. Defaults to `false`.
1507
+ """
1508
+ return pulumi.get(self, "disabled")
1509
+
1510
+ @property
1511
+ @pulumi.getter
1512
+ def docker(self) -> Optional['outputs.ExportDocker']:
1513
+ """
1514
+ Export as a Docker image layout.
1330
1515
  """
1331
- return pulumi.get(self, "session_token")
1516
+ return pulumi.get(self, "docker")
1332
1517
 
1333
1518
  @property
1334
- @pulumi.getter(name="usePathStyle")
1335
- def use_path_style(self) -> Optional[bool]:
1519
+ @pulumi.getter
1520
+ def image(self) -> Optional['outputs.ExportImage']:
1336
1521
  """
1337
- Uses `bucket` in the URL instead of hostname when `true`.
1522
+ Outputs the build result into a container image format.
1338
1523
  """
1339
- return pulumi.get(self, "use_path_style")
1340
-
1524
+ return pulumi.get(self, "image")
1341
1525
 
1342
- @pulumi.output_type
1343
- class Context(dict):
1344
- def __init__(__self__, *,
1345
- location: str):
1526
+ @property
1527
+ @pulumi.getter
1528
+ def local(self) -> Optional['outputs.ExportLocal']:
1346
1529
  """
1347
- :param str location: Resources to use for build context.
1348
-
1349
- The location can be:
1350
- * A relative or absolute path to a local directory (`.`, `./app`,
1351
- `/app`, etc.).
1352
- * A remote URL of a Git repository, tarball, or plain text file
1353
- (`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`,
1354
- etc.).
1530
+ Export to a local directory as files and directories.
1355
1531
  """
1356
- pulumi.set(__self__, "location", location)
1532
+ return pulumi.get(self, "local")
1357
1533
 
1358
1534
  @property
1359
1535
  @pulumi.getter
1360
- def location(self) -> str:
1536
+ def oci(self) -> Optional['outputs.ExportOCI']:
1361
1537
  """
1362
- Resources to use for build context.
1363
-
1364
- The location can be:
1365
- * A relative or absolute path to a local directory (`.`, `./app`,
1366
- `/app`, etc.).
1367
- * A remote URL of a Git repository, tarball, or plain text file
1368
- (`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`,
1369
- etc.).
1538
+ Identical to the Docker exporter but uses OCI media types by default.
1370
1539
  """
1371
- return pulumi.get(self, "location")
1372
-
1540
+ return pulumi.get(self, "oci")
1373
1541
 
1374
- @pulumi.output_type
1375
- class Dockerfile(dict):
1376
- def __init__(__self__, *,
1377
- inline: Optional[str] = None,
1378
- location: Optional[str] = None):
1542
+ @property
1543
+ @pulumi.getter
1544
+ def raw(self) -> Optional[str]:
1379
1545
  """
1380
- :param str inline: Raw Dockerfile contents.
1381
-
1382
- Conflicts with `location`.
1383
- :param str location: Location of the Dockerfile to use.
1384
-
1385
- Can be a relative or absolute path to a local file, or a remote URL.
1386
-
1387
- Conflicts with `inline`.
1546
+ A raw string as you would provide it to the Docker CLI (e.g.,
1547
+ `type=docker`)
1388
1548
  """
1389
- if inline is not None:
1390
- pulumi.set(__self__, "inline", inline)
1391
- if location is not None:
1392
- pulumi.set(__self__, "location", location)
1549
+ return pulumi.get(self, "raw")
1393
1550
 
1394
1551
  @property
1395
1552
  @pulumi.getter
1396
- def inline(self) -> Optional[str]:
1553
+ def registry(self) -> Optional['outputs.ExportRegistry']:
1397
1554
  """
1398
- Raw Dockerfile contents.
1399
-
1400
- Conflicts with `location`.
1555
+ Identical to the Image exporter, but pushes by default.
1401
1556
  """
1402
- return pulumi.get(self, "inline")
1557
+ return pulumi.get(self, "registry")
1403
1558
 
1404
1559
  @property
1405
1560
  @pulumi.getter
1406
- def location(self) -> Optional[str]:
1561
+ def tar(self) -> Optional['outputs.ExportTar']:
1407
1562
  """
1408
- Location of the Dockerfile to use.
1563
+ Export to a local directory as a tarball.
1564
+ """
1565
+ return pulumi.get(self, "tar")
1409
1566
 
1410
- Can be a relative or absolute path to a local file, or a remote URL.
1411
1567
 
1412
- Conflicts with `inline`.
1413
- """
1414
- return pulumi.get(self, "location")
1568
+ @pulumi.output_type
1569
+ class ExportCacheOnly(dict):
1570
+ def __init__(__self__):
1571
+ pass
1415
1572
 
1416
1573
 
1417
1574
  @pulumi.output_type
@@ -1548,113 +1705,6 @@ class ExportDocker(dict):
1548
1705
  return pulumi.get(self, "tar")
1549
1706
 
1550
1707
 
1551
- @pulumi.output_type
1552
- class ExportEntry(dict):
1553
- def __init__(__self__, *,
1554
- docker: Optional['outputs.ExportDocker'] = None,
1555
- image: Optional['outputs.ExportImage'] = None,
1556
- local: Optional['outputs.ExportLocal'] = None,
1557
- manifests: Optional[Sequence['outputs.Manifest']] = None,
1558
- oci: Optional['outputs.ExportOCI'] = None,
1559
- raw: Optional[str] = None,
1560
- registry: Optional['outputs.ExportRegistry'] = None,
1561
- tar: Optional['outputs.ExportTar'] = None):
1562
- """
1563
- :param 'ExportDockerArgs' docker: Export as a Docker image layout.
1564
- :param 'ExportImageArgs' image: Outputs the build result into a container image format.
1565
- :param 'ExportLocalArgs' local: Export to a local directory as files and directories.
1566
- :param Sequence['ManifestArgs'] manifests: An output property populated for exporters that pushed image
1567
- manifest(s) to a registry.
1568
- :param 'ExportOCIArgs' oci: Identical to the Docker exporter but uses OCI media types by default.
1569
- :param str raw: A raw string as you would provide it to the Docker CLI (e.g.,
1570
- `type=docker`)
1571
- :param 'ExportRegistryArgs' registry: Identical to the Image exporter, but pushes by default.
1572
- :param 'ExportTarArgs' tar: Export to a local directory as a tarball.
1573
- """
1574
- if docker is not None:
1575
- pulumi.set(__self__, "docker", docker)
1576
- if image is not None:
1577
- pulumi.set(__self__, "image", image)
1578
- if local is not None:
1579
- pulumi.set(__self__, "local", local)
1580
- if manifests is not None:
1581
- pulumi.set(__self__, "manifests", manifests)
1582
- if oci is not None:
1583
- pulumi.set(__self__, "oci", oci)
1584
- if raw is not None:
1585
- pulumi.set(__self__, "raw", raw)
1586
- if registry is not None:
1587
- pulumi.set(__self__, "registry", registry)
1588
- if tar is not None:
1589
- pulumi.set(__self__, "tar", tar)
1590
-
1591
- @property
1592
- @pulumi.getter
1593
- def docker(self) -> Optional['outputs.ExportDocker']:
1594
- """
1595
- Export as a Docker image layout.
1596
- """
1597
- return pulumi.get(self, "docker")
1598
-
1599
- @property
1600
- @pulumi.getter
1601
- def image(self) -> Optional['outputs.ExportImage']:
1602
- """
1603
- Outputs the build result into a container image format.
1604
- """
1605
- return pulumi.get(self, "image")
1606
-
1607
- @property
1608
- @pulumi.getter
1609
- def local(self) -> Optional['outputs.ExportLocal']:
1610
- """
1611
- Export to a local directory as files and directories.
1612
- """
1613
- return pulumi.get(self, "local")
1614
-
1615
- @property
1616
- @pulumi.getter
1617
- def manifests(self) -> Optional[Sequence['outputs.Manifest']]:
1618
- """
1619
- An output property populated for exporters that pushed image
1620
- manifest(s) to a registry.
1621
- """
1622
- return pulumi.get(self, "manifests")
1623
-
1624
- @property
1625
- @pulumi.getter
1626
- def oci(self) -> Optional['outputs.ExportOCI']:
1627
- """
1628
- Identical to the Docker exporter but uses OCI media types by default.
1629
- """
1630
- return pulumi.get(self, "oci")
1631
-
1632
- @property
1633
- @pulumi.getter
1634
- def raw(self) -> Optional[str]:
1635
- """
1636
- A raw string as you would provide it to the Docker CLI (e.g.,
1637
- `type=docker`)
1638
- """
1639
- return pulumi.get(self, "raw")
1640
-
1641
- @property
1642
- @pulumi.getter
1643
- def registry(self) -> Optional['outputs.ExportRegistry']:
1644
- """
1645
- Identical to the Image exporter, but pushes by default.
1646
- """
1647
- return pulumi.get(self, "registry")
1648
-
1649
- @property
1650
- @pulumi.getter
1651
- def tar(self) -> Optional['outputs.ExportTar']:
1652
- """
1653
- Export to a local directory as a tarball.
1654
- """
1655
- return pulumi.get(self, "tar")
1656
-
1657
-
1658
1708
  @pulumi.output_type
1659
1709
  class ExportImage(dict):
1660
1710
  @staticmethod
@@ -1711,7 +1761,7 @@ class ExportImage(dict):
1711
1761
  :param bool push: Push after creating the image.
1712
1762
  :param bool push_by_digest: Push image without name.
1713
1763
  :param bool store: Store resulting images to the worker's image store and ensure all of
1714
- its blobs are in the content store.
1764
+ its blobs are in the content store.
1715
1765
 
1716
1766
  Defaults to `true`.
1717
1767
 
@@ -1850,7 +1900,7 @@ class ExportImage(dict):
1850
1900
  def store(self) -> Optional[bool]:
1851
1901
  """
1852
1902
  Store resulting images to the worker's image store and ensure all of
1853
- its blobs are in the content store.
1903
+ its blobs are in the content store.
1854
1904
 
1855
1905
  Defaults to `true`.
1856
1906
 
@@ -2077,7 +2127,7 @@ class ExportRegistry(dict):
2077
2127
  :param bool push: Push after creating the image.
2078
2128
  :param bool push_by_digest: Push image without name.
2079
2129
  :param bool store: Store resulting images to the worker's image store and ensure all of
2080
- its blobs are in the content store.
2130
+ its blobs are in the content store.
2081
2131
 
2082
2132
  Defaults to `true`.
2083
2133
 
@@ -2218,7 +2268,7 @@ class ExportRegistry(dict):
2218
2268
  def store(self) -> Optional[bool]:
2219
2269
  """
2220
2270
  Store resulting images to the worker's image store and ensure all of
2221
- its blobs are in the content store.
2271
+ its blobs are in the content store.
2222
2272
 
2223
2273
  Defaults to `true`.
2224
2274
 
@@ -2255,86 +2305,6 @@ class ExportTar(dict):
2255
2305
  return pulumi.get(self, "dest")
2256
2306
 
2257
2307
 
2258
- @pulumi.output_type
2259
- class Manifest(dict):
2260
- def __init__(__self__, *,
2261
- digest: str,
2262
- platform: 'outputs.ManifestPlatform',
2263
- ref: str,
2264
- size: int):
2265
- """
2266
- :param str digest: The SHA256 digest of the manifest.
2267
- :param 'ManifestPlatformArgs' platform: The manifest's platform.
2268
- :param str ref: The manifest's canonical ref.
2269
- :param int size: The size of the manifest in bytes.
2270
- """
2271
- pulumi.set(__self__, "digest", digest)
2272
- pulumi.set(__self__, "platform", platform)
2273
- pulumi.set(__self__, "ref", ref)
2274
- pulumi.set(__self__, "size", size)
2275
-
2276
- @property
2277
- @pulumi.getter
2278
- def digest(self) -> str:
2279
- """
2280
- The SHA256 digest of the manifest.
2281
- """
2282
- return pulumi.get(self, "digest")
2283
-
2284
- @property
2285
- @pulumi.getter
2286
- def platform(self) -> 'outputs.ManifestPlatform':
2287
- """
2288
- The manifest's platform.
2289
- """
2290
- return pulumi.get(self, "platform")
2291
-
2292
- @property
2293
- @pulumi.getter
2294
- def ref(self) -> str:
2295
- """
2296
- The manifest's canonical ref.
2297
- """
2298
- return pulumi.get(self, "ref")
2299
-
2300
- @property
2301
- @pulumi.getter
2302
- def size(self) -> int:
2303
- """
2304
- The size of the manifest in bytes.
2305
- """
2306
- return pulumi.get(self, "size")
2307
-
2308
-
2309
- @pulumi.output_type
2310
- class ManifestPlatform(dict):
2311
- def __init__(__self__, *,
2312
- architecture: str,
2313
- os: str):
2314
- """
2315
- :param str architecture: The manifest's architecture.
2316
- :param str os: The manifest's operating systen.
2317
- """
2318
- pulumi.set(__self__, "architecture", architecture)
2319
- pulumi.set(__self__, "os", os)
2320
-
2321
- @property
2322
- @pulumi.getter
2323
- def architecture(self) -> str:
2324
- """
2325
- The manifest's architecture.
2326
- """
2327
- return pulumi.get(self, "architecture")
2328
-
2329
- @property
2330
- @pulumi.getter
2331
- def os(self) -> str:
2332
- """
2333
- The manifest's operating systen.
2334
- """
2335
- return pulumi.get(self, "os")
2336
-
2337
-
2338
2308
  @pulumi.output_type
2339
2309
  class RegistryAuth(dict):
2340
2310
  def __init__(__self__, *,
@@ -2377,3 +2347,53 @@ class RegistryAuth(dict):
2377
2347
  return pulumi.get(self, "username")
2378
2348
 
2379
2349
 
2350
+ @pulumi.output_type
2351
+ class SSH(dict):
2352
+ def __init__(__self__, *,
2353
+ id: str,
2354
+ paths: Optional[Sequence[str]] = None):
2355
+ """
2356
+ :param str id: Useful for distinguishing different servers that are part of the same
2357
+ build.
2358
+
2359
+ A value of `default` is appropriate if only dealing with a single host.
2360
+ :param Sequence[str] paths: SSH agent socket or private keys to expose to the build under the given
2361
+ identifier.
2362
+
2363
+ Defaults to `[$SSH_AUTH_SOCK]`.
2364
+
2365
+ Note that your keys are **not** automatically added when using an
2366
+ agent. Run `ssh-add -l` locally to confirm which public keys are
2367
+ visible to the agent; these will be exposed to your build.
2368
+ """
2369
+ pulumi.set(__self__, "id", id)
2370
+ if paths is not None:
2371
+ pulumi.set(__self__, "paths", paths)
2372
+
2373
+ @property
2374
+ @pulumi.getter
2375
+ def id(self) -> str:
2376
+ """
2377
+ Useful for distinguishing different servers that are part of the same
2378
+ build.
2379
+
2380
+ A value of `default` is appropriate if only dealing with a single host.
2381
+ """
2382
+ return pulumi.get(self, "id")
2383
+
2384
+ @property
2385
+ @pulumi.getter
2386
+ def paths(self) -> Optional[Sequence[str]]:
2387
+ """
2388
+ SSH agent socket or private keys to expose to the build under the given
2389
+ identifier.
2390
+
2391
+ Defaults to `[$SSH_AUTH_SOCK]`.
2392
+
2393
+ Note that your keys are **not** automatically added when using an
2394
+ agent. Run `ssh-add -l` locally to confirm which public keys are
2395
+ visible to the agent; these will be exposed to your build.
2396
+ """
2397
+ return pulumi.get(self, "paths")
2398
+
2399
+