pulumi-docker-build 0.0.1a3__py3-none-any.whl → 0.0.1a101__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pulumi-docker-build might be problematic. Click here for more details.

@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
  from . import outputs
12
17
  from ._inputs import *
@@ -99,18 +104,30 @@ class Index(pulumi.CustomResource):
99
104
  resource_name: str,
100
105
  opts: Optional[pulumi.ResourceOptions] = None,
101
106
  push: Optional[pulumi.Input[bool]] = None,
102
- registry: Optional[pulumi.Input[pulumi.InputType['RegistryArgs']]] = None,
107
+ registry: Optional[pulumi.Input[Union['RegistryArgs', 'RegistryArgsDict']]] = None,
103
108
  sources: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
104
109
  tag: Optional[pulumi.Input[str]] = None,
105
110
  __props__=None):
106
111
  """
107
- An index (or manifest list) referencing one or more existing images.
112
+ A wrapper around `docker buildx imagetools create` to create an index
113
+ (or manifest list) referencing one or more existing images.
108
114
 
109
- Useful for crafting a multi-platform image from several
110
- platform-specific images.
115
+ In most cases you do not need an `Index` to build a multi-platform
116
+ image -- specifying multiple platforms on the `Image` will handle this
117
+ for you automatically.
111
118
 
112
- This creates an OCI image index or a Docker manifest list depending on
113
- the media types of the source images.
119
+ However, as of April 2024, building multi-platform images _with
120
+ caching_ will only export a cache for one platform at a time (see [this
121
+ discussion](https://github.com/docker/buildx/discussions/1382) for more
122
+ details).
123
+
124
+ Therefore this resource can be helpful if you are building
125
+ multi-platform images with caching: each platform can be built and
126
+ cached separately, and an `Index` can join them all together. An
127
+ example of this is shown below.
128
+
129
+ This resource creates an OCI image index or a Docker manifest list
130
+ depending on the media types of the source images.
114
131
 
115
132
  ## Example Usage
116
133
  ### Multi-platform registry caching
@@ -119,37 +136,37 @@ class Index(pulumi.CustomResource):
119
136
  import pulumi_docker_build as docker_build
120
137
 
121
138
  amd64 = docker_build.Image("amd64",
122
- cache_from=[docker_build.CacheFromArgs(
123
- registry=docker_build.CacheFromRegistryArgs(
124
- ref="docker.io/pulumi/pulumi:cache-amd64",
125
- ),
126
- )],
127
- cache_to=[docker_build.CacheToArgs(
128
- registry=docker_build.CacheToRegistryArgs(
129
- mode=docker_build.CacheMode.MAX,
130
- ref="docker.io/pulumi/pulumi:cache-amd64",
131
- ),
132
- )],
133
- context=docker_build.BuildContextArgs(
134
- location="app",
135
- ),
139
+ cache_from=[{
140
+ "registry": {
141
+ "ref": "docker.io/pulumi/pulumi:cache-amd64",
142
+ },
143
+ }],
144
+ cache_to=[{
145
+ "registry": {
146
+ "mode": docker_build.CacheMode.MAX,
147
+ "ref": "docker.io/pulumi/pulumi:cache-amd64",
148
+ },
149
+ }],
150
+ context={
151
+ "location": "app",
152
+ },
136
153
  platforms=[docker_build.Platform.LINUX_AMD64],
137
154
  tags=["docker.io/pulumi/pulumi:3.107.0-amd64"])
138
155
  arm64 = docker_build.Image("arm64",
139
- cache_from=[docker_build.CacheFromArgs(
140
- registry=docker_build.CacheFromRegistryArgs(
141
- ref="docker.io/pulumi/pulumi:cache-arm64",
142
- ),
143
- )],
144
- cache_to=[docker_build.CacheToArgs(
145
- registry=docker_build.CacheToRegistryArgs(
146
- mode=docker_build.CacheMode.MAX,
147
- ref="docker.io/pulumi/pulumi:cache-arm64",
148
- ),
149
- )],
150
- context=docker_build.BuildContextArgs(
151
- location="app",
152
- ),
156
+ cache_from=[{
157
+ "registry": {
158
+ "ref": "docker.io/pulumi/pulumi:cache-arm64",
159
+ },
160
+ }],
161
+ cache_to=[{
162
+ "registry": {
163
+ "mode": docker_build.CacheMode.MAX,
164
+ "ref": "docker.io/pulumi/pulumi:cache-arm64",
165
+ },
166
+ }],
167
+ context={
168
+ "location": "app",
169
+ },
153
170
  platforms=[docker_build.Platform.LINUX_ARM64],
154
171
  tags=["docker.io/pulumi/pulumi:3.107.0-arm64"])
155
172
  index = docker_build.Index("index",
@@ -166,7 +183,7 @@ class Index(pulumi.CustomResource):
166
183
  :param pulumi.Input[bool] push: If true, push the index to the target registry.
167
184
 
168
185
  Defaults to `true`.
169
- :param pulumi.Input[pulumi.InputType['RegistryArgs']] registry: Authentication for the registry where the tagged index will be pushed.
186
+ :param pulumi.Input[Union['RegistryArgs', 'RegistryArgsDict']] registry: Authentication for the registry where the tagged index will be pushed.
170
187
 
171
188
  Credentials can also be included with the provider's configuration.
172
189
  :param pulumi.Input[Sequence[pulumi.Input[str]]] sources: Existing images to include in the index.
@@ -179,13 +196,25 @@ class Index(pulumi.CustomResource):
179
196
  args: IndexArgs,
180
197
  opts: Optional[pulumi.ResourceOptions] = None):
181
198
  """
182
- An index (or manifest list) referencing one or more existing images.
199
+ A wrapper around `docker buildx imagetools create` to create an index
200
+ (or manifest list) referencing one or more existing images.
201
+
202
+ In most cases you do not need an `Index` to build a multi-platform
203
+ image -- specifying multiple platforms on the `Image` will handle this
204
+ for you automatically.
205
+
206
+ However, as of April 2024, building multi-platform images _with
207
+ caching_ will only export a cache for one platform at a time (see [this
208
+ discussion](https://github.com/docker/buildx/discussions/1382) for more
209
+ details).
183
210
 
184
- Useful for crafting a multi-platform image from several
185
- platform-specific images.
211
+ Therefore this resource can be helpful if you are building
212
+ multi-platform images with caching: each platform can be built and
213
+ cached separately, and an `Index` can join them all together. An
214
+ example of this is shown below.
186
215
 
187
- This creates an OCI image index or a Docker manifest list depending on
188
- the media types of the source images.
216
+ This resource creates an OCI image index or a Docker manifest list
217
+ depending on the media types of the source images.
189
218
 
190
219
  ## Example Usage
191
220
  ### Multi-platform registry caching
@@ -194,37 +223,37 @@ class Index(pulumi.CustomResource):
194
223
  import pulumi_docker_build as docker_build
195
224
 
196
225
  amd64 = docker_build.Image("amd64",
197
- cache_from=[docker_build.CacheFromArgs(
198
- registry=docker_build.CacheFromRegistryArgs(
199
- ref="docker.io/pulumi/pulumi:cache-amd64",
200
- ),
201
- )],
202
- cache_to=[docker_build.CacheToArgs(
203
- registry=docker_build.CacheToRegistryArgs(
204
- mode=docker_build.CacheMode.MAX,
205
- ref="docker.io/pulumi/pulumi:cache-amd64",
206
- ),
207
- )],
208
- context=docker_build.BuildContextArgs(
209
- location="app",
210
- ),
226
+ cache_from=[{
227
+ "registry": {
228
+ "ref": "docker.io/pulumi/pulumi:cache-amd64",
229
+ },
230
+ }],
231
+ cache_to=[{
232
+ "registry": {
233
+ "mode": docker_build.CacheMode.MAX,
234
+ "ref": "docker.io/pulumi/pulumi:cache-amd64",
235
+ },
236
+ }],
237
+ context={
238
+ "location": "app",
239
+ },
211
240
  platforms=[docker_build.Platform.LINUX_AMD64],
212
241
  tags=["docker.io/pulumi/pulumi:3.107.0-amd64"])
213
242
  arm64 = docker_build.Image("arm64",
214
- cache_from=[docker_build.CacheFromArgs(
215
- registry=docker_build.CacheFromRegistryArgs(
216
- ref="docker.io/pulumi/pulumi:cache-arm64",
217
- ),
218
- )],
219
- cache_to=[docker_build.CacheToArgs(
220
- registry=docker_build.CacheToRegistryArgs(
221
- mode=docker_build.CacheMode.MAX,
222
- ref="docker.io/pulumi/pulumi:cache-arm64",
223
- ),
224
- )],
225
- context=docker_build.BuildContextArgs(
226
- location="app",
227
- ),
243
+ cache_from=[{
244
+ "registry": {
245
+ "ref": "docker.io/pulumi/pulumi:cache-arm64",
246
+ },
247
+ }],
248
+ cache_to=[{
249
+ "registry": {
250
+ "mode": docker_build.CacheMode.MAX,
251
+ "ref": "docker.io/pulumi/pulumi:cache-arm64",
252
+ },
253
+ }],
254
+ context={
255
+ "location": "app",
256
+ },
228
257
  platforms=[docker_build.Platform.LINUX_ARM64],
229
258
  tags=["docker.io/pulumi/pulumi:3.107.0-arm64"])
230
259
  index = docker_build.Index("index",
@@ -252,7 +281,7 @@ class Index(pulumi.CustomResource):
252
281
  resource_name: str,
253
282
  opts: Optional[pulumi.ResourceOptions] = None,
254
283
  push: Optional[pulumi.Input[bool]] = None,
255
- registry: Optional[pulumi.Input[pulumi.InputType['RegistryArgs']]] = None,
284
+ registry: Optional[pulumi.Input[Union['RegistryArgs', 'RegistryArgsDict']]] = None,
256
285
  sources: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
257
286
  tag: Optional[pulumi.Input[str]] = None,
258
287
  __props__=None):
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
  from . import outputs
12
17
  from ._enums import *
@@ -305,7 +310,7 @@ class CacheFromGitHubActions(dict):
305
310
  environment variable to your jobs.
306
311
  :param str url: The cache server URL to use for artifacts.
307
312
 
308
- Defaults to `$ACTIONS_RUNTIME_URL`, although a separate action like
313
+ Defaults to `$ACTIONS_CACHE_URL`, although a separate action like
309
314
  `crazy-max/ghaction-github-runtime` is recommended to expose this
310
315
  environment variable to your jobs.
311
316
  """
@@ -318,7 +323,7 @@ class CacheFromGitHubActions(dict):
318
323
  if token is not None:
319
324
  pulumi.set(__self__, "token", token)
320
325
  if url is None:
321
- url = (_utilities.get_env('ACTIONS_RUNTIME_URL') or '')
326
+ url = (_utilities.get_env('ACTIONS_CACHE_URL') or '')
322
327
  if url is not None:
323
328
  pulumi.set(__self__, "url", url)
324
329
 
@@ -352,7 +357,7 @@ class CacheFromGitHubActions(dict):
352
357
  """
353
358
  The cache server URL to use for artifacts.
354
359
 
355
- Defaults to `$ACTIONS_RUNTIME_URL`, although a separate action like
360
+ Defaults to `$ACTIONS_CACHE_URL`, although a separate action like
356
361
  `crazy-max/ghaction-github-runtime` is recommended to expose this
357
362
  environment variable to your jobs.
358
363
  """
@@ -817,7 +822,7 @@ class CacheToGitHubActions(dict):
817
822
  environment variable to your jobs.
818
823
  :param str url: The cache server URL to use for artifacts.
819
824
 
820
- Defaults to `$ACTIONS_RUNTIME_URL`, although a separate action like
825
+ Defaults to `$ACTIONS_CACHE_URL`, although a separate action like
821
826
  `crazy-max/ghaction-github-runtime` is recommended to expose this
822
827
  environment variable to your jobs.
823
828
  """
@@ -838,7 +843,7 @@ class CacheToGitHubActions(dict):
838
843
  if token is not None:
839
844
  pulumi.set(__self__, "token", token)
840
845
  if url is None:
841
- url = (_utilities.get_env('ACTIONS_RUNTIME_URL') or '')
846
+ url = (_utilities.get_env('ACTIONS_CACHE_URL') or '')
842
847
  if url is not None:
843
848
  pulumi.set(__self__, "url", url)
844
849
 
@@ -888,7 +893,7 @@ class CacheToGitHubActions(dict):
888
893
  """
889
894
  The cache server URL to use for artifacts.
890
895
 
891
- Defaults to `$ACTIONS_RUNTIME_URL`, although a separate action like
896
+ Defaults to `$ACTIONS_CACHE_URL`, although a separate action like
892
897
  `crazy-max/ghaction-github-runtime` is recommended to expose this
893
898
  environment variable to your jobs.
894
899
  """
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
  from ._inputs import *
12
17
 
@@ -56,7 +61,7 @@ class Provider(pulumi.ProviderResource):
56
61
  resource_name: str,
57
62
  opts: Optional[pulumi.ResourceOptions] = None,
58
63
  host: Optional[pulumi.Input[str]] = None,
59
- registries: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['RegistryArgs']]]]] = None,
64
+ registries: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RegistryArgs', 'RegistryArgsDict']]]]] = None,
60
65
  __props__=None):
61
66
  """
62
67
  Create a Docker-build resource with the given unique name, props, and options.
@@ -88,7 +93,7 @@ class Provider(pulumi.ProviderResource):
88
93
  resource_name: str,
89
94
  opts: Optional[pulumi.ResourceOptions] = None,
90
95
  host: Optional[pulumi.Input[str]] = None,
91
- registries: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['RegistryArgs']]]]] = None,
96
+ registries: Optional[pulumi.Input[Sequence[pulumi.Input[Union['RegistryArgs', 'RegistryArgsDict']]]]] = None,
92
97
  __props__=None):
93
98
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
94
99
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "resource": true,
3
3
  "name": "docker-build",
4
- "server": "github.com/pulumi/pulumi-docker-build"
4
+ "version": "0.0.1-alpha.101"
5
5
  }
@@ -0,0 +1,38 @@
1
+ Metadata-Version: 2.2
2
+ Name: pulumi_docker_build
3
+ Version: 0.0.1a101
4
+ Summary: A Pulumi provider for building modern Docker images with buildx and BuildKit.
5
+ License: Apache-2.0
6
+ Project-URL: Homepage, https://pulumi.com
7
+ Project-URL: Repository, https://github.com/pulumi/pulumi-docker-build
8
+ Keywords: docker,buildkit,buildx,kind/native
9
+ Requires-Python: >=3.9
10
+ Description-Content-Type: text/markdown
11
+ Requires-Dist: parver>=0.2.1
12
+ Requires-Dist: pulumi<4.0.0,>=3.142.0
13
+ Requires-Dist: semver>=2.8.1
14
+ Requires-Dist: typing-extensions>=4.11; python_version < "3.11"
15
+
16
+ [![Slack](http://www.pulumi.com/images/docs/badges/slack.svg)](https://slack.pulumi.com)
17
+ [![NPM version](https://badge.fury.io/js/%40pulumi%2fdocker-build.svg)](https://www.npmjs.com/package/@pulumi/docker-build)
18
+ [![Python version](https://badge.fury.io/py/pulumi-docker-build.svg)](https://pypi.org/project/pulumi-docker-build)
19
+ [![NuGet version](https://badge.fury.io/nu/pulumi.dockerbuild.svg)](https://badge.fury.io/nu/pulumi.dockerbuild)
20
+ [![PkgGoDev](https://pkg.go.dev/badge/github.com/pulumi/pulumi-docker-build/sdk/go)](https://pkg.go.dev/github.com/pulumi/pulumi-docker-build/sdk/go)
21
+ [![License](https://img.shields.io/npm/l/%40pulumi%2Fpulumi.svg)](https://github.com/pulumi/pulumi-docker-build/blob/main/LICENSE)
22
+
23
+ # Docker-Build Resource Provider
24
+
25
+ A [Pulumi](http://pulumi.com) provider for building modern Docker images with [buildx](https://docs.docker.com/build/architecture/) and [BuildKit](https://docs.docker.com/build/buildkit/).
26
+
27
+ Not to be confused with the earlier
28
+ [Docker](http://github.com/pulumi/pulumi-docker) provider, which is still
29
+ appropriate for managing resources unrelated to building images.
30
+
31
+ | Provider | Use cases |
32
+ | ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
33
+ | `@pulumi/docker-build` | Anything related to building images with `docker build`. |
34
+ | `@pulumi/docker` | Everything else -- including running containers and creating networks. |
35
+
36
+ ## Reference
37
+
38
+ For more information, including examples and migration guidance, please see the Docker-Build provider's detailed [API documentation](https://www.pulumi.com/registry/packages/docker-build/).
@@ -0,0 +1,17 @@
1
+ pulumi_docker_build/__init__.py,sha256=jbA6SMpisvwJDycUKuo4IXVJ5_qjIao_1iPP9lcZ-Vw,983
2
+ pulumi_docker_build/_enums.py,sha256=yfsDmimBobvf70zx6VAR_6ABp50Dan452rpIFVs8jkA,1928
3
+ pulumi_docker_build/_inputs.py,sha256=aXJ4xqK0KBLf6vQWsqsnYM1yqSHfaB64nv-Vcp6_4Og,124044
4
+ pulumi_docker_build/_utilities.py,sha256=UL5vEmfNrBfiaeFQS69cz7xlHoBnPH8PY_UIVNwShcM,10486
5
+ pulumi_docker_build/image.py,sha256=5Zd6zmfsQUCVFogp6Wu-5RceMxkl0x_nuOG64fO7ZWg,74877
6
+ pulumi_docker_build/index.py,sha256=IMpevb9_ktXNcgF17qMAq-Dh15HC4HZbKp0A62faoEw,14291
7
+ pulumi_docker_build/outputs.py,sha256=F-PATYfU3BD0f0PEdGsaWMYSthp698pgX0LH8Mfk9lU,83415
8
+ pulumi_docker_build/provider.py,sha256=ds0_lPqQ0LuP9fsHLUHg6IvolD4fIBnU3oife3038x4,4972
9
+ pulumi_docker_build/pulumi-plugin.json,sha256=4_O2nNDprbGE2uVLuQbzEvuZMO8_G9paVQSfK7O8nv8,81
10
+ pulumi_docker_build/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
+ pulumi_docker_build/config/__init__.py,sha256=YdGLR92OvYD0CYDgt_FTaHJOb_VzW8fto_Cgx6fLd3k,267
12
+ pulumi_docker_build/config/__init__.pyi,sha256=2Yij9qLlwh_pi5ytfw8UgvI4KgmE-OC2fNuRQzFrKgk,615
13
+ pulumi_docker_build/config/vars.py,sha256=IeckzaS3wTGp0HlnJtyacWm2u7rm150AuK9jv6r9pGY,930
14
+ pulumi_docker_build-0.0.1a101.dist-info/METADATA,sha256=BGtS-jaJEkXvL6oasQaH_gEa9R49UgX01HGcrt5T2uc,2613
15
+ pulumi_docker_build-0.0.1a101.dist-info/WHEEL,sha256=In9FTNxeP60KnTkGw7wk6mJPYd_dQSjEZmXdBdMCI-8,91
16
+ pulumi_docker_build-0.0.1a101.dist-info/top_level.txt,sha256=-O-MiPQ61mhil3wD9QdYf8yA4r5vNPmBgSGdi9cOQ18,20
17
+ pulumi_docker_build-0.0.1a101.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.43.0)
2
+ Generator: setuptools (75.8.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,120 +0,0 @@
1
- Metadata-Version: 2.1
2
- Name: pulumi_docker_build
3
- Version: 0.0.1a3
4
- Summary: A Pulumi provider for Docker buildx
5
- License: Apache-2.0
6
- Project-URL: Homepage, https://pulumi.io
7
- Project-URL: Repository, https://github.com/pulumi/pulumi-docker-build
8
- Keywords: docker,buildkit,buildx
9
- Requires-Python: >=3.8
10
- Description-Content-Type: text/markdown
11
- Requires-Dist: parver >=0.2.1
12
- Requires-Dist: pulumi <4.0.0,>=3.0.0
13
- Requires-Dist: semver >=2.8.1
14
-
15
- # Pulumi Native Provider Boilerplate
16
-
17
- This repository is a boilerplate showing how to create and locally test a native Pulumi provider.
18
-
19
- ## Authoring a Pulumi Native Provider
20
-
21
- This boilerplate creates a working Pulumi-owned provider named `xyz`.
22
- It implements a random number generator that you can [build and test out for yourself](#test-against-the-example) and then replace the Random code with code specific to your provider.
23
-
24
-
25
- ### Prerequisites
26
-
27
- Prerequisites for this repository are already satisfied by the [Pulumi Devcontainer](https://github.com/pulumi/devcontainer) if you are using Github Codespaces, or VSCode.
28
-
29
- If you are not using VSCode, you will need to ensure the following tools are installed and present in your `$PATH`:
30
-
31
- * [`pulumictl`](https://github.com/pulumi/pulumictl#installation)
32
- * [Go 1.21](https://golang.org/dl/) or 1.latest
33
- * [NodeJS](https://nodejs.org/en/) 14.x. We recommend using [nvm](https://github.com/nvm-sh/nvm) to manage NodeJS installations.
34
- * [Yarn](https://yarnpkg.com/)
35
- * [TypeScript](https://www.typescriptlang.org/)
36
- * [Python](https://www.python.org/downloads/) (called as `python3`). For recent versions of MacOS, the system-installed version is fine.
37
- * [.NET](https://dotnet.microsoft.com/download)
38
-
39
-
40
- ### Build & test the boilerplate XYZ provider
41
-
42
- 1. Create a new Github CodeSpaces environment using this repository.
43
- 1. Open a terminal in the CodeSpaces environment.
44
- 1. Run `make build install` to build and install the provider.
45
- 1. Run `make gen_examples` to generate the example programs in `examples/` off of the source `examples/yaml` example program.
46
- 1. Run `make up` to run the example program in `examples/yaml`.
47
- 1. Run `make down` to tear down the example program.
48
-
49
- ### Creating a new provider repository
50
-
51
- Pulumi offers this repository as a [GitHub template repository](https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-repository-from-a-template) for convenience. From this repository:
52
-
53
- 1. Click "Use this template".
54
- 1. Set the following options:
55
- * Owner: pulumi
56
- * Repository name: pulumi-xyz-native (replace "xyz" with the name of your provider)
57
- * Description: Pulumi provider for xyz
58
- * Repository type: Public
59
- 1. Clone the generated repository.
60
-
61
- From the templated repository:
62
-
63
- 1. Search-replace `xyz` with the name of your desired provider.
64
-
65
- #### Build the provider and install the plugin
66
-
67
- ```bash
68
- $ make build install
69
- ```
70
-
71
- This will:
72
-
73
- 1. Create the SDK codegen binary and place it in a `./bin` folder (gitignored)
74
- 2. Create the provider binary and place it in the `./bin` folder (gitignored)
75
- 3. Generate the dotnet, Go, Node, and Python SDKs and place them in the `./sdk` folder
76
- 4. Install the provider on your machine.
77
-
78
- #### Test against the example
79
-
80
- ```bash
81
- $ cd examples/simple
82
- $ yarn link @pulumi/xyz
83
- $ yarn install
84
- $ pulumi stack init test
85
- $ pulumi up
86
- ```
87
-
88
- Now that you have completed all of the above steps, you have a working provider that generates a random string for you.
89
-
90
- #### A brief repository overview
91
-
92
- You now have:
93
-
94
- 1. A `provider/` folder containing the building and implementation logic
95
- 1. `cmd/pulumi-resource-xyz/main.go` - holds the provider's sample implementation logic.
96
- 2. `deployment-templates` - a set of files to help you around deployment and publication
97
- 3. `sdk` - holds the generated code libraries created by `pulumi-gen-xyz/main.go`
98
- 4. `examples` a folder of Pulumi programs to try locally and/or use in CI.
99
- 5. A `Makefile` and this `README`.
100
-
101
- #### Additional Details
102
-
103
- This repository depends on the pulumi-go-provider library. For more details on building providers, please check
104
- the [Pulumi Go Provider docs](https://github.com/pulumi/pulumi-go-provider).
105
-
106
- ### Build Examples
107
-
108
- Create an example program using the resources defined in your provider, and place it in the `examples/` folder.
109
-
110
- You can now repeat the steps for [build, install, and test](#test-against-the-example).
111
-
112
- ## Configuring CI and releases
113
-
114
- 1. Follow the instructions laid out in the [deployment templates](./deployment-templates/README-DEPLOYMENT.md).
115
-
116
- ## References
117
-
118
- Other resources/examples for implementing providers:
119
- * [Pulumi Command provider](https://github.com/pulumi/pulumi-command/blob/master/provider/pkg/provider/provider.go)
120
- * [Pulumi Go Provider repository](https://github.com/pulumi/pulumi-go-provider)
@@ -1,17 +0,0 @@
1
- pulumi_docker_build/__init__.py,sha256=jbA6SMpisvwJDycUKuo4IXVJ5_qjIao_1iPP9lcZ-Vw,983
2
- pulumi_docker_build/_enums.py,sha256=yfsDmimBobvf70zx6VAR_6ABp50Dan452rpIFVs8jkA,1928
3
- pulumi_docker_build/_inputs.py,sha256=L_v8wgNW_tjfh4caAatNqLUzqJwmPRbFSFFXrAs0h88,97964
4
- pulumi_docker_build/_utilities.py,sha256=rA8XvgybOPKFzEaIJx85muKv85tzLL5lEBQ58eVLEzs,9265
5
- pulumi_docker_build/image.py,sha256=AXN-kxI63aLrYFwbwTYjIuRf8XiPaC-YDtmh7jmqUpo,76626
6
- pulumi_docker_build/index.py,sha256=KHTpB_4i7e3b2no1batLV7KyhYJrWUj-bEdKh9VEYYQ,13254
7
- pulumi_docker_build/outputs.py,sha256=l9VIy-AMXUdQffKVpYcR-KCdtc7huWQ2qCDhv_hgHVs,83253
8
- pulumi_docker_build/provider.py,sha256=5f1FtyHXjxcCA3nouMG5HVJyrBEdCB452ezcNt53NmQ,4780
9
- pulumi_docker_build/pulumi-plugin.json,sha256=aNWnPPkTjPtNuWio8hIVyGOPhfmTF0knTyxRragQ0dQ,102
10
- pulumi_docker_build/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
- pulumi_docker_build/config/__init__.py,sha256=YdGLR92OvYD0CYDgt_FTaHJOb_VzW8fto_Cgx6fLd3k,267
12
- pulumi_docker_build/config/__init__.pyi,sha256=2lJs0q5nxrEi63kCCpe7M23-j-0NiQu9UpKaYAWe5TM,441
13
- pulumi_docker_build/config/vars.py,sha256=6g1SHA-v-YBMxDX9KwlhaZZ3Yk7DzC5_EB2xz0FQiKo,756
14
- pulumi_docker_build-0.0.1a3.dist-info/METADATA,sha256=IeBXqw170V8JSN9pgBeD4VtD4Gp2rW0_bgDB6WLEIi0,4791
15
- pulumi_docker_build-0.0.1a3.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
16
- pulumi_docker_build-0.0.1a3.dist-info/top_level.txt,sha256=-O-MiPQ61mhil3wD9QdYf8yA4r5vNPmBgSGdi9cOQ18,20
17
- pulumi_docker_build-0.0.1a3.dist-info/RECORD,,