Commit Graph

27 Commits

Author SHA1 Message Date
Bryce Lampe
195fbfc784 Add support for multiple exporters (#235)
Buildkit 0.13 introduced support for [multiple
exporters](https://docs.docker.com/build/exporters/#multiple-exporters).
We currently return an error in these situations.

Instead, inspect the builder's version when loading the node and relax
this error if we see it's running at least 0.13.

Fixes https://github.com/pulumi/pulumi-docker-build/issues/21.
2024-12-10 09:05:36 -08:00
Bryce Lampe
2907567484 Don't attempt to parse custom syntax (#346)
The provider currently attempts to parse your Dockerfile in case there
are any obviously broken syntax errors.

However, Dockerfiles can use custom syntaxes which are implemented as
their own images. Buildkit detects `# syntax=` directives, pulls the
image, and uses it to parse.

It doesn't make sense for us to attempt to replicate that behavior, so
when we detect a custom syntax we will simply disable this validation.
If there are syntax errors the user will discover them after the build
is attempted.

Fixes https://github.com/pulumi/pulumi-docker-build/issues/300
2024-12-09 15:41:58 -08:00
pulumi-renovate[bot]
0ce316d7de fix(deps): update module github.com/docker/buildx to v0.18.0 (main) (#312) 2024-11-20 20:00:22 -08:00
Bryce Lampe
0d17198e54 lint 2024-11-20 18:30:11 -08:00
Anton Tayanovskyy
9d3d0712f2 Fix: do not over-specify SDK dependencies (#271)
Re: https://github.com/pulumi/ci-mgmt/issues/1091
2024-10-02 14:03:54 -04:00
Bryce Lampe
5d7ff1eeca lint 2024-08-14 13:17:24 -07:00
Bryce Lampe
d9c3284f40 Check if local exports exist (#197)
Check if local exports exist during diffing. For tar, the file must
exist. For local, the directory must exist and be populated.

Fixes https://github.com/pulumi/pulumi-docker-build/issues/177.
2024-08-13 13:52:10 -07:00
Bryce Lampe
81a7aa4ec4 No-op during Read if credentials are invalid (#194)
The `Image` resource already ignores errors during read but the `Index`
resource was requiring the inspect call to always succeed. This will often 
fail due to https://github.com/pulumi/pulumi/issues/4981 (note however in
this case credentials are stored with the resource instead of the provider).

This changes our logic to instead emit a warning if the credentials are
invalid.

Fixes https://github.com/pulumi/pulumi-docker-build/issues/121.
2024-08-13 12:54:14 -07:00
Pulumi Bot
5cc3415b34 Automated Pulumi/Pulumi upgrade (#175)
Co-authored-by: Bryce Lampe <bryce@pulumi.com>
2024-08-08 16:05:09 -07:00
dependabot[bot]
724836b5ef Bump the other group across 1 directory with 13 updates (#152)
---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Bryce Lampe <bryce@pulumi.com>
2024-07-12 16:40:59 -07:00
Bryce Lampe
bbdefef3c8 Fix an issue where warnings aren't displayed correctly (#136)
This is a byte array that needs to be string'd.
2024-06-27 14:07:25 -07:00
dependabot[bot]
343eadd0b6 Bump the security group across 1 directory with 3 updates (#128) 2024-06-26 12:32:54 -07:00
dependabot[bot]
1febe659ca Bump the docker group with 5 updates (#113)
Bumps the docker group with 5 updates:

| Package | From | To |
| --- | --- | --- |
| [github.com/docker/buildx](https://github.com/docker/buildx) |
`0.13.1` | `0.15.1` |
| [github.com/docker/cli](https://github.com/docker/cli) |
`26.0.0-rc1+incompatible` | `26.1.4+incompatible` |
|
[github.com/docker/distribution](https://github.com/docker/distribution)
| `2.8.2+incompatible` | `2.8.3+incompatible` |
| [github.com/docker/docker](https://github.com/docker/docker) |
`26.0.0-rc1+incompatible` | `26.1.4+incompatible` |
| [github.com/moby/buildkit](https://github.com/moby/buildkit) |
`0.13.0` | `0.14.1` |

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Bryce Lampe <bryce@pulumi.com>
2024-06-26 11:07:02 -07:00
dependabot[bot]
b8ecfb287a Bump the pulumi group across 1 directory with 6 updates (#111)
This upgrades pulumi to v3.121.0 and bumps several other first-party dependencies.

Note that vendored language plugins must be bumped manually because their go modules are currently untagged:

* go get github.com/pulumi/pulumi/sdk/python/cmd/pulumi-language-python/v3@79e814fe0f2137ade87ee5af384e6cb71e4aa6ff
*  go get github.com/pulumi/pulumi/sdk/nodejs/cmd/pulumi-language-nodejs/v3@79e814fe0f2137ade87ee5af384e6cb71e4aa6ff
* go get github.com/pulumi/pulumi/sdk/go/pulumi-language-go/v3@79e814fe0f2137ade87ee5af384e6cb71e4aa6ff
* go get github.com/pulumi/pulumi-dotnet/pulumi-language-dotnet@fa777213effdc3a80bb893194d63cd8b7ca7a868
* go get github.com/pulumi/pulumi-yaml@15eb402

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Bryce Lampe <bryce@pulumi.com>
2024-06-25 14:17:24 -07:00
Bryce Lampe
4e8cf8f4ba Fix a panic that could occur when context was omitted (#83)
I could have sworn the context property was required, but evidently it
isn't and we weren't handling the case when it was missing.

This PR updates things to set a default location of the current
directory if the context is absent. Some unit tests are also added.

Fixes #78.
2024-05-31 14:41:22 +00:00
Bryce Lampe
9a1706a203 Fix publisher capitalization (#89)
Refs https://github.com/pulumi/pulumi-dbtcloud/pull/23.
2024-05-31 01:56:19 -07:00
Daniel Bradley
c305ea88c4 Embed sdk versions (#68)
Part of https://github.com/pulumi/ci-mgmt/issues/915

Install pulumi in standard way 

Use the same method as other providers to install the pulumi CLI.
- Lock the version of the CLI and therefore codegen for consistent build
results.
- Ensure the local language plugins are using by disabling ambient
plugins.

Enable respect schema version

Remove setting version at SDK build time

---------

Co-authored-by: Bryce Lampe <bryce@pulumi.com>
2024-05-30 13:50:54 +01:00
Bryce Lampe
f0aaf7095d Fix GitHub action URL (#80)
Our docs and default value for the GitHub action cache URL were
referring to the
[wrong](https://github.com/tonistiigi/go-actions-cache/blob/master/api.md)
environment variable.

I was under the impression that the underlying library ends up checking
for the correct variable later so this would be only cosmetic, but a
user
[confirmed](https://github.com/pulumi/pulumi-docker-build/issues/77#issuecomment-2135621983)
this does appear to break things.

I brought over an old test I had written while this was still in the
pulumi-docker repo, but unfortunately it doesn't currently test GHA due
to ci-mgmt limitations
https://github.com/pulumi/pulumi-docker-build/issues/82.

Fixes https://github.com/pulumi/pulumi-docker-build/issues/77.
2024-05-29 12:29:58 +00:00
Bryce Lampe
ff71c251e1 Upgrade go-provider (#53)
This upgrades pulumi-go-provider to latest. Code was automatically
migrated using a slightly modified patch described
[here](https://github.com/pulumi/pulumi-go-provider/pull/227#issuecomment-2073962385).

---------

Co-authored-by: Ian Wahbe <ian@wahbe.com>
2024-05-13 12:23:24 -07:00
Bryce Lampe
26c144c916 Initial provider implementation (#18)
This brings over the initial buildx prototype from pulumi/pulumi-docker
and fixes various build and release issues.
2024-04-25 11:03:59 -07:00
Bryce Lampe
9026e23f75 Update cmd location to unblock ci-mgmt workflows 2024-04-16 11:20:40 -07:00
Bryce Lampe
2b348f84e4 Housekeeping (#8)
* Rename the provider to dockerbuild.
* Add Makefile targets required by CI.
* Add per-language test targets compatible with CI.
* Fix broken example yaml.
* Add gitignore exclusions to fix SDK generation in CI.
* Fix lint errors.
* Vendor pulumi CLI via `tools.go` instead of `.pulumi`.
* Consolidate `go.mod`s into one file, with a minimal `go.mod` for the
Go SDK.
* Add codecov.
2024-03-20 11:09:37 -07:00
Bryce Lampe
3eb77f66f2 Add a placeholder schema 2024-03-18 16:00:39 -07:00
Bryce Lampe
d8688f5e1a Regenerate examples 2024-03-07 16:15:49 -08:00
Bryce Lampe
3427e6115f More renames 2024-03-07 13:51:35 -08:00
Bryce Lampe
10f6ae35a6 Rename xyz -> docker-native 2024-03-07 12:53:12 -08:00
Bryce Lampe
0d9ce7c53c Initial commit 2024-03-07 11:17:15 -08:00