pulumi-docker 4.6.0b2__py3-none-any.whl → 4.6.1__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.

@@ -1,2366 +0,0 @@
1
- # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
- # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
-
5
- import copy
6
- import warnings
7
- import pulumi
8
- import pulumi.runtime
9
- from typing import Any, Mapping, Optional, Sequence, Union, overload
10
- from .. import _utilities
11
- from . import outputs
12
- from ._enums import *
13
-
14
- __all__ = [
15
- 'BuildContext',
16
- 'BuilderConfig',
17
- 'CacheFromAzureBlob',
18
- 'CacheFromEntry',
19
- 'CacheFromGitHubActions',
20
- 'CacheFromLocal',
21
- 'CacheFromRegistry',
22
- 'CacheFromS3',
23
- 'CacheToAzureBlob',
24
- 'CacheToEntry',
25
- 'CacheToGitHubActions',
26
- 'CacheToInline',
27
- 'CacheToLocal',
28
- 'CacheToRegistry',
29
- 'CacheToS3',
30
- 'Context',
31
- 'Dockerfile',
32
- 'ExportDocker',
33
- 'ExportEntry',
34
- 'ExportImage',
35
- 'ExportLocal',
36
- 'ExportOCI',
37
- 'ExportRegistry',
38
- 'ExportTar',
39
- 'RegistryAuth',
40
- 'SSH',
41
- ]
42
-
43
- @pulumi.output_type
44
- class BuildContext(dict):
45
- def __init__(__self__, *,
46
- location: str,
47
- named: Optional[Mapping[str, 'outputs.Context']] = None):
48
- """
49
- :param str location: Resources to use for build context.
50
-
51
- The location can be:
52
- * A relative or absolute path to a local directory (`.`, `./app`,
53
- `/app`, etc.).
54
- * A remote URL of a Git repository, tarball, or plain text file
55
- (`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`,
56
- etc.).
57
- :param Mapping[str, 'ContextArgs'] named: Additional build contexts to use.
58
-
59
- These contexts are accessed with `FROM name` or `--from=name`
60
- statements when using Dockerfile 1.4+ syntax.
61
-
62
- Values can be local paths, HTTP URLs, or `docker-image://` images.
63
- """
64
- pulumi.set(__self__, "location", location)
65
- if named is not None:
66
- pulumi.set(__self__, "named", named)
67
-
68
- @property
69
- @pulumi.getter
70
- def location(self) -> str:
71
- """
72
- Resources to use for build context.
73
-
74
- The location can be:
75
- * A relative or absolute path to a local directory (`.`, `./app`,
76
- `/app`, etc.).
77
- * A remote URL of a Git repository, tarball, or plain text file
78
- (`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`,
79
- etc.).
80
- """
81
- return pulumi.get(self, "location")
82
-
83
- @property
84
- @pulumi.getter
85
- def named(self) -> Optional[Mapping[str, 'outputs.Context']]:
86
- """
87
- Additional build contexts to use.
88
-
89
- These contexts are accessed with `FROM name` or `--from=name`
90
- statements when using Dockerfile 1.4+ syntax.
91
-
92
- Values can be local paths, HTTP URLs, or `docker-image://` images.
93
- """
94
- return pulumi.get(self, "named")
95
-
96
-
97
- @pulumi.output_type
98
- class BuilderConfig(dict):
99
- def __init__(__self__, *,
100
- name: Optional[str] = None):
101
- """
102
- :param str name: Name of an existing buildx builder to use.
103
-
104
- Only `docker-container`, `kubernetes`, or `remote` drivers are
105
- supported. The legacy `docker` driver is not supported.
106
-
107
- Equivalent to Docker's `--builder` flag.
108
- """
109
- if name is not None:
110
- pulumi.set(__self__, "name", name)
111
-
112
- @property
113
- @pulumi.getter
114
- def name(self) -> Optional[str]:
115
- """
116
- Name of an existing buildx builder to use.
117
-
118
- Only `docker-container`, `kubernetes`, or `remote` drivers are
119
- supported. The legacy `docker` driver is not supported.
120
-
121
- Equivalent to Docker's `--builder` flag.
122
- """
123
- return pulumi.get(self, "name")
124
-
125
-
126
- @pulumi.output_type
127
- class CacheFromAzureBlob(dict):
128
- @staticmethod
129
- def __key_warning(key: str):
130
- suggest = None
131
- if key == "accountUrl":
132
- suggest = "account_url"
133
- elif key == "secretAccessKey":
134
- suggest = "secret_access_key"
135
-
136
- if suggest:
137
- pulumi.log.warn(f"Key '{key}' not found in CacheFromAzureBlob. Access the value via the '{suggest}' property getter instead.")
138
-
139
- def __getitem__(self, key: str) -> Any:
140
- CacheFromAzureBlob.__key_warning(key)
141
- return super().__getitem__(key)
142
-
143
- def get(self, key: str, default = None) -> Any:
144
- CacheFromAzureBlob.__key_warning(key)
145
- return super().get(key, default)
146
-
147
- def __init__(__self__, *,
148
- name: str,
149
- account_url: Optional[str] = None,
150
- secret_access_key: Optional[str] = None):
151
- """
152
- :param str name: The name of the cache image.
153
- :param str account_url: Base URL of the storage account.
154
- :param str secret_access_key: Blob storage account key.
155
- """
156
- pulumi.set(__self__, "name", name)
157
- if account_url is not None:
158
- pulumi.set(__self__, "account_url", account_url)
159
- if secret_access_key is not None:
160
- pulumi.set(__self__, "secret_access_key", secret_access_key)
161
-
162
- @property
163
- @pulumi.getter
164
- def name(self) -> str:
165
- """
166
- The name of the cache image.
167
- """
168
- return pulumi.get(self, "name")
169
-
170
- @property
171
- @pulumi.getter(name="accountUrl")
172
- def account_url(self) -> Optional[str]:
173
- """
174
- Base URL of the storage account.
175
- """
176
- return pulumi.get(self, "account_url")
177
-
178
- @property
179
- @pulumi.getter(name="secretAccessKey")
180
- def secret_access_key(self) -> Optional[str]:
181
- """
182
- Blob storage account key.
183
- """
184
- return pulumi.get(self, "secret_access_key")
185
-
186
-
187
- @pulumi.output_type
188
- class CacheFromEntry(dict):
189
- def __init__(__self__, *,
190
- azblob: Optional['outputs.CacheFromAzureBlob'] = None,
191
- disabled: Optional[bool] = None,
192
- gha: Optional['outputs.CacheFromGitHubActions'] = None,
193
- local: Optional['outputs.CacheFromLocal'] = None,
194
- raw: Optional[str] = None,
195
- registry: Optional['outputs.CacheFromRegistry'] = None,
196
- s3: Optional['outputs.CacheFromS3'] = None):
197
- """
198
- :param 'CacheFromAzureBlobArgs' azblob: Upload build caches to Azure's blob storage service.
199
- :param bool disabled: When `true` this entry will be excluded. Defaults to `false`.
200
- :param 'CacheFromGitHubActionsArgs' gha: Recommended for use with GitHub Actions workflows.
201
-
202
- An action like `crazy-max/ghaction-github-runtime` is recommended to
203
- expose appropriate credentials to your GitHub workflow.
204
- :param 'CacheFromLocalArgs' local: A simple backend which caches images on your local filesystem.
205
- :param str raw: A raw string as you would provide it to the Docker CLI (e.g.,
206
- `type=inline`).
207
- :param 'CacheFromRegistryArgs' registry: Upload build caches to remote registries.
208
- :param 'CacheFromS3Args' s3: Upload build caches to AWS S3 or an S3-compatible services such as
209
- MinIO.
210
- """
211
- if azblob is not None:
212
- pulumi.set(__self__, "azblob", azblob)
213
- if disabled is not None:
214
- pulumi.set(__self__, "disabled", disabled)
215
- if gha is not None:
216
- pulumi.set(__self__, "gha", gha)
217
- if local is not None:
218
- pulumi.set(__self__, "local", local)
219
- if raw is not None:
220
- pulumi.set(__self__, "raw", raw)
221
- if registry is not None:
222
- pulumi.set(__self__, "registry", registry)
223
- if s3 is not None:
224
- pulumi.set(__self__, "s3", s3)
225
-
226
- @property
227
- @pulumi.getter
228
- def azblob(self) -> Optional['outputs.CacheFromAzureBlob']:
229
- """
230
- Upload build caches to Azure's blob storage service.
231
- """
232
- return pulumi.get(self, "azblob")
233
-
234
- @property
235
- @pulumi.getter
236
- def disabled(self) -> Optional[bool]:
237
- """
238
- When `true` this entry will be excluded. Defaults to `false`.
239
- """
240
- return pulumi.get(self, "disabled")
241
-
242
- @property
243
- @pulumi.getter
244
- def gha(self) -> Optional['outputs.CacheFromGitHubActions']:
245
- """
246
- Recommended for use with GitHub Actions workflows.
247
-
248
- An action like `crazy-max/ghaction-github-runtime` is recommended to
249
- expose appropriate credentials to your GitHub workflow.
250
- """
251
- return pulumi.get(self, "gha")
252
-
253
- @property
254
- @pulumi.getter
255
- def local(self) -> Optional['outputs.CacheFromLocal']:
256
- """
257
- A simple backend which caches images on your local filesystem.
258
- """
259
- return pulumi.get(self, "local")
260
-
261
- @property
262
- @pulumi.getter
263
- def raw(self) -> Optional[str]:
264
- """
265
- A raw string as you would provide it to the Docker CLI (e.g.,
266
- `type=inline`).
267
- """
268
- return pulumi.get(self, "raw")
269
-
270
- @property
271
- @pulumi.getter
272
- def registry(self) -> Optional['outputs.CacheFromRegistry']:
273
- """
274
- Upload build caches to remote registries.
275
- """
276
- return pulumi.get(self, "registry")
277
-
278
- @property
279
- @pulumi.getter
280
- def s3(self) -> Optional['outputs.CacheFromS3']:
281
- """
282
- Upload build caches to AWS S3 or an S3-compatible services such as
283
- MinIO.
284
- """
285
- return pulumi.get(self, "s3")
286
-
287
-
288
- @pulumi.output_type
289
- class CacheFromGitHubActions(dict):
290
- def __init__(__self__, *,
291
- scope: Optional[str] = None,
292
- token: Optional[str] = None,
293
- url: Optional[str] = None):
294
- """
295
- :param str scope: The scope to use for cache keys. Defaults to `buildkit`.
296
-
297
- This should be set if building and caching multiple images in one
298
- workflow, otherwise caches will overwrite each other.
299
- :param str token: The GitHub Actions token to use. This is not a personal access tokens
300
- and is typically generated automatically as part of each job.
301
-
302
- Defaults to `$ACTIONS_RUNTIME_TOKEN`, although a separate action like
303
- `crazy-max/ghaction-github-runtime` is recommended to expose this
304
- environment variable to your jobs.
305
- :param str url: The cache server URL to use for artifacts.
306
-
307
- Defaults to `$ACTIONS_RUNTIME_URL`, although a separate action like
308
- `crazy-max/ghaction-github-runtime` is recommended to expose this
309
- environment variable to your jobs.
310
- """
311
- if scope is None:
312
- scope = (_utilities.get_env('buildkit') or '')
313
- if scope is not None:
314
- pulumi.set(__self__, "scope", scope)
315
- if token is None:
316
- token = (_utilities.get_env('ACTIONS_RUNTIME_TOKEN') or '')
317
- if token is not None:
318
- pulumi.set(__self__, "token", token)
319
- if url is None:
320
- url = (_utilities.get_env('ACTIONS_RUNTIME_URL') or '')
321
- if url is not None:
322
- pulumi.set(__self__, "url", url)
323
-
324
- @property
325
- @pulumi.getter
326
- def scope(self) -> Optional[str]:
327
- """
328
- The scope to use for cache keys. Defaults to `buildkit`.
329
-
330
- This should be set if building and caching multiple images in one
331
- workflow, otherwise caches will overwrite each other.
332
- """
333
- return pulumi.get(self, "scope")
334
-
335
- @property
336
- @pulumi.getter
337
- def token(self) -> Optional[str]:
338
- """
339
- The GitHub Actions token to use. This is not a personal access tokens
340
- and is typically generated automatically as part of each job.
341
-
342
- Defaults to `$ACTIONS_RUNTIME_TOKEN`, although a separate action like
343
- `crazy-max/ghaction-github-runtime` is recommended to expose this
344
- environment variable to your jobs.
345
- """
346
- return pulumi.get(self, "token")
347
-
348
- @property
349
- @pulumi.getter
350
- def url(self) -> Optional[str]:
351
- """
352
- The cache server URL to use for artifacts.
353
-
354
- Defaults to `$ACTIONS_RUNTIME_URL`, although a separate action like
355
- `crazy-max/ghaction-github-runtime` is recommended to expose this
356
- environment variable to your jobs.
357
- """
358
- return pulumi.get(self, "url")
359
-
360
-
361
- @pulumi.output_type
362
- class CacheFromLocal(dict):
363
- def __init__(__self__, *,
364
- src: str,
365
- digest: Optional[str] = None):
366
- """
367
- :param str src: Path of the local directory where cache gets imported from.
368
- :param str digest: Digest of manifest to import.
369
- """
370
- pulumi.set(__self__, "src", src)
371
- if digest is not None:
372
- pulumi.set(__self__, "digest", digest)
373
-
374
- @property
375
- @pulumi.getter
376
- def src(self) -> str:
377
- """
378
- Path of the local directory where cache gets imported from.
379
- """
380
- return pulumi.get(self, "src")
381
-
382
- @property
383
- @pulumi.getter
384
- def digest(self) -> Optional[str]:
385
- """
386
- Digest of manifest to import.
387
- """
388
- return pulumi.get(self, "digest")
389
-
390
-
391
- @pulumi.output_type
392
- class CacheFromRegistry(dict):
393
- def __init__(__self__, *,
394
- ref: str):
395
- """
396
- :param str ref: Fully qualified name of the cache image to import.
397
- """
398
- pulumi.set(__self__, "ref", ref)
399
-
400
- @property
401
- @pulumi.getter
402
- def ref(self) -> str:
403
- """
404
- Fully qualified name of the cache image to import.
405
- """
406
- return pulumi.get(self, "ref")
407
-
408
-
409
- @pulumi.output_type
410
- class CacheFromS3(dict):
411
- @staticmethod
412
- def __key_warning(key: str):
413
- suggest = None
414
- if key == "accessKeyId":
415
- suggest = "access_key_id"
416
- elif key == "blobsPrefix":
417
- suggest = "blobs_prefix"
418
- elif key == "endpointUrl":
419
- suggest = "endpoint_url"
420
- elif key == "manifestsPrefix":
421
- suggest = "manifests_prefix"
422
- elif key == "secretAccessKey":
423
- suggest = "secret_access_key"
424
- elif key == "sessionToken":
425
- suggest = "session_token"
426
- elif key == "usePathStyle":
427
- suggest = "use_path_style"
428
-
429
- if suggest:
430
- pulumi.log.warn(f"Key '{key}' not found in CacheFromS3. Access the value via the '{suggest}' property getter instead.")
431
-
432
- def __getitem__(self, key: str) -> Any:
433
- CacheFromS3.__key_warning(key)
434
- return super().__getitem__(key)
435
-
436
- def get(self, key: str, default = None) -> Any:
437
- CacheFromS3.__key_warning(key)
438
- return super().get(key, default)
439
-
440
- def __init__(__self__, *,
441
- bucket: str,
442
- region: Optional[str] = None,
443
- access_key_id: Optional[str] = None,
444
- blobs_prefix: Optional[str] = None,
445
- endpoint_url: Optional[str] = None,
446
- manifests_prefix: Optional[str] = None,
447
- name: Optional[str] = None,
448
- secret_access_key: Optional[str] = None,
449
- session_token: Optional[str] = None,
450
- use_path_style: Optional[bool] = None):
451
- """
452
- :param str bucket: Name of the S3 bucket.
453
- :param str region: The geographic location of the bucket. Defaults to `$AWS_REGION`.
454
- :param str access_key_id: Defaults to `$AWS_ACCESS_KEY_ID`.
455
- :param str blobs_prefix: Prefix to prepend to blob filenames.
456
- :param str endpoint_url: Endpoint of the S3 bucket.
457
- :param str manifests_prefix: Prefix to prepend on manifest filenames.
458
- :param str name: Name of the cache image.
459
- :param str secret_access_key: Defaults to `$AWS_SECRET_ACCESS_KEY`.
460
- :param str session_token: Defaults to `$AWS_SESSION_TOKEN`.
461
- :param bool use_path_style: Uses `bucket` in the URL instead of hostname when `true`.
462
- """
463
- pulumi.set(__self__, "bucket", bucket)
464
- if region is None:
465
- region = (_utilities.get_env('AWS_REGION') or '')
466
- pulumi.set(__self__, "region", region)
467
- if access_key_id is None:
468
- access_key_id = (_utilities.get_env('AWS_ACCESS_KEY_ID') or '')
469
- if access_key_id is not None:
470
- pulumi.set(__self__, "access_key_id", access_key_id)
471
- if blobs_prefix is not None:
472
- pulumi.set(__self__, "blobs_prefix", blobs_prefix)
473
- if endpoint_url is not None:
474
- pulumi.set(__self__, "endpoint_url", endpoint_url)
475
- if manifests_prefix is not None:
476
- pulumi.set(__self__, "manifests_prefix", manifests_prefix)
477
- if name is not None:
478
- pulumi.set(__self__, "name", name)
479
- if secret_access_key is None:
480
- secret_access_key = (_utilities.get_env('AWS_SECRET_ACCESS_KEY') or '')
481
- if secret_access_key is not None:
482
- pulumi.set(__self__, "secret_access_key", secret_access_key)
483
- if session_token is None:
484
- session_token = (_utilities.get_env('AWS_SESSION_TOKEN') or '')
485
- if session_token is not None:
486
- pulumi.set(__self__, "session_token", session_token)
487
- if use_path_style is not None:
488
- pulumi.set(__self__, "use_path_style", use_path_style)
489
-
490
- @property
491
- @pulumi.getter
492
- def bucket(self) -> str:
493
- """
494
- Name of the S3 bucket.
495
- """
496
- return pulumi.get(self, "bucket")
497
-
498
- @property
499
- @pulumi.getter
500
- def region(self) -> str:
501
- """
502
- The geographic location of the bucket. Defaults to `$AWS_REGION`.
503
- """
504
- return pulumi.get(self, "region")
505
-
506
- @property
507
- @pulumi.getter(name="accessKeyId")
508
- def access_key_id(self) -> Optional[str]:
509
- """
510
- Defaults to `$AWS_ACCESS_KEY_ID`.
511
- """
512
- return pulumi.get(self, "access_key_id")
513
-
514
- @property
515
- @pulumi.getter(name="blobsPrefix")
516
- def blobs_prefix(self) -> Optional[str]:
517
- """
518
- Prefix to prepend to blob filenames.
519
- """
520
- return pulumi.get(self, "blobs_prefix")
521
-
522
- @property
523
- @pulumi.getter(name="endpointUrl")
524
- def endpoint_url(self) -> Optional[str]:
525
- """
526
- Endpoint of the S3 bucket.
527
- """
528
- return pulumi.get(self, "endpoint_url")
529
-
530
- @property
531
- @pulumi.getter(name="manifestsPrefix")
532
- def manifests_prefix(self) -> Optional[str]:
533
- """
534
- Prefix to prepend on manifest filenames.
535
- """
536
- return pulumi.get(self, "manifests_prefix")
537
-
538
- @property
539
- @pulumi.getter
540
- def name(self) -> Optional[str]:
541
- """
542
- Name of the cache image.
543
- """
544
- return pulumi.get(self, "name")
545
-
546
- @property
547
- @pulumi.getter(name="secretAccessKey")
548
- def secret_access_key(self) -> Optional[str]:
549
- """
550
- Defaults to `$AWS_SECRET_ACCESS_KEY`.
551
- """
552
- return pulumi.get(self, "secret_access_key")
553
-
554
- @property
555
- @pulumi.getter(name="sessionToken")
556
- def session_token(self) -> Optional[str]:
557
- """
558
- Defaults to `$AWS_SESSION_TOKEN`.
559
- """
560
- return pulumi.get(self, "session_token")
561
-
562
- @property
563
- @pulumi.getter(name="usePathStyle")
564
- def use_path_style(self) -> Optional[bool]:
565
- """
566
- Uses `bucket` in the URL instead of hostname when `true`.
567
- """
568
- return pulumi.get(self, "use_path_style")
569
-
570
-
571
- @pulumi.output_type
572
- class CacheToAzureBlob(dict):
573
- @staticmethod
574
- def __key_warning(key: str):
575
- suggest = None
576
- if key == "accountUrl":
577
- suggest = "account_url"
578
- elif key == "ignoreError":
579
- suggest = "ignore_error"
580
- elif key == "secretAccessKey":
581
- suggest = "secret_access_key"
582
-
583
- if suggest:
584
- pulumi.log.warn(f"Key '{key}' not found in CacheToAzureBlob. Access the value via the '{suggest}' property getter instead.")
585
-
586
- def __getitem__(self, key: str) -> Any:
587
- CacheToAzureBlob.__key_warning(key)
588
- return super().__getitem__(key)
589
-
590
- def get(self, key: str, default = None) -> Any:
591
- CacheToAzureBlob.__key_warning(key)
592
- return super().get(key, default)
593
-
594
- def __init__(__self__, *,
595
- name: str,
596
- account_url: Optional[str] = None,
597
- ignore_error: Optional[bool] = None,
598
- mode: Optional['CacheMode'] = None,
599
- secret_access_key: Optional[str] = None):
600
- """
601
- :param str name: The name of the cache image.
602
- :param str account_url: Base URL of the storage account.
603
- :param bool ignore_error: Ignore errors caused by failed cache exports.
604
- :param 'CacheMode' mode: The cache mode to use. Defaults to `min`.
605
- :param str secret_access_key: Blob storage account key.
606
- """
607
- pulumi.set(__self__, "name", name)
608
- if account_url is not None:
609
- pulumi.set(__self__, "account_url", account_url)
610
- if ignore_error is None:
611
- ignore_error = False
612
- if ignore_error is not None:
613
- pulumi.set(__self__, "ignore_error", ignore_error)
614
- if mode is None:
615
- mode = 'min'
616
- if mode is not None:
617
- pulumi.set(__self__, "mode", mode)
618
- if secret_access_key is not None:
619
- pulumi.set(__self__, "secret_access_key", secret_access_key)
620
-
621
- @property
622
- @pulumi.getter
623
- def name(self) -> str:
624
- """
625
- The name of the cache image.
626
- """
627
- return pulumi.get(self, "name")
628
-
629
- @property
630
- @pulumi.getter(name="accountUrl")
631
- def account_url(self) -> Optional[str]:
632
- """
633
- Base URL of the storage account.
634
- """
635
- return pulumi.get(self, "account_url")
636
-
637
- @property
638
- @pulumi.getter(name="ignoreError")
639
- def ignore_error(self) -> Optional[bool]:
640
- """
641
- Ignore errors caused by failed cache exports.
642
- """
643
- return pulumi.get(self, "ignore_error")
644
-
645
- @property
646
- @pulumi.getter
647
- def mode(self) -> Optional['CacheMode']:
648
- """
649
- The cache mode to use. Defaults to `min`.
650
- """
651
- return pulumi.get(self, "mode")
652
-
653
- @property
654
- @pulumi.getter(name="secretAccessKey")
655
- def secret_access_key(self) -> Optional[str]:
656
- """
657
- Blob storage account key.
658
- """
659
- return pulumi.get(self, "secret_access_key")
660
-
661
-
662
- @pulumi.output_type
663
- class CacheToEntry(dict):
664
- def __init__(__self__, *,
665
- azblob: Optional['outputs.CacheToAzureBlob'] = None,
666
- disabled: Optional[bool] = None,
667
- gha: Optional['outputs.CacheToGitHubActions'] = None,
668
- inline: Optional['outputs.CacheToInline'] = None,
669
- local: Optional['outputs.CacheToLocal'] = None,
670
- raw: Optional[str] = None,
671
- registry: Optional['outputs.CacheToRegistry'] = None,
672
- s3: Optional['outputs.CacheToS3'] = None):
673
- """
674
- :param 'CacheToAzureBlobArgs' azblob: Push cache to Azure's blob storage service.
675
- :param bool disabled: When `true` this entry will be excluded. Defaults to `false`.
676
- :param 'CacheToGitHubActionsArgs' gha: Recommended for use with GitHub Actions workflows.
677
-
678
- An action like `crazy-max/ghaction-github-runtime` is recommended to
679
- expose appropriate credentials to your GitHub workflow.
680
- :param 'CacheToInlineArgs' inline: The inline cache storage backend is the simplest implementation to get
681
- started with, but it does not handle multi-stage builds. Consider the
682
- `registry` cache backend instead.
683
- :param 'CacheToLocalArgs' local: A simple backend which caches imagines on your local filesystem.
684
- :param str raw: A raw string as you would provide it to the Docker CLI (e.g.,
685
- `type=inline`)
686
- :param 'CacheToRegistryArgs' registry: Push caches to remote registries. Incompatible with the `docker` build
687
- driver.
688
- :param 'CacheToS3Args' s3: Push cache to AWS S3 or S3-compatible services such as MinIO.
689
- """
690
- if azblob is not None:
691
- pulumi.set(__self__, "azblob", azblob)
692
- if disabled is not None:
693
- pulumi.set(__self__, "disabled", disabled)
694
- if gha is not None:
695
- pulumi.set(__self__, "gha", gha)
696
- if inline is not None:
697
- pulumi.set(__self__, "inline", inline)
698
- if local is not None:
699
- pulumi.set(__self__, "local", local)
700
- if raw is not None:
701
- pulumi.set(__self__, "raw", raw)
702
- if registry is not None:
703
- pulumi.set(__self__, "registry", registry)
704
- if s3 is not None:
705
- pulumi.set(__self__, "s3", s3)
706
-
707
- @property
708
- @pulumi.getter
709
- def azblob(self) -> Optional['outputs.CacheToAzureBlob']:
710
- """
711
- Push cache to Azure's blob storage service.
712
- """
713
- return pulumi.get(self, "azblob")
714
-
715
- @property
716
- @pulumi.getter
717
- def disabled(self) -> Optional[bool]:
718
- """
719
- When `true` this entry will be excluded. Defaults to `false`.
720
- """
721
- return pulumi.get(self, "disabled")
722
-
723
- @property
724
- @pulumi.getter
725
- def gha(self) -> Optional['outputs.CacheToGitHubActions']:
726
- """
727
- Recommended for use with GitHub Actions workflows.
728
-
729
- An action like `crazy-max/ghaction-github-runtime` is recommended to
730
- expose appropriate credentials to your GitHub workflow.
731
- """
732
- return pulumi.get(self, "gha")
733
-
734
- @property
735
- @pulumi.getter
736
- def inline(self) -> Optional['outputs.CacheToInline']:
737
- """
738
- The inline cache storage backend is the simplest implementation to get
739
- started with, but it does not handle multi-stage builds. Consider the
740
- `registry` cache backend instead.
741
- """
742
- return pulumi.get(self, "inline")
743
-
744
- @property
745
- @pulumi.getter
746
- def local(self) -> Optional['outputs.CacheToLocal']:
747
- """
748
- A simple backend which caches imagines on your local filesystem.
749
- """
750
- return pulumi.get(self, "local")
751
-
752
- @property
753
- @pulumi.getter
754
- def raw(self) -> Optional[str]:
755
- """
756
- A raw string as you would provide it to the Docker CLI (e.g.,
757
- `type=inline`)
758
- """
759
- return pulumi.get(self, "raw")
760
-
761
- @property
762
- @pulumi.getter
763
- def registry(self) -> Optional['outputs.CacheToRegistry']:
764
- """
765
- Push caches to remote registries. Incompatible with the `docker` build
766
- driver.
767
- """
768
- return pulumi.get(self, "registry")
769
-
770
- @property
771
- @pulumi.getter
772
- def s3(self) -> Optional['outputs.CacheToS3']:
773
- """
774
- Push cache to AWS S3 or S3-compatible services such as MinIO.
775
- """
776
- return pulumi.get(self, "s3")
777
-
778
-
779
- @pulumi.output_type
780
- class CacheToGitHubActions(dict):
781
- @staticmethod
782
- def __key_warning(key: str):
783
- suggest = None
784
- if key == "ignoreError":
785
- suggest = "ignore_error"
786
-
787
- if suggest:
788
- pulumi.log.warn(f"Key '{key}' not found in CacheToGitHubActions. Access the value via the '{suggest}' property getter instead.")
789
-
790
- def __getitem__(self, key: str) -> Any:
791
- CacheToGitHubActions.__key_warning(key)
792
- return super().__getitem__(key)
793
-
794
- def get(self, key: str, default = None) -> Any:
795
- CacheToGitHubActions.__key_warning(key)
796
- return super().get(key, default)
797
-
798
- def __init__(__self__, *,
799
- ignore_error: Optional[bool] = None,
800
- mode: Optional['CacheMode'] = None,
801
- scope: Optional[str] = None,
802
- token: Optional[str] = None,
803
- url: Optional[str] = None):
804
- """
805
- :param bool ignore_error: Ignore errors caused by failed cache exports.
806
- :param 'CacheMode' mode: The cache mode to use. Defaults to `min`.
807
- :param str scope: The scope to use for cache keys. Defaults to `buildkit`.
808
-
809
- This should be set if building and caching multiple images in one
810
- workflow, otherwise caches will overwrite each other.
811
- :param str token: The GitHub Actions token to use. This is not a personal access tokens
812
- and is typically generated automatically as part of each job.
813
-
814
- Defaults to `$ACTIONS_RUNTIME_TOKEN`, although a separate action like
815
- `crazy-max/ghaction-github-runtime` is recommended to expose this
816
- environment variable to your jobs.
817
- :param str url: The cache server URL to use for artifacts.
818
-
819
- Defaults to `$ACTIONS_RUNTIME_URL`, although a separate action like
820
- `crazy-max/ghaction-github-runtime` is recommended to expose this
821
- environment variable to your jobs.
822
- """
823
- if ignore_error is None:
824
- ignore_error = False
825
- if ignore_error is not None:
826
- pulumi.set(__self__, "ignore_error", ignore_error)
827
- if mode is None:
828
- mode = 'min'
829
- if mode is not None:
830
- pulumi.set(__self__, "mode", mode)
831
- if scope is None:
832
- scope = (_utilities.get_env('buildkit') or '')
833
- if scope is not None:
834
- pulumi.set(__self__, "scope", scope)
835
- if token is None:
836
- token = (_utilities.get_env('ACTIONS_RUNTIME_TOKEN') or '')
837
- if token is not None:
838
- pulumi.set(__self__, "token", token)
839
- if url is None:
840
- url = (_utilities.get_env('ACTIONS_RUNTIME_URL') or '')
841
- if url is not None:
842
- pulumi.set(__self__, "url", url)
843
-
844
- @property
845
- @pulumi.getter(name="ignoreError")
846
- def ignore_error(self) -> Optional[bool]:
847
- """
848
- Ignore errors caused by failed cache exports.
849
- """
850
- return pulumi.get(self, "ignore_error")
851
-
852
- @property
853
- @pulumi.getter
854
- def mode(self) -> Optional['CacheMode']:
855
- """
856
- The cache mode to use. Defaults to `min`.
857
- """
858
- return pulumi.get(self, "mode")
859
-
860
- @property
861
- @pulumi.getter
862
- def scope(self) -> Optional[str]:
863
- """
864
- The scope to use for cache keys. Defaults to `buildkit`.
865
-
866
- This should be set if building and caching multiple images in one
867
- workflow, otherwise caches will overwrite each other.
868
- """
869
- return pulumi.get(self, "scope")
870
-
871
- @property
872
- @pulumi.getter
873
- def token(self) -> Optional[str]:
874
- """
875
- The GitHub Actions token to use. This is not a personal access tokens
876
- and is typically generated automatically as part of each job.
877
-
878
- Defaults to `$ACTIONS_RUNTIME_TOKEN`, although a separate action like
879
- `crazy-max/ghaction-github-runtime` is recommended to expose this
880
- environment variable to your jobs.
881
- """
882
- return pulumi.get(self, "token")
883
-
884
- @property
885
- @pulumi.getter
886
- def url(self) -> Optional[str]:
887
- """
888
- The cache server URL to use for artifacts.
889
-
890
- Defaults to `$ACTIONS_RUNTIME_URL`, although a separate action like
891
- `crazy-max/ghaction-github-runtime` is recommended to expose this
892
- environment variable to your jobs.
893
- """
894
- return pulumi.get(self, "url")
895
-
896
-
897
- @pulumi.output_type
898
- class CacheToInline(dict):
899
- def __init__(__self__):
900
- pass
901
-
902
-
903
- @pulumi.output_type
904
- class CacheToLocal(dict):
905
- @staticmethod
906
- def __key_warning(key: str):
907
- suggest = None
908
- if key == "compressionLevel":
909
- suggest = "compression_level"
910
- elif key == "forceCompression":
911
- suggest = "force_compression"
912
- elif key == "ignoreError":
913
- suggest = "ignore_error"
914
-
915
- if suggest:
916
- pulumi.log.warn(f"Key '{key}' not found in CacheToLocal. Access the value via the '{suggest}' property getter instead.")
917
-
918
- def __getitem__(self, key: str) -> Any:
919
- CacheToLocal.__key_warning(key)
920
- return super().__getitem__(key)
921
-
922
- def get(self, key: str, default = None) -> Any:
923
- CacheToLocal.__key_warning(key)
924
- return super().get(key, default)
925
-
926
- def __init__(__self__, *,
927
- dest: str,
928
- compression: Optional['CompressionType'] = None,
929
- compression_level: Optional[int] = None,
930
- force_compression: Optional[bool] = None,
931
- ignore_error: Optional[bool] = None,
932
- mode: Optional['CacheMode'] = None):
933
- """
934
- :param str dest: Path of the local directory to export the cache.
935
- :param 'CompressionType' compression: The compression type to use.
936
- :param int compression_level: Compression level from 0 to 22.
937
- :param bool force_compression: Forcefully apply compression.
938
- :param bool ignore_error: Ignore errors caused by failed cache exports.
939
- :param 'CacheMode' mode: The cache mode to use. Defaults to `min`.
940
- """
941
- pulumi.set(__self__, "dest", dest)
942
- if compression is None:
943
- compression = 'gzip'
944
- if compression is not None:
945
- pulumi.set(__self__, "compression", compression)
946
- if compression_level is None:
947
- compression_level = 0
948
- if compression_level is not None:
949
- pulumi.set(__self__, "compression_level", compression_level)
950
- if force_compression is None:
951
- force_compression = False
952
- if force_compression is not None:
953
- pulumi.set(__self__, "force_compression", force_compression)
954
- if ignore_error is None:
955
- ignore_error = False
956
- if ignore_error is not None:
957
- pulumi.set(__self__, "ignore_error", ignore_error)
958
- if mode is None:
959
- mode = 'min'
960
- if mode is not None:
961
- pulumi.set(__self__, "mode", mode)
962
-
963
- @property
964
- @pulumi.getter
965
- def dest(self) -> str:
966
- """
967
- Path of the local directory to export the cache.
968
- """
969
- return pulumi.get(self, "dest")
970
-
971
- @property
972
- @pulumi.getter
973
- def compression(self) -> Optional['CompressionType']:
974
- """
975
- The compression type to use.
976
- """
977
- return pulumi.get(self, "compression")
978
-
979
- @property
980
- @pulumi.getter(name="compressionLevel")
981
- def compression_level(self) -> Optional[int]:
982
- """
983
- Compression level from 0 to 22.
984
- """
985
- return pulumi.get(self, "compression_level")
986
-
987
- @property
988
- @pulumi.getter(name="forceCompression")
989
- def force_compression(self) -> Optional[bool]:
990
- """
991
- Forcefully apply compression.
992
- """
993
- return pulumi.get(self, "force_compression")
994
-
995
- @property
996
- @pulumi.getter(name="ignoreError")
997
- def ignore_error(self) -> Optional[bool]:
998
- """
999
- Ignore errors caused by failed cache exports.
1000
- """
1001
- return pulumi.get(self, "ignore_error")
1002
-
1003
- @property
1004
- @pulumi.getter
1005
- def mode(self) -> Optional['CacheMode']:
1006
- """
1007
- The cache mode to use. Defaults to `min`.
1008
- """
1009
- return pulumi.get(self, "mode")
1010
-
1011
-
1012
- @pulumi.output_type
1013
- class CacheToRegistry(dict):
1014
- @staticmethod
1015
- def __key_warning(key: str):
1016
- suggest = None
1017
- if key == "compressionLevel":
1018
- suggest = "compression_level"
1019
- elif key == "forceCompression":
1020
- suggest = "force_compression"
1021
- elif key == "ignoreError":
1022
- suggest = "ignore_error"
1023
- elif key == "imageManifest":
1024
- suggest = "image_manifest"
1025
- elif key == "ociMediaTypes":
1026
- suggest = "oci_media_types"
1027
-
1028
- if suggest:
1029
- pulumi.log.warn(f"Key '{key}' not found in CacheToRegistry. Access the value via the '{suggest}' property getter instead.")
1030
-
1031
- def __getitem__(self, key: str) -> Any:
1032
- CacheToRegistry.__key_warning(key)
1033
- return super().__getitem__(key)
1034
-
1035
- def get(self, key: str, default = None) -> Any:
1036
- CacheToRegistry.__key_warning(key)
1037
- return super().get(key, default)
1038
-
1039
- def __init__(__self__, *,
1040
- ref: str,
1041
- compression: Optional['CompressionType'] = None,
1042
- compression_level: Optional[int] = None,
1043
- force_compression: Optional[bool] = None,
1044
- ignore_error: Optional[bool] = None,
1045
- image_manifest: Optional[bool] = None,
1046
- mode: Optional['CacheMode'] = None,
1047
- oci_media_types: Optional[bool] = None):
1048
- """
1049
- :param str ref: Fully qualified name of the cache image to import.
1050
- :param 'CompressionType' compression: The compression type to use.
1051
- :param int compression_level: Compression level from 0 to 22.
1052
- :param bool force_compression: Forcefully apply compression.
1053
- :param bool ignore_error: Ignore errors caused by failed cache exports.
1054
- :param bool image_manifest: Export cache manifest as an OCI-compatible image manifest instead of a
1055
- manifest list (requires OCI media types).
1056
-
1057
- Defaults to `false`.
1058
- :param 'CacheMode' mode: The cache mode to use. Defaults to `min`.
1059
- :param bool oci_media_types: Whether to use OCI media types in exported manifests. Defaults to
1060
- `true`.
1061
- """
1062
- pulumi.set(__self__, "ref", ref)
1063
- if compression is None:
1064
- compression = 'gzip'
1065
- if compression is not None:
1066
- pulumi.set(__self__, "compression", compression)
1067
- if compression_level is None:
1068
- compression_level = 0
1069
- if compression_level is not None:
1070
- pulumi.set(__self__, "compression_level", compression_level)
1071
- if force_compression is None:
1072
- force_compression = False
1073
- if force_compression is not None:
1074
- pulumi.set(__self__, "force_compression", force_compression)
1075
- if ignore_error is None:
1076
- ignore_error = False
1077
- if ignore_error is not None:
1078
- pulumi.set(__self__, "ignore_error", ignore_error)
1079
- if image_manifest is None:
1080
- image_manifest = False
1081
- if image_manifest is not None:
1082
- pulumi.set(__self__, "image_manifest", image_manifest)
1083
- if mode is None:
1084
- mode = 'min'
1085
- if mode is not None:
1086
- pulumi.set(__self__, "mode", mode)
1087
- if oci_media_types is None:
1088
- oci_media_types = True
1089
- if oci_media_types is not None:
1090
- pulumi.set(__self__, "oci_media_types", oci_media_types)
1091
-
1092
- @property
1093
- @pulumi.getter
1094
- def ref(self) -> str:
1095
- """
1096
- Fully qualified name of the cache image to import.
1097
- """
1098
- return pulumi.get(self, "ref")
1099
-
1100
- @property
1101
- @pulumi.getter
1102
- def compression(self) -> Optional['CompressionType']:
1103
- """
1104
- The compression type to use.
1105
- """
1106
- return pulumi.get(self, "compression")
1107
-
1108
- @property
1109
- @pulumi.getter(name="compressionLevel")
1110
- def compression_level(self) -> Optional[int]:
1111
- """
1112
- Compression level from 0 to 22.
1113
- """
1114
- return pulumi.get(self, "compression_level")
1115
-
1116
- @property
1117
- @pulumi.getter(name="forceCompression")
1118
- def force_compression(self) -> Optional[bool]:
1119
- """
1120
- Forcefully apply compression.
1121
- """
1122
- return pulumi.get(self, "force_compression")
1123
-
1124
- @property
1125
- @pulumi.getter(name="ignoreError")
1126
- def ignore_error(self) -> Optional[bool]:
1127
- """
1128
- Ignore errors caused by failed cache exports.
1129
- """
1130
- return pulumi.get(self, "ignore_error")
1131
-
1132
- @property
1133
- @pulumi.getter(name="imageManifest")
1134
- def image_manifest(self) -> Optional[bool]:
1135
- """
1136
- Export cache manifest as an OCI-compatible image manifest instead of a
1137
- manifest list (requires OCI media types).
1138
-
1139
- Defaults to `false`.
1140
- """
1141
- return pulumi.get(self, "image_manifest")
1142
-
1143
- @property
1144
- @pulumi.getter
1145
- def mode(self) -> Optional['CacheMode']:
1146
- """
1147
- The cache mode to use. Defaults to `min`.
1148
- """
1149
- return pulumi.get(self, "mode")
1150
-
1151
- @property
1152
- @pulumi.getter(name="ociMediaTypes")
1153
- def oci_media_types(self) -> Optional[bool]:
1154
- """
1155
- Whether to use OCI media types in exported manifests. Defaults to
1156
- `true`.
1157
- """
1158
- return pulumi.get(self, "oci_media_types")
1159
-
1160
-
1161
- @pulumi.output_type
1162
- class CacheToS3(dict):
1163
- @staticmethod
1164
- def __key_warning(key: str):
1165
- suggest = None
1166
- if key == "accessKeyId":
1167
- suggest = "access_key_id"
1168
- elif key == "blobsPrefix":
1169
- suggest = "blobs_prefix"
1170
- elif key == "endpointUrl":
1171
- suggest = "endpoint_url"
1172
- elif key == "ignoreError":
1173
- suggest = "ignore_error"
1174
- elif key == "manifestsPrefix":
1175
- suggest = "manifests_prefix"
1176
- elif key == "secretAccessKey":
1177
- suggest = "secret_access_key"
1178
- elif key == "sessionToken":
1179
- suggest = "session_token"
1180
- elif key == "usePathStyle":
1181
- suggest = "use_path_style"
1182
-
1183
- if suggest:
1184
- pulumi.log.warn(f"Key '{key}' not found in CacheToS3. Access the value via the '{suggest}' property getter instead.")
1185
-
1186
- def __getitem__(self, key: str) -> Any:
1187
- CacheToS3.__key_warning(key)
1188
- return super().__getitem__(key)
1189
-
1190
- def get(self, key: str, default = None) -> Any:
1191
- CacheToS3.__key_warning(key)
1192
- return super().get(key, default)
1193
-
1194
- def __init__(__self__, *,
1195
- bucket: str,
1196
- region: Optional[str] = None,
1197
- access_key_id: Optional[str] = None,
1198
- blobs_prefix: Optional[str] = None,
1199
- endpoint_url: Optional[str] = None,
1200
- ignore_error: Optional[bool] = None,
1201
- manifests_prefix: Optional[str] = None,
1202
- mode: Optional['CacheMode'] = None,
1203
- name: Optional[str] = None,
1204
- secret_access_key: Optional[str] = None,
1205
- session_token: Optional[str] = None,
1206
- use_path_style: Optional[bool] = None):
1207
- """
1208
- :param str bucket: Name of the S3 bucket.
1209
- :param str region: The geographic location of the bucket. Defaults to `$AWS_REGION`.
1210
- :param str access_key_id: Defaults to `$AWS_ACCESS_KEY_ID`.
1211
- :param str blobs_prefix: Prefix to prepend to blob filenames.
1212
- :param str endpoint_url: Endpoint of the S3 bucket.
1213
- :param bool ignore_error: Ignore errors caused by failed cache exports.
1214
- :param str manifests_prefix: Prefix to prepend on manifest filenames.
1215
- :param 'CacheMode' mode: The cache mode to use. Defaults to `min`.
1216
- :param str name: Name of the cache image.
1217
- :param str secret_access_key: Defaults to `$AWS_SECRET_ACCESS_KEY`.
1218
- :param str session_token: Defaults to `$AWS_SESSION_TOKEN`.
1219
- :param bool use_path_style: Uses `bucket` in the URL instead of hostname when `true`.
1220
- """
1221
- pulumi.set(__self__, "bucket", bucket)
1222
- if region is None:
1223
- region = (_utilities.get_env('AWS_REGION') or '')
1224
- pulumi.set(__self__, "region", region)
1225
- if access_key_id is None:
1226
- access_key_id = (_utilities.get_env('AWS_ACCESS_KEY_ID') or '')
1227
- if access_key_id is not None:
1228
- pulumi.set(__self__, "access_key_id", access_key_id)
1229
- if blobs_prefix is not None:
1230
- pulumi.set(__self__, "blobs_prefix", blobs_prefix)
1231
- if endpoint_url is not None:
1232
- pulumi.set(__self__, "endpoint_url", endpoint_url)
1233
- if ignore_error is None:
1234
- ignore_error = False
1235
- if ignore_error is not None:
1236
- pulumi.set(__self__, "ignore_error", ignore_error)
1237
- if manifests_prefix is not None:
1238
- pulumi.set(__self__, "manifests_prefix", manifests_prefix)
1239
- if mode is None:
1240
- mode = 'min'
1241
- if mode is not None:
1242
- pulumi.set(__self__, "mode", mode)
1243
- if name is not None:
1244
- pulumi.set(__self__, "name", name)
1245
- if secret_access_key is None:
1246
- secret_access_key = (_utilities.get_env('AWS_SECRET_ACCESS_KEY') or '')
1247
- if secret_access_key is not None:
1248
- pulumi.set(__self__, "secret_access_key", secret_access_key)
1249
- if session_token is None:
1250
- session_token = (_utilities.get_env('AWS_SESSION_TOKEN') or '')
1251
- if session_token is not None:
1252
- pulumi.set(__self__, "session_token", session_token)
1253
- if use_path_style is not None:
1254
- pulumi.set(__self__, "use_path_style", use_path_style)
1255
-
1256
- @property
1257
- @pulumi.getter
1258
- def bucket(self) -> str:
1259
- """
1260
- Name of the S3 bucket.
1261
- """
1262
- return pulumi.get(self, "bucket")
1263
-
1264
- @property
1265
- @pulumi.getter
1266
- def region(self) -> str:
1267
- """
1268
- The geographic location of the bucket. Defaults to `$AWS_REGION`.
1269
- """
1270
- return pulumi.get(self, "region")
1271
-
1272
- @property
1273
- @pulumi.getter(name="accessKeyId")
1274
- def access_key_id(self) -> Optional[str]:
1275
- """
1276
- Defaults to `$AWS_ACCESS_KEY_ID`.
1277
- """
1278
- return pulumi.get(self, "access_key_id")
1279
-
1280
- @property
1281
- @pulumi.getter(name="blobsPrefix")
1282
- def blobs_prefix(self) -> Optional[str]:
1283
- """
1284
- Prefix to prepend to blob filenames.
1285
- """
1286
- return pulumi.get(self, "blobs_prefix")
1287
-
1288
- @property
1289
- @pulumi.getter(name="endpointUrl")
1290
- def endpoint_url(self) -> Optional[str]:
1291
- """
1292
- Endpoint of the S3 bucket.
1293
- """
1294
- return pulumi.get(self, "endpoint_url")
1295
-
1296
- @property
1297
- @pulumi.getter(name="ignoreError")
1298
- def ignore_error(self) -> Optional[bool]:
1299
- """
1300
- Ignore errors caused by failed cache exports.
1301
- """
1302
- return pulumi.get(self, "ignore_error")
1303
-
1304
- @property
1305
- @pulumi.getter(name="manifestsPrefix")
1306
- def manifests_prefix(self) -> Optional[str]:
1307
- """
1308
- Prefix to prepend on manifest filenames.
1309
- """
1310
- return pulumi.get(self, "manifests_prefix")
1311
-
1312
- @property
1313
- @pulumi.getter
1314
- def mode(self) -> Optional['CacheMode']:
1315
- """
1316
- The cache mode to use. Defaults to `min`.
1317
- """
1318
- return pulumi.get(self, "mode")
1319
-
1320
- @property
1321
- @pulumi.getter
1322
- def name(self) -> Optional[str]:
1323
- """
1324
- Name of the cache image.
1325
- """
1326
- return pulumi.get(self, "name")
1327
-
1328
- @property
1329
- @pulumi.getter(name="secretAccessKey")
1330
- def secret_access_key(self) -> Optional[str]:
1331
- """
1332
- Defaults to `$AWS_SECRET_ACCESS_KEY`.
1333
- """
1334
- return pulumi.get(self, "secret_access_key")
1335
-
1336
- @property
1337
- @pulumi.getter(name="sessionToken")
1338
- def session_token(self) -> Optional[str]:
1339
- """
1340
- Defaults to `$AWS_SESSION_TOKEN`.
1341
- """
1342
- return pulumi.get(self, "session_token")
1343
-
1344
- @property
1345
- @pulumi.getter(name="usePathStyle")
1346
- def use_path_style(self) -> Optional[bool]:
1347
- """
1348
- Uses `bucket` in the URL instead of hostname when `true`.
1349
- """
1350
- return pulumi.get(self, "use_path_style")
1351
-
1352
-
1353
- @pulumi.output_type
1354
- class Context(dict):
1355
- def __init__(__self__, *,
1356
- location: str):
1357
- """
1358
- :param str location: Resources to use for build context.
1359
-
1360
- The location can be:
1361
- * A relative or absolute path to a local directory (`.`, `./app`,
1362
- `/app`, etc.).
1363
- * A remote URL of a Git repository, tarball, or plain text file
1364
- (`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`,
1365
- etc.).
1366
- """
1367
- pulumi.set(__self__, "location", location)
1368
-
1369
- @property
1370
- @pulumi.getter
1371
- def location(self) -> str:
1372
- """
1373
- Resources to use for build context.
1374
-
1375
- The location can be:
1376
- * A relative or absolute path to a local directory (`.`, `./app`,
1377
- `/app`, etc.).
1378
- * A remote URL of a Git repository, tarball, or plain text file
1379
- (`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`,
1380
- etc.).
1381
- """
1382
- return pulumi.get(self, "location")
1383
-
1384
-
1385
- @pulumi.output_type
1386
- class Dockerfile(dict):
1387
- def __init__(__self__, *,
1388
- inline: Optional[str] = None,
1389
- location: Optional[str] = None):
1390
- """
1391
- :param str inline: Raw Dockerfile contents.
1392
-
1393
- Conflicts with `location`.
1394
-
1395
- Equivalent to invoking Docker with `-f -`.
1396
- :param str location: Location of the Dockerfile to use.
1397
-
1398
- Can be a relative or absolute path to a local file, or a remote URL.
1399
-
1400
- Defaults to `${context.location}/Dockerfile` if context is on-disk.
1401
-
1402
- Conflicts with `inline`.
1403
- """
1404
- if inline is not None:
1405
- pulumi.set(__self__, "inline", inline)
1406
- if location is not None:
1407
- pulumi.set(__self__, "location", location)
1408
-
1409
- @property
1410
- @pulumi.getter
1411
- def inline(self) -> Optional[str]:
1412
- """
1413
- Raw Dockerfile contents.
1414
-
1415
- Conflicts with `location`.
1416
-
1417
- Equivalent to invoking Docker with `-f -`.
1418
- """
1419
- return pulumi.get(self, "inline")
1420
-
1421
- @property
1422
- @pulumi.getter
1423
- def location(self) -> Optional[str]:
1424
- """
1425
- Location of the Dockerfile to use.
1426
-
1427
- Can be a relative or absolute path to a local file, or a remote URL.
1428
-
1429
- Defaults to `${context.location}/Dockerfile` if context is on-disk.
1430
-
1431
- Conflicts with `inline`.
1432
- """
1433
- return pulumi.get(self, "location")
1434
-
1435
-
1436
- @pulumi.output_type
1437
- class ExportDocker(dict):
1438
- @staticmethod
1439
- def __key_warning(key: str):
1440
- suggest = None
1441
- if key == "compressionLevel":
1442
- suggest = "compression_level"
1443
- elif key == "forceCompression":
1444
- suggest = "force_compression"
1445
- elif key == "ociMediaTypes":
1446
- suggest = "oci_media_types"
1447
-
1448
- if suggest:
1449
- pulumi.log.warn(f"Key '{key}' not found in ExportDocker. Access the value via the '{suggest}' property getter instead.")
1450
-
1451
- def __getitem__(self, key: str) -> Any:
1452
- ExportDocker.__key_warning(key)
1453
- return super().__getitem__(key)
1454
-
1455
- def get(self, key: str, default = None) -> Any:
1456
- ExportDocker.__key_warning(key)
1457
- return super().get(key, default)
1458
-
1459
- def __init__(__self__, *,
1460
- annotations: Optional[Mapping[str, str]] = None,
1461
- compression: Optional['CompressionType'] = None,
1462
- compression_level: Optional[int] = None,
1463
- dest: Optional[str] = None,
1464
- force_compression: Optional[bool] = None,
1465
- names: Optional[Sequence[str]] = None,
1466
- oci_media_types: Optional[bool] = None,
1467
- tar: Optional[bool] = None):
1468
- """
1469
- :param Mapping[str, str] annotations: Attach an arbitrary key/value annotation to the image.
1470
- :param 'CompressionType' compression: The compression type to use.
1471
- :param int compression_level: Compression level from 0 to 22.
1472
- :param str dest: The local export path.
1473
- :param bool force_compression: Forcefully apply compression.
1474
- :param Sequence[str] names: Specify images names to export. This is overridden if tags are already specified.
1475
- :param bool oci_media_types: Use OCI media types in exporter manifests.
1476
- :param bool tar: Bundle the output into a tarball layout.
1477
- """
1478
- if annotations is not None:
1479
- pulumi.set(__self__, "annotations", annotations)
1480
- if compression is None:
1481
- compression = 'gzip'
1482
- if compression is not None:
1483
- pulumi.set(__self__, "compression", compression)
1484
- if compression_level is None:
1485
- compression_level = 0
1486
- if compression_level is not None:
1487
- pulumi.set(__self__, "compression_level", compression_level)
1488
- if dest is not None:
1489
- pulumi.set(__self__, "dest", dest)
1490
- if force_compression is None:
1491
- force_compression = False
1492
- if force_compression is not None:
1493
- pulumi.set(__self__, "force_compression", force_compression)
1494
- if names is not None:
1495
- pulumi.set(__self__, "names", names)
1496
- if oci_media_types is None:
1497
- oci_media_types = False
1498
- if oci_media_types is not None:
1499
- pulumi.set(__self__, "oci_media_types", oci_media_types)
1500
- if tar is None:
1501
- tar = True
1502
- if tar is not None:
1503
- pulumi.set(__self__, "tar", tar)
1504
-
1505
- @property
1506
- @pulumi.getter
1507
- def annotations(self) -> Optional[Mapping[str, str]]:
1508
- """
1509
- Attach an arbitrary key/value annotation to the image.
1510
- """
1511
- return pulumi.get(self, "annotations")
1512
-
1513
- @property
1514
- @pulumi.getter
1515
- def compression(self) -> Optional['CompressionType']:
1516
- """
1517
- The compression type to use.
1518
- """
1519
- return pulumi.get(self, "compression")
1520
-
1521
- @property
1522
- @pulumi.getter(name="compressionLevel")
1523
- def compression_level(self) -> Optional[int]:
1524
- """
1525
- Compression level from 0 to 22.
1526
- """
1527
- return pulumi.get(self, "compression_level")
1528
-
1529
- @property
1530
- @pulumi.getter
1531
- def dest(self) -> Optional[str]:
1532
- """
1533
- The local export path.
1534
- """
1535
- return pulumi.get(self, "dest")
1536
-
1537
- @property
1538
- @pulumi.getter(name="forceCompression")
1539
- def force_compression(self) -> Optional[bool]:
1540
- """
1541
- Forcefully apply compression.
1542
- """
1543
- return pulumi.get(self, "force_compression")
1544
-
1545
- @property
1546
- @pulumi.getter
1547
- def names(self) -> Optional[Sequence[str]]:
1548
- """
1549
- Specify images names to export. This is overridden if tags are already specified.
1550
- """
1551
- return pulumi.get(self, "names")
1552
-
1553
- @property
1554
- @pulumi.getter(name="ociMediaTypes")
1555
- def oci_media_types(self) -> Optional[bool]:
1556
- """
1557
- Use OCI media types in exporter manifests.
1558
- """
1559
- return pulumi.get(self, "oci_media_types")
1560
-
1561
- @property
1562
- @pulumi.getter
1563
- def tar(self) -> Optional[bool]:
1564
- """
1565
- Bundle the output into a tarball layout.
1566
- """
1567
- return pulumi.get(self, "tar")
1568
-
1569
-
1570
- @pulumi.output_type
1571
- class ExportEntry(dict):
1572
- def __init__(__self__, *,
1573
- disabled: Optional[bool] = None,
1574
- docker: Optional['outputs.ExportDocker'] = None,
1575
- image: Optional['outputs.ExportImage'] = None,
1576
- local: Optional['outputs.ExportLocal'] = None,
1577
- oci: Optional['outputs.ExportOCI'] = None,
1578
- raw: Optional[str] = None,
1579
- registry: Optional['outputs.ExportRegistry'] = None,
1580
- tar: Optional['outputs.ExportTar'] = None):
1581
- """
1582
- :param bool disabled: When `true` this entry will be excluded. Defaults to `false`.
1583
- :param 'ExportDockerArgs' docker: Export as a Docker image layout.
1584
- :param 'ExportImageArgs' image: Outputs the build result into a container image format.
1585
- :param 'ExportLocalArgs' local: Export to a local directory as files and directories.
1586
- :param 'ExportOCIArgs' oci: Identical to the Docker exporter but uses OCI media types by default.
1587
- :param str raw: A raw string as you would provide it to the Docker CLI (e.g.,
1588
- `type=docker`)
1589
- :param 'ExportRegistryArgs' registry: Identical to the Image exporter, but pushes by default.
1590
- :param 'ExportTarArgs' tar: Export to a local directory as a tarball.
1591
- """
1592
- if disabled is not None:
1593
- pulumi.set(__self__, "disabled", disabled)
1594
- if docker is not None:
1595
- pulumi.set(__self__, "docker", docker)
1596
- if image is not None:
1597
- pulumi.set(__self__, "image", image)
1598
- if local is not None:
1599
- pulumi.set(__self__, "local", local)
1600
- if oci is not None:
1601
- pulumi.set(__self__, "oci", oci)
1602
- if raw is not None:
1603
- pulumi.set(__self__, "raw", raw)
1604
- if registry is not None:
1605
- pulumi.set(__self__, "registry", registry)
1606
- if tar is not None:
1607
- pulumi.set(__self__, "tar", tar)
1608
-
1609
- @property
1610
- @pulumi.getter
1611
- def disabled(self) -> Optional[bool]:
1612
- """
1613
- When `true` this entry will be excluded. Defaults to `false`.
1614
- """
1615
- return pulumi.get(self, "disabled")
1616
-
1617
- @property
1618
- @pulumi.getter
1619
- def docker(self) -> Optional['outputs.ExportDocker']:
1620
- """
1621
- Export as a Docker image layout.
1622
- """
1623
- return pulumi.get(self, "docker")
1624
-
1625
- @property
1626
- @pulumi.getter
1627
- def image(self) -> Optional['outputs.ExportImage']:
1628
- """
1629
- Outputs the build result into a container image format.
1630
- """
1631
- return pulumi.get(self, "image")
1632
-
1633
- @property
1634
- @pulumi.getter
1635
- def local(self) -> Optional['outputs.ExportLocal']:
1636
- """
1637
- Export to a local directory as files and directories.
1638
- """
1639
- return pulumi.get(self, "local")
1640
-
1641
- @property
1642
- @pulumi.getter
1643
- def oci(self) -> Optional['outputs.ExportOCI']:
1644
- """
1645
- Identical to the Docker exporter but uses OCI media types by default.
1646
- """
1647
- return pulumi.get(self, "oci")
1648
-
1649
- @property
1650
- @pulumi.getter
1651
- def raw(self) -> Optional[str]:
1652
- """
1653
- A raw string as you would provide it to the Docker CLI (e.g.,
1654
- `type=docker`)
1655
- """
1656
- return pulumi.get(self, "raw")
1657
-
1658
- @property
1659
- @pulumi.getter
1660
- def registry(self) -> Optional['outputs.ExportRegistry']:
1661
- """
1662
- Identical to the Image exporter, but pushes by default.
1663
- """
1664
- return pulumi.get(self, "registry")
1665
-
1666
- @property
1667
- @pulumi.getter
1668
- def tar(self) -> Optional['outputs.ExportTar']:
1669
- """
1670
- Export to a local directory as a tarball.
1671
- """
1672
- return pulumi.get(self, "tar")
1673
-
1674
-
1675
- @pulumi.output_type
1676
- class ExportImage(dict):
1677
- @staticmethod
1678
- def __key_warning(key: str):
1679
- suggest = None
1680
- if key == "compressionLevel":
1681
- suggest = "compression_level"
1682
- elif key == "danglingNamePrefix":
1683
- suggest = "dangling_name_prefix"
1684
- elif key == "forceCompression":
1685
- suggest = "force_compression"
1686
- elif key == "nameCanonical":
1687
- suggest = "name_canonical"
1688
- elif key == "ociMediaTypes":
1689
- suggest = "oci_media_types"
1690
- elif key == "pushByDigest":
1691
- suggest = "push_by_digest"
1692
-
1693
- if suggest:
1694
- pulumi.log.warn(f"Key '{key}' not found in ExportImage. Access the value via the '{suggest}' property getter instead.")
1695
-
1696
- def __getitem__(self, key: str) -> Any:
1697
- ExportImage.__key_warning(key)
1698
- return super().__getitem__(key)
1699
-
1700
- def get(self, key: str, default = None) -> Any:
1701
- ExportImage.__key_warning(key)
1702
- return super().get(key, default)
1703
-
1704
- def __init__(__self__, *,
1705
- annotations: Optional[Mapping[str, str]] = None,
1706
- compression: Optional['CompressionType'] = None,
1707
- compression_level: Optional[int] = None,
1708
- dangling_name_prefix: Optional[str] = None,
1709
- force_compression: Optional[bool] = None,
1710
- insecure: Optional[bool] = None,
1711
- name_canonical: Optional[bool] = None,
1712
- names: Optional[Sequence[str]] = None,
1713
- oci_media_types: Optional[bool] = None,
1714
- push: Optional[bool] = None,
1715
- push_by_digest: Optional[bool] = None,
1716
- store: Optional[bool] = None,
1717
- unpack: Optional[bool] = None):
1718
- """
1719
- :param Mapping[str, str] annotations: Attach an arbitrary key/value annotation to the image.
1720
- :param 'CompressionType' compression: The compression type to use.
1721
- :param int compression_level: Compression level from 0 to 22.
1722
- :param str dangling_name_prefix: Name image with `prefix@<digest>`, used for anonymous images.
1723
- :param bool force_compression: Forcefully apply compression.
1724
- :param bool insecure: Allow pushing to an insecure registry.
1725
- :param bool name_canonical: Add additional canonical name (`name@<digest>`).
1726
- :param Sequence[str] names: Specify images names to export. This is overridden if tags are already specified.
1727
- :param bool oci_media_types: Use OCI media types in exporter manifests.
1728
- :param bool push: Push after creating the image.
1729
- :param bool push_by_digest: Push image without name.
1730
- :param bool store: Store resulting images to the worker's image store and ensure all of
1731
- its blobs are in the content store.
1732
-
1733
- Defaults to `true`.
1734
-
1735
- Ignored if the worker doesn't have image store (when using OCI workers,
1736
- for example).
1737
- :param bool unpack: Unpack image after creation (for use with containerd). Defaults to
1738
- `false`.
1739
- """
1740
- if annotations is not None:
1741
- pulumi.set(__self__, "annotations", annotations)
1742
- if compression is None:
1743
- compression = 'gzip'
1744
- if compression is not None:
1745
- pulumi.set(__self__, "compression", compression)
1746
- if compression_level is None:
1747
- compression_level = 0
1748
- if compression_level is not None:
1749
- pulumi.set(__self__, "compression_level", compression_level)
1750
- if dangling_name_prefix is not None:
1751
- pulumi.set(__self__, "dangling_name_prefix", dangling_name_prefix)
1752
- if force_compression is None:
1753
- force_compression = False
1754
- if force_compression is not None:
1755
- pulumi.set(__self__, "force_compression", force_compression)
1756
- if insecure is not None:
1757
- pulumi.set(__self__, "insecure", insecure)
1758
- if name_canonical is not None:
1759
- pulumi.set(__self__, "name_canonical", name_canonical)
1760
- if names is not None:
1761
- pulumi.set(__self__, "names", names)
1762
- if oci_media_types is None:
1763
- oci_media_types = False
1764
- if oci_media_types is not None:
1765
- pulumi.set(__self__, "oci_media_types", oci_media_types)
1766
- if push is not None:
1767
- pulumi.set(__self__, "push", push)
1768
- if push_by_digest is not None:
1769
- pulumi.set(__self__, "push_by_digest", push_by_digest)
1770
- if store is None:
1771
- store = True
1772
- if store is not None:
1773
- pulumi.set(__self__, "store", store)
1774
- if unpack is not None:
1775
- pulumi.set(__self__, "unpack", unpack)
1776
-
1777
- @property
1778
- @pulumi.getter
1779
- def annotations(self) -> Optional[Mapping[str, str]]:
1780
- """
1781
- Attach an arbitrary key/value annotation to the image.
1782
- """
1783
- return pulumi.get(self, "annotations")
1784
-
1785
- @property
1786
- @pulumi.getter
1787
- def compression(self) -> Optional['CompressionType']:
1788
- """
1789
- The compression type to use.
1790
- """
1791
- return pulumi.get(self, "compression")
1792
-
1793
- @property
1794
- @pulumi.getter(name="compressionLevel")
1795
- def compression_level(self) -> Optional[int]:
1796
- """
1797
- Compression level from 0 to 22.
1798
- """
1799
- return pulumi.get(self, "compression_level")
1800
-
1801
- @property
1802
- @pulumi.getter(name="danglingNamePrefix")
1803
- def dangling_name_prefix(self) -> Optional[str]:
1804
- """
1805
- Name image with `prefix@<digest>`, used for anonymous images.
1806
- """
1807
- return pulumi.get(self, "dangling_name_prefix")
1808
-
1809
- @property
1810
- @pulumi.getter(name="forceCompression")
1811
- def force_compression(self) -> Optional[bool]:
1812
- """
1813
- Forcefully apply compression.
1814
- """
1815
- return pulumi.get(self, "force_compression")
1816
-
1817
- @property
1818
- @pulumi.getter
1819
- def insecure(self) -> Optional[bool]:
1820
- """
1821
- Allow pushing to an insecure registry.
1822
- """
1823
- return pulumi.get(self, "insecure")
1824
-
1825
- @property
1826
- @pulumi.getter(name="nameCanonical")
1827
- def name_canonical(self) -> Optional[bool]:
1828
- """
1829
- Add additional canonical name (`name@<digest>`).
1830
- """
1831
- return pulumi.get(self, "name_canonical")
1832
-
1833
- @property
1834
- @pulumi.getter
1835
- def names(self) -> Optional[Sequence[str]]:
1836
- """
1837
- Specify images names to export. This is overridden if tags are already specified.
1838
- """
1839
- return pulumi.get(self, "names")
1840
-
1841
- @property
1842
- @pulumi.getter(name="ociMediaTypes")
1843
- def oci_media_types(self) -> Optional[bool]:
1844
- """
1845
- Use OCI media types in exporter manifests.
1846
- """
1847
- return pulumi.get(self, "oci_media_types")
1848
-
1849
- @property
1850
- @pulumi.getter
1851
- def push(self) -> Optional[bool]:
1852
- """
1853
- Push after creating the image.
1854
- """
1855
- return pulumi.get(self, "push")
1856
-
1857
- @property
1858
- @pulumi.getter(name="pushByDigest")
1859
- def push_by_digest(self) -> Optional[bool]:
1860
- """
1861
- Push image without name.
1862
- """
1863
- return pulumi.get(self, "push_by_digest")
1864
-
1865
- @property
1866
- @pulumi.getter
1867
- def store(self) -> Optional[bool]:
1868
- """
1869
- Store resulting images to the worker's image store and ensure all of
1870
- its blobs are in the content store.
1871
-
1872
- Defaults to `true`.
1873
-
1874
- Ignored if the worker doesn't have image store (when using OCI workers,
1875
- for example).
1876
- """
1877
- return pulumi.get(self, "store")
1878
-
1879
- @property
1880
- @pulumi.getter
1881
- def unpack(self) -> Optional[bool]:
1882
- """
1883
- Unpack image after creation (for use with containerd). Defaults to
1884
- `false`.
1885
- """
1886
- return pulumi.get(self, "unpack")
1887
-
1888
-
1889
- @pulumi.output_type
1890
- class ExportLocal(dict):
1891
- def __init__(__self__, *,
1892
- dest: str):
1893
- """
1894
- :param str dest: Output path.
1895
- """
1896
- pulumi.set(__self__, "dest", dest)
1897
-
1898
- @property
1899
- @pulumi.getter
1900
- def dest(self) -> str:
1901
- """
1902
- Output path.
1903
- """
1904
- return pulumi.get(self, "dest")
1905
-
1906
-
1907
- @pulumi.output_type
1908
- class ExportOCI(dict):
1909
- @staticmethod
1910
- def __key_warning(key: str):
1911
- suggest = None
1912
- if key == "compressionLevel":
1913
- suggest = "compression_level"
1914
- elif key == "forceCompression":
1915
- suggest = "force_compression"
1916
- elif key == "ociMediaTypes":
1917
- suggest = "oci_media_types"
1918
-
1919
- if suggest:
1920
- pulumi.log.warn(f"Key '{key}' not found in ExportOCI. Access the value via the '{suggest}' property getter instead.")
1921
-
1922
- def __getitem__(self, key: str) -> Any:
1923
- ExportOCI.__key_warning(key)
1924
- return super().__getitem__(key)
1925
-
1926
- def get(self, key: str, default = None) -> Any:
1927
- ExportOCI.__key_warning(key)
1928
- return super().get(key, default)
1929
-
1930
- def __init__(__self__, *,
1931
- annotations: Optional[Mapping[str, str]] = None,
1932
- compression: Optional['CompressionType'] = None,
1933
- compression_level: Optional[int] = None,
1934
- dest: Optional[str] = None,
1935
- force_compression: Optional[bool] = None,
1936
- names: Optional[Sequence[str]] = None,
1937
- oci_media_types: Optional[bool] = None,
1938
- tar: Optional[bool] = None):
1939
- """
1940
- :param Mapping[str, str] annotations: Attach an arbitrary key/value annotation to the image.
1941
- :param 'CompressionType' compression: The compression type to use.
1942
- :param int compression_level: Compression level from 0 to 22.
1943
- :param str dest: The local export path.
1944
- :param bool force_compression: Forcefully apply compression.
1945
- :param Sequence[str] names: Specify images names to export. This is overridden if tags are already specified.
1946
- :param bool oci_media_types: Use OCI media types in exporter manifests.
1947
- :param bool tar: Bundle the output into a tarball layout.
1948
- """
1949
- if annotations is not None:
1950
- pulumi.set(__self__, "annotations", annotations)
1951
- if compression is None:
1952
- compression = 'gzip'
1953
- if compression is not None:
1954
- pulumi.set(__self__, "compression", compression)
1955
- if compression_level is None:
1956
- compression_level = 0
1957
- if compression_level is not None:
1958
- pulumi.set(__self__, "compression_level", compression_level)
1959
- if dest is not None:
1960
- pulumi.set(__self__, "dest", dest)
1961
- if force_compression is None:
1962
- force_compression = False
1963
- if force_compression is not None:
1964
- pulumi.set(__self__, "force_compression", force_compression)
1965
- if names is not None:
1966
- pulumi.set(__self__, "names", names)
1967
- if oci_media_types is None:
1968
- oci_media_types = True
1969
- if oci_media_types is not None:
1970
- pulumi.set(__self__, "oci_media_types", oci_media_types)
1971
- if tar is None:
1972
- tar = True
1973
- if tar is not None:
1974
- pulumi.set(__self__, "tar", tar)
1975
-
1976
- @property
1977
- @pulumi.getter
1978
- def annotations(self) -> Optional[Mapping[str, str]]:
1979
- """
1980
- Attach an arbitrary key/value annotation to the image.
1981
- """
1982
- return pulumi.get(self, "annotations")
1983
-
1984
- @property
1985
- @pulumi.getter
1986
- def compression(self) -> Optional['CompressionType']:
1987
- """
1988
- The compression type to use.
1989
- """
1990
- return pulumi.get(self, "compression")
1991
-
1992
- @property
1993
- @pulumi.getter(name="compressionLevel")
1994
- def compression_level(self) -> Optional[int]:
1995
- """
1996
- Compression level from 0 to 22.
1997
- """
1998
- return pulumi.get(self, "compression_level")
1999
-
2000
- @property
2001
- @pulumi.getter
2002
- def dest(self) -> Optional[str]:
2003
- """
2004
- The local export path.
2005
- """
2006
- return pulumi.get(self, "dest")
2007
-
2008
- @property
2009
- @pulumi.getter(name="forceCompression")
2010
- def force_compression(self) -> Optional[bool]:
2011
- """
2012
- Forcefully apply compression.
2013
- """
2014
- return pulumi.get(self, "force_compression")
2015
-
2016
- @property
2017
- @pulumi.getter
2018
- def names(self) -> Optional[Sequence[str]]:
2019
- """
2020
- Specify images names to export. This is overridden if tags are already specified.
2021
- """
2022
- return pulumi.get(self, "names")
2023
-
2024
- @property
2025
- @pulumi.getter(name="ociMediaTypes")
2026
- def oci_media_types(self) -> Optional[bool]:
2027
- """
2028
- Use OCI media types in exporter manifests.
2029
- """
2030
- return pulumi.get(self, "oci_media_types")
2031
-
2032
- @property
2033
- @pulumi.getter
2034
- def tar(self) -> Optional[bool]:
2035
- """
2036
- Bundle the output into a tarball layout.
2037
- """
2038
- return pulumi.get(self, "tar")
2039
-
2040
-
2041
- @pulumi.output_type
2042
- class ExportRegistry(dict):
2043
- @staticmethod
2044
- def __key_warning(key: str):
2045
- suggest = None
2046
- if key == "compressionLevel":
2047
- suggest = "compression_level"
2048
- elif key == "danglingNamePrefix":
2049
- suggest = "dangling_name_prefix"
2050
- elif key == "forceCompression":
2051
- suggest = "force_compression"
2052
- elif key == "nameCanonical":
2053
- suggest = "name_canonical"
2054
- elif key == "ociMediaTypes":
2055
- suggest = "oci_media_types"
2056
- elif key == "pushByDigest":
2057
- suggest = "push_by_digest"
2058
-
2059
- if suggest:
2060
- pulumi.log.warn(f"Key '{key}' not found in ExportRegistry. Access the value via the '{suggest}' property getter instead.")
2061
-
2062
- def __getitem__(self, key: str) -> Any:
2063
- ExportRegistry.__key_warning(key)
2064
- return super().__getitem__(key)
2065
-
2066
- def get(self, key: str, default = None) -> Any:
2067
- ExportRegistry.__key_warning(key)
2068
- return super().get(key, default)
2069
-
2070
- def __init__(__self__, *,
2071
- annotations: Optional[Mapping[str, str]] = None,
2072
- compression: Optional['CompressionType'] = None,
2073
- compression_level: Optional[int] = None,
2074
- dangling_name_prefix: Optional[str] = None,
2075
- force_compression: Optional[bool] = None,
2076
- insecure: Optional[bool] = None,
2077
- name_canonical: Optional[bool] = None,
2078
- names: Optional[Sequence[str]] = None,
2079
- oci_media_types: Optional[bool] = None,
2080
- push: Optional[bool] = None,
2081
- push_by_digest: Optional[bool] = None,
2082
- store: Optional[bool] = None,
2083
- unpack: Optional[bool] = None):
2084
- """
2085
- :param Mapping[str, str] annotations: Attach an arbitrary key/value annotation to the image.
2086
- :param 'CompressionType' compression: The compression type to use.
2087
- :param int compression_level: Compression level from 0 to 22.
2088
- :param str dangling_name_prefix: Name image with `prefix@<digest>`, used for anonymous images.
2089
- :param bool force_compression: Forcefully apply compression.
2090
- :param bool insecure: Allow pushing to an insecure registry.
2091
- :param bool name_canonical: Add additional canonical name (`name@<digest>`).
2092
- :param Sequence[str] names: Specify images names to export. This is overridden if tags are already specified.
2093
- :param bool oci_media_types: Use OCI media types in exporter manifests.
2094
- :param bool push: Push after creating the image.
2095
- :param bool push_by_digest: Push image without name.
2096
- :param bool store: Store resulting images to the worker's image store and ensure all of
2097
- its blobs are in the content store.
2098
-
2099
- Defaults to `true`.
2100
-
2101
- Ignored if the worker doesn't have image store (when using OCI workers,
2102
- for example).
2103
- :param bool unpack: Unpack image after creation (for use with containerd). Defaults to
2104
- `false`.
2105
- """
2106
- if annotations is not None:
2107
- pulumi.set(__self__, "annotations", annotations)
2108
- if compression is None:
2109
- compression = 'gzip'
2110
- if compression is not None:
2111
- pulumi.set(__self__, "compression", compression)
2112
- if compression_level is None:
2113
- compression_level = 0
2114
- if compression_level is not None:
2115
- pulumi.set(__self__, "compression_level", compression_level)
2116
- if dangling_name_prefix is not None:
2117
- pulumi.set(__self__, "dangling_name_prefix", dangling_name_prefix)
2118
- if force_compression is None:
2119
- force_compression = False
2120
- if force_compression is not None:
2121
- pulumi.set(__self__, "force_compression", force_compression)
2122
- if insecure is not None:
2123
- pulumi.set(__self__, "insecure", insecure)
2124
- if name_canonical is not None:
2125
- pulumi.set(__self__, "name_canonical", name_canonical)
2126
- if names is not None:
2127
- pulumi.set(__self__, "names", names)
2128
- if oci_media_types is None:
2129
- oci_media_types = False
2130
- if oci_media_types is not None:
2131
- pulumi.set(__self__, "oci_media_types", oci_media_types)
2132
- if push is None:
2133
- push = True
2134
- if push is not None:
2135
- pulumi.set(__self__, "push", push)
2136
- if push_by_digest is not None:
2137
- pulumi.set(__self__, "push_by_digest", push_by_digest)
2138
- if store is None:
2139
- store = True
2140
- if store is not None:
2141
- pulumi.set(__self__, "store", store)
2142
- if unpack is not None:
2143
- pulumi.set(__self__, "unpack", unpack)
2144
-
2145
- @property
2146
- @pulumi.getter
2147
- def annotations(self) -> Optional[Mapping[str, str]]:
2148
- """
2149
- Attach an arbitrary key/value annotation to the image.
2150
- """
2151
- return pulumi.get(self, "annotations")
2152
-
2153
- @property
2154
- @pulumi.getter
2155
- def compression(self) -> Optional['CompressionType']:
2156
- """
2157
- The compression type to use.
2158
- """
2159
- return pulumi.get(self, "compression")
2160
-
2161
- @property
2162
- @pulumi.getter(name="compressionLevel")
2163
- def compression_level(self) -> Optional[int]:
2164
- """
2165
- Compression level from 0 to 22.
2166
- """
2167
- return pulumi.get(self, "compression_level")
2168
-
2169
- @property
2170
- @pulumi.getter(name="danglingNamePrefix")
2171
- def dangling_name_prefix(self) -> Optional[str]:
2172
- """
2173
- Name image with `prefix@<digest>`, used for anonymous images.
2174
- """
2175
- return pulumi.get(self, "dangling_name_prefix")
2176
-
2177
- @property
2178
- @pulumi.getter(name="forceCompression")
2179
- def force_compression(self) -> Optional[bool]:
2180
- """
2181
- Forcefully apply compression.
2182
- """
2183
- return pulumi.get(self, "force_compression")
2184
-
2185
- @property
2186
- @pulumi.getter
2187
- def insecure(self) -> Optional[bool]:
2188
- """
2189
- Allow pushing to an insecure registry.
2190
- """
2191
- return pulumi.get(self, "insecure")
2192
-
2193
- @property
2194
- @pulumi.getter(name="nameCanonical")
2195
- def name_canonical(self) -> Optional[bool]:
2196
- """
2197
- Add additional canonical name (`name@<digest>`).
2198
- """
2199
- return pulumi.get(self, "name_canonical")
2200
-
2201
- @property
2202
- @pulumi.getter
2203
- def names(self) -> Optional[Sequence[str]]:
2204
- """
2205
- Specify images names to export. This is overridden if tags are already specified.
2206
- """
2207
- return pulumi.get(self, "names")
2208
-
2209
- @property
2210
- @pulumi.getter(name="ociMediaTypes")
2211
- def oci_media_types(self) -> Optional[bool]:
2212
- """
2213
- Use OCI media types in exporter manifests.
2214
- """
2215
- return pulumi.get(self, "oci_media_types")
2216
-
2217
- @property
2218
- @pulumi.getter
2219
- def push(self) -> Optional[bool]:
2220
- """
2221
- Push after creating the image.
2222
- """
2223
- return pulumi.get(self, "push")
2224
-
2225
- @property
2226
- @pulumi.getter(name="pushByDigest")
2227
- def push_by_digest(self) -> Optional[bool]:
2228
- """
2229
- Push image without name.
2230
- """
2231
- return pulumi.get(self, "push_by_digest")
2232
-
2233
- @property
2234
- @pulumi.getter
2235
- def store(self) -> Optional[bool]:
2236
- """
2237
- Store resulting images to the worker's image store and ensure all of
2238
- its blobs are in the content store.
2239
-
2240
- Defaults to `true`.
2241
-
2242
- Ignored if the worker doesn't have image store (when using OCI workers,
2243
- for example).
2244
- """
2245
- return pulumi.get(self, "store")
2246
-
2247
- @property
2248
- @pulumi.getter
2249
- def unpack(self) -> Optional[bool]:
2250
- """
2251
- Unpack image after creation (for use with containerd). Defaults to
2252
- `false`.
2253
- """
2254
- return pulumi.get(self, "unpack")
2255
-
2256
-
2257
- @pulumi.output_type
2258
- class ExportTar(dict):
2259
- def __init__(__self__, *,
2260
- dest: str):
2261
- """
2262
- :param str dest: Output path.
2263
- """
2264
- pulumi.set(__self__, "dest", dest)
2265
-
2266
- @property
2267
- @pulumi.getter
2268
- def dest(self) -> str:
2269
- """
2270
- Output path.
2271
- """
2272
- return pulumi.get(self, "dest")
2273
-
2274
-
2275
- @pulumi.output_type
2276
- class RegistryAuth(dict):
2277
- def __init__(__self__, *,
2278
- address: str,
2279
- password: Optional[str] = None,
2280
- username: Optional[str] = None):
2281
- """
2282
- :param str address: The registry's address (e.g. "docker.io").
2283
- :param str password: Password or token for the registry.
2284
- :param str username: Username for the registry.
2285
- """
2286
- pulumi.set(__self__, "address", address)
2287
- if password is not None:
2288
- pulumi.set(__self__, "password", password)
2289
- if username is not None:
2290
- pulumi.set(__self__, "username", username)
2291
-
2292
- @property
2293
- @pulumi.getter
2294
- def address(self) -> str:
2295
- """
2296
- The registry's address (e.g. "docker.io").
2297
- """
2298
- return pulumi.get(self, "address")
2299
-
2300
- @property
2301
- @pulumi.getter
2302
- def password(self) -> Optional[str]:
2303
- """
2304
- Password or token for the registry.
2305
- """
2306
- return pulumi.get(self, "password")
2307
-
2308
- @property
2309
- @pulumi.getter
2310
- def username(self) -> Optional[str]:
2311
- """
2312
- Username for the registry.
2313
- """
2314
- return pulumi.get(self, "username")
2315
-
2316
-
2317
- @pulumi.output_type
2318
- class SSH(dict):
2319
- def __init__(__self__, *,
2320
- id: str,
2321
- paths: Optional[Sequence[str]] = None):
2322
- """
2323
- :param str id: Useful for distinguishing different servers that are part of the same
2324
- build.
2325
-
2326
- A value of `default` is appropriate if only dealing with a single host.
2327
- :param Sequence[str] paths: SSH agent socket or private keys to expose to the build under the given
2328
- identifier.
2329
-
2330
- Defaults to `[$SSH_AUTH_SOCK]`.
2331
-
2332
- Note that your keys are **not** automatically added when using an
2333
- agent. Run `ssh-add -l` locally to confirm which public keys are
2334
- visible to the agent; these will be exposed to your build.
2335
- """
2336
- pulumi.set(__self__, "id", id)
2337
- if paths is not None:
2338
- pulumi.set(__self__, "paths", paths)
2339
-
2340
- @property
2341
- @pulumi.getter
2342
- def id(self) -> str:
2343
- """
2344
- Useful for distinguishing different servers that are part of the same
2345
- build.
2346
-
2347
- A value of `default` is appropriate if only dealing with a single host.
2348
- """
2349
- return pulumi.get(self, "id")
2350
-
2351
- @property
2352
- @pulumi.getter
2353
- def paths(self) -> Optional[Sequence[str]]:
2354
- """
2355
- SSH agent socket or private keys to expose to the build under the given
2356
- identifier.
2357
-
2358
- Defaults to `[$SSH_AUTH_SOCK]`.
2359
-
2360
- Note that your keys are **not** automatically added when using an
2361
- agent. Run `ssh-add -l` locally to confirm which public keys are
2362
- visible to the agent; these will be exposed to your build.
2363
- """
2364
- return pulumi.get(self, "paths")
2365
-
2366
-