Initial provider implementation (#18)
This brings over the initial buildx prototype from pulumi/pulumi-docker and fixes various build and release issues.
This commit is contained in:
72
sdk/dotnet/Config/Config.cs
generated
Normal file
72
sdk/dotnet/Config/Config.cs
generated
Normal file
@@ -0,0 +1,72 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Immutable;
|
||||
|
||||
namespace Pulumi.DockerBuild
|
||||
{
|
||||
public static class Config
|
||||
{
|
||||
[global::System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "IDE1006", Justification =
|
||||
"Double underscore prefix used to avoid conflicts with variable names.")]
|
||||
private sealed class __Value<T>
|
||||
{
|
||||
private readonly Func<T> _getter;
|
||||
private T _value = default!;
|
||||
private bool _set;
|
||||
|
||||
public __Value(Func<T> getter)
|
||||
{
|
||||
_getter = getter;
|
||||
}
|
||||
|
||||
public T Get() => _set ? _value : _getter();
|
||||
|
||||
public void Set(T value)
|
||||
{
|
||||
_value = value;
|
||||
_set = true;
|
||||
}
|
||||
}
|
||||
|
||||
private static readonly global::Pulumi.Config __config = new global::Pulumi.Config("docker-build");
|
||||
|
||||
private static readonly __Value<string?> _host = new __Value<string?>(() => __config.Get("host") ?? Utilities.GetEnv("DOCKER_HOST") ?? "");
|
||||
/// <summary>
|
||||
/// The build daemon's address.
|
||||
/// </summary>
|
||||
public static string? Host
|
||||
{
|
||||
get => _host.Get();
|
||||
set => _host.Set(value);
|
||||
}
|
||||
|
||||
private static readonly __Value<ImmutableArray<Types.Registry>> _registries = new __Value<ImmutableArray<Types.Registry>>(() => __config.GetObject<ImmutableArray<Types.Registry>>("registries"));
|
||||
public static ImmutableArray<Types.Registry> Registries
|
||||
{
|
||||
get => _registries.Get();
|
||||
set => _registries.Set(value);
|
||||
}
|
||||
|
||||
public static class Types
|
||||
{
|
||||
|
||||
public class Registry
|
||||
{
|
||||
/// <summary>
|
||||
/// The registry's address (e.g. "docker.io").
|
||||
/// </summary>
|
||||
public string Address { get; set; }
|
||||
/// <summary>
|
||||
/// Password or token for the registry.
|
||||
/// </summary>
|
||||
public string? Password { get; set; } = null!;
|
||||
/// <summary>
|
||||
/// Username for the registry.
|
||||
/// </summary>
|
||||
public string? Username { get; set; } = null!;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
1
sdk/dotnet/Config/README.md
generated
Normal file
1
sdk/dotnet/Config/README.md
generated
Normal file
@@ -0,0 +1 @@
|
||||
A Pulumi provider for building modern Docker images with buildx and BuildKit.
|
||||
173
sdk/dotnet/Enums.cs
generated
Normal file
173
sdk/dotnet/Enums.cs
generated
Normal file
@@ -0,0 +1,173 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.ComponentModel;
|
||||
using Pulumi;
|
||||
|
||||
namespace Pulumi.DockerBuild
|
||||
{
|
||||
[EnumType]
|
||||
public readonly struct CacheMode : IEquatable<CacheMode>
|
||||
{
|
||||
private readonly string _value;
|
||||
|
||||
private CacheMode(string value)
|
||||
{
|
||||
_value = value ?? throw new ArgumentNullException(nameof(value));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Only layers that are exported into the resulting image are cached.
|
||||
/// </summary>
|
||||
public static CacheMode Min { get; } = new CacheMode("min");
|
||||
/// <summary>
|
||||
/// All layers are cached, even those of intermediate steps.
|
||||
/// </summary>
|
||||
public static CacheMode Max { get; } = new CacheMode("max");
|
||||
|
||||
public static bool operator ==(CacheMode left, CacheMode right) => left.Equals(right);
|
||||
public static bool operator !=(CacheMode left, CacheMode right) => !left.Equals(right);
|
||||
|
||||
public static explicit operator string(CacheMode value) => value._value;
|
||||
|
||||
[EditorBrowsable(EditorBrowsableState.Never)]
|
||||
public override bool Equals(object? obj) => obj is CacheMode other && Equals(other);
|
||||
public bool Equals(CacheMode other) => string.Equals(_value, other._value, StringComparison.Ordinal);
|
||||
|
||||
[EditorBrowsable(EditorBrowsableState.Never)]
|
||||
public override int GetHashCode() => _value?.GetHashCode() ?? 0;
|
||||
|
||||
public override string ToString() => _value;
|
||||
}
|
||||
|
||||
[EnumType]
|
||||
public readonly struct CompressionType : IEquatable<CompressionType>
|
||||
{
|
||||
private readonly string _value;
|
||||
|
||||
private CompressionType(string value)
|
||||
{
|
||||
_value = value ?? throw new ArgumentNullException(nameof(value));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Use `gzip` for compression.
|
||||
/// </summary>
|
||||
public static CompressionType Gzip { get; } = new CompressionType("gzip");
|
||||
/// <summary>
|
||||
/// Use `estargz` for compression.
|
||||
/// </summary>
|
||||
public static CompressionType Estargz { get; } = new CompressionType("estargz");
|
||||
/// <summary>
|
||||
/// Use `zstd` for compression.
|
||||
/// </summary>
|
||||
public static CompressionType Zstd { get; } = new CompressionType("zstd");
|
||||
|
||||
public static bool operator ==(CompressionType left, CompressionType right) => left.Equals(right);
|
||||
public static bool operator !=(CompressionType left, CompressionType right) => !left.Equals(right);
|
||||
|
||||
public static explicit operator string(CompressionType value) => value._value;
|
||||
|
||||
[EditorBrowsable(EditorBrowsableState.Never)]
|
||||
public override bool Equals(object? obj) => obj is CompressionType other && Equals(other);
|
||||
public bool Equals(CompressionType other) => string.Equals(_value, other._value, StringComparison.Ordinal);
|
||||
|
||||
[EditorBrowsable(EditorBrowsableState.Never)]
|
||||
public override int GetHashCode() => _value?.GetHashCode() ?? 0;
|
||||
|
||||
public override string ToString() => _value;
|
||||
}
|
||||
|
||||
[EnumType]
|
||||
public readonly struct NetworkMode : IEquatable<NetworkMode>
|
||||
{
|
||||
private readonly string _value;
|
||||
|
||||
private NetworkMode(string value)
|
||||
{
|
||||
_value = value ?? throw new ArgumentNullException(nameof(value));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// The default sandbox network mode.
|
||||
/// </summary>
|
||||
public static NetworkMode @Default { get; } = new NetworkMode("default");
|
||||
/// <summary>
|
||||
/// Host network mode.
|
||||
/// </summary>
|
||||
public static NetworkMode Host { get; } = new NetworkMode("host");
|
||||
/// <summary>
|
||||
/// Disable network access.
|
||||
/// </summary>
|
||||
public static NetworkMode None { get; } = new NetworkMode("none");
|
||||
|
||||
public static bool operator ==(NetworkMode left, NetworkMode right) => left.Equals(right);
|
||||
public static bool operator !=(NetworkMode left, NetworkMode right) => !left.Equals(right);
|
||||
|
||||
public static explicit operator string(NetworkMode value) => value._value;
|
||||
|
||||
[EditorBrowsable(EditorBrowsableState.Never)]
|
||||
public override bool Equals(object? obj) => obj is NetworkMode other && Equals(other);
|
||||
public bool Equals(NetworkMode other) => string.Equals(_value, other._value, StringComparison.Ordinal);
|
||||
|
||||
[EditorBrowsable(EditorBrowsableState.Never)]
|
||||
public override int GetHashCode() => _value?.GetHashCode() ?? 0;
|
||||
|
||||
public override string ToString() => _value;
|
||||
}
|
||||
|
||||
[EnumType]
|
||||
public readonly struct Platform : IEquatable<Platform>
|
||||
{
|
||||
private readonly string _value;
|
||||
|
||||
private Platform(string value)
|
||||
{
|
||||
_value = value ?? throw new ArgumentNullException(nameof(value));
|
||||
}
|
||||
|
||||
public static Platform Darwin_386 { get; } = new Platform("darwin/386");
|
||||
public static Platform Darwin_amd64 { get; } = new Platform("darwin/amd64");
|
||||
public static Platform Darwin_arm { get; } = new Platform("darwin/arm");
|
||||
public static Platform Darwin_arm64 { get; } = new Platform("darwin/arm64");
|
||||
public static Platform Dragonfly_amd64 { get; } = new Platform("dragonfly/amd64");
|
||||
public static Platform Freebsd_386 { get; } = new Platform("freebsd/386");
|
||||
public static Platform Freebsd_amd64 { get; } = new Platform("freebsd/amd64");
|
||||
public static Platform Freebsd_arm { get; } = new Platform("freebsd/arm");
|
||||
public static Platform Linux_386 { get; } = new Platform("linux/386");
|
||||
public static Platform Linux_amd64 { get; } = new Platform("linux/amd64");
|
||||
public static Platform Linux_arm { get; } = new Platform("linux/arm");
|
||||
public static Platform Linux_arm64 { get; } = new Platform("linux/arm64");
|
||||
public static Platform Linux_mips64 { get; } = new Platform("linux/mips64");
|
||||
public static Platform Linux_mips64le { get; } = new Platform("linux/mips64le");
|
||||
public static Platform Linux_ppc64le { get; } = new Platform("linux/ppc64le");
|
||||
public static Platform Linux_riscv64 { get; } = new Platform("linux/riscv64");
|
||||
public static Platform Linux_s390x { get; } = new Platform("linux/s390x");
|
||||
public static Platform Netbsd_386 { get; } = new Platform("netbsd/386");
|
||||
public static Platform Netbsd_amd64 { get; } = new Platform("netbsd/amd64");
|
||||
public static Platform Netbsd_arm { get; } = new Platform("netbsd/arm");
|
||||
public static Platform Openbsd_386 { get; } = new Platform("openbsd/386");
|
||||
public static Platform Openbsd_amd64 { get; } = new Platform("openbsd/amd64");
|
||||
public static Platform Openbsd_arm { get; } = new Platform("openbsd/arm");
|
||||
public static Platform Plan9_386 { get; } = new Platform("plan9/386");
|
||||
public static Platform Plan9_amd64 { get; } = new Platform("plan9/amd64");
|
||||
public static Platform Solaris_amd64 { get; } = new Platform("solaris/amd64");
|
||||
public static Platform Windows_386 { get; } = new Platform("windows/386");
|
||||
public static Platform Windows_amd64 { get; } = new Platform("windows/amd64");
|
||||
|
||||
public static bool operator ==(Platform left, Platform right) => left.Equals(right);
|
||||
public static bool operator !=(Platform left, Platform right) => !left.Equals(right);
|
||||
|
||||
public static explicit operator string(Platform value) => value._value;
|
||||
|
||||
[EditorBrowsable(EditorBrowsableState.Never)]
|
||||
public override bool Equals(object? obj) => obj is Platform other && Equals(other);
|
||||
public bool Equals(Platform other) => string.Equals(_value, other._value, StringComparison.Ordinal);
|
||||
|
||||
[EditorBrowsable(EditorBrowsableState.Never)]
|
||||
public override int GetHashCode() => _value?.GetHashCode() ?? 0;
|
||||
|
||||
public override string ToString() => _value;
|
||||
}
|
||||
}
|
||||
1120
sdk/dotnet/Image.cs
generated
Normal file
1120
sdk/dotnet/Image.cs
generated
Normal file
File diff suppressed because it is too large
Load Diff
259
sdk/dotnet/Index.cs
generated
Normal file
259
sdk/dotnet/Index.cs
generated
Normal file
@@ -0,0 +1,259 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild
|
||||
{
|
||||
/// <summary>
|
||||
/// A wrapper around `docker buildx imagetools create` to create an index
|
||||
/// (or manifest list) referencing one or more existing images.
|
||||
///
|
||||
/// In most cases you do not need an `Index` to build a multi-platform
|
||||
/// image -- specifying multiple platforms on the `Image` will handle this
|
||||
/// for you automatically.
|
||||
///
|
||||
/// However, as of April 2024, building multi-platform images _with
|
||||
/// caching_ will only export a cache for one platform at a time (see [this
|
||||
/// discussion](https://github.com/docker/buildx/discussions/1382) for more
|
||||
/// details).
|
||||
///
|
||||
/// Therefore this resource can be helpful if you are building
|
||||
/// multi-platform images with caching: each platform can be built and
|
||||
/// cached separately, and an `Index` can join them all together. An
|
||||
/// example of this is shown below.
|
||||
///
|
||||
/// This resource creates an OCI image index or a Docker manifest list
|
||||
/// depending on the media types of the source images.
|
||||
///
|
||||
/// ## Example Usage
|
||||
/// ### Multi-platform registry caching
|
||||
/// ```csharp
|
||||
/// using System.Collections.Generic;
|
||||
/// using System.Linq;
|
||||
/// using Pulumi;
|
||||
/// using DockerBuild = Pulumi.DockerBuild;
|
||||
///
|
||||
/// return await Deployment.RunAsync(() =>
|
||||
/// {
|
||||
/// var amd64 = new DockerBuild.Image("amd64", new()
|
||||
/// {
|
||||
/// CacheFrom = new[]
|
||||
/// {
|
||||
/// new DockerBuild.Inputs.CacheFromArgs
|
||||
/// {
|
||||
/// Registry = new DockerBuild.Inputs.CacheFromRegistryArgs
|
||||
/// {
|
||||
/// Ref = "docker.io/pulumi/pulumi:cache-amd64",
|
||||
/// },
|
||||
/// },
|
||||
/// },
|
||||
/// CacheTo = new[]
|
||||
/// {
|
||||
/// new DockerBuild.Inputs.CacheToArgs
|
||||
/// {
|
||||
/// Registry = new DockerBuild.Inputs.CacheToRegistryArgs
|
||||
/// {
|
||||
/// Mode = DockerBuild.CacheMode.Max,
|
||||
/// Ref = "docker.io/pulumi/pulumi:cache-amd64",
|
||||
/// },
|
||||
/// },
|
||||
/// },
|
||||
/// Context = new DockerBuild.Inputs.BuildContextArgs
|
||||
/// {
|
||||
/// Location = "app",
|
||||
/// },
|
||||
/// Platforms = new[]
|
||||
/// {
|
||||
/// DockerBuild.Platform.Linux_amd64,
|
||||
/// },
|
||||
/// Tags = new[]
|
||||
/// {
|
||||
/// "docker.io/pulumi/pulumi:3.107.0-amd64",
|
||||
/// },
|
||||
/// });
|
||||
///
|
||||
/// var arm64 = new DockerBuild.Image("arm64", new()
|
||||
/// {
|
||||
/// CacheFrom = new[]
|
||||
/// {
|
||||
/// new DockerBuild.Inputs.CacheFromArgs
|
||||
/// {
|
||||
/// Registry = new DockerBuild.Inputs.CacheFromRegistryArgs
|
||||
/// {
|
||||
/// Ref = "docker.io/pulumi/pulumi:cache-arm64",
|
||||
/// },
|
||||
/// },
|
||||
/// },
|
||||
/// CacheTo = new[]
|
||||
/// {
|
||||
/// new DockerBuild.Inputs.CacheToArgs
|
||||
/// {
|
||||
/// Registry = new DockerBuild.Inputs.CacheToRegistryArgs
|
||||
/// {
|
||||
/// Mode = DockerBuild.CacheMode.Max,
|
||||
/// Ref = "docker.io/pulumi/pulumi:cache-arm64",
|
||||
/// },
|
||||
/// },
|
||||
/// },
|
||||
/// Context = new DockerBuild.Inputs.BuildContextArgs
|
||||
/// {
|
||||
/// Location = "app",
|
||||
/// },
|
||||
/// Platforms = new[]
|
||||
/// {
|
||||
/// DockerBuild.Platform.Linux_arm64,
|
||||
/// },
|
||||
/// Tags = new[]
|
||||
/// {
|
||||
/// "docker.io/pulumi/pulumi:3.107.0-arm64",
|
||||
/// },
|
||||
/// });
|
||||
///
|
||||
/// var index = new DockerBuild.Index("index", new()
|
||||
/// {
|
||||
/// Sources = new[]
|
||||
/// {
|
||||
/// amd64.Ref,
|
||||
/// arm64.Ref,
|
||||
/// },
|
||||
/// Tag = "docker.io/pulumi/pulumi:3.107.0",
|
||||
/// });
|
||||
///
|
||||
/// return new Dictionary<string, object?>
|
||||
/// {
|
||||
/// ["ref"] = index.Ref,
|
||||
/// };
|
||||
/// });
|
||||
///
|
||||
/// ```
|
||||
/// </summary>
|
||||
[DockerBuildResourceType("docker-build:index:Index")]
|
||||
public partial class Index : global::Pulumi.CustomResource
|
||||
{
|
||||
/// <summary>
|
||||
/// If true, push the index to the target registry.
|
||||
///
|
||||
/// Defaults to `true`.
|
||||
/// </summary>
|
||||
[Output("push")]
|
||||
public Output<bool?> Push { get; private set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// The pushed tag with digest.
|
||||
///
|
||||
/// Identical to the tag if the index was not pushed.
|
||||
/// </summary>
|
||||
[Output("ref")]
|
||||
public Output<string> Ref { get; private set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// Authentication for the registry where the tagged index will be pushed.
|
||||
///
|
||||
/// Credentials can also be included with the provider's configuration.
|
||||
/// </summary>
|
||||
[Output("registry")]
|
||||
public Output<Outputs.Registry?> Registry { get; private set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// Existing images to include in the index.
|
||||
/// </summary>
|
||||
[Output("sources")]
|
||||
public Output<ImmutableArray<string>> Sources { get; private set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// The tag to apply to the index.
|
||||
/// </summary>
|
||||
[Output("tag")]
|
||||
public Output<string> Tag { get; private set; } = null!;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Create a Index resource with the given unique name, arguments, and options.
|
||||
/// </summary>
|
||||
///
|
||||
/// <param name="name">The unique name of the resource</param>
|
||||
/// <param name="args">The arguments used to populate this resource's properties</param>
|
||||
/// <param name="options">A bag of options that control this resource's behavior</param>
|
||||
public Index(string name, IndexArgs args, CustomResourceOptions? options = null)
|
||||
: base("docker-build:index:Index", name, args ?? new IndexArgs(), MakeResourceOptions(options, ""))
|
||||
{
|
||||
}
|
||||
|
||||
private Index(string name, Input<string> id, CustomResourceOptions? options = null)
|
||||
: base("docker-build:index:Index", name, null, MakeResourceOptions(options, id))
|
||||
{
|
||||
}
|
||||
|
||||
private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input<string>? id)
|
||||
{
|
||||
var defaultOptions = new CustomResourceOptions
|
||||
{
|
||||
Version = Utilities.Version,
|
||||
};
|
||||
var merged = CustomResourceOptions.Merge(defaultOptions, options);
|
||||
// Override the ID if one was specified for consistency with other language SDKs.
|
||||
merged.Id = id ?? merged.Id;
|
||||
return merged;
|
||||
}
|
||||
/// <summary>
|
||||
/// Get an existing Index resource's state with the given name, ID, and optional extra
|
||||
/// properties used to qualify the lookup.
|
||||
/// </summary>
|
||||
///
|
||||
/// <param name="name">The unique name of the resulting resource.</param>
|
||||
/// <param name="id">The unique provider ID of the resource to lookup.</param>
|
||||
/// <param name="options">A bag of options that control this resource's behavior</param>
|
||||
public static Index Get(string name, Input<string> id, CustomResourceOptions? options = null)
|
||||
{
|
||||
return new Index(name, id, options);
|
||||
}
|
||||
}
|
||||
|
||||
public sealed class IndexArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// If true, push the index to the target registry.
|
||||
///
|
||||
/// Defaults to `true`.
|
||||
/// </summary>
|
||||
[Input("push")]
|
||||
public Input<bool>? Push { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Authentication for the registry where the tagged index will be pushed.
|
||||
///
|
||||
/// Credentials can also be included with the provider's configuration.
|
||||
/// </summary>
|
||||
[Input("registry")]
|
||||
public Input<Inputs.RegistryArgs>? Registry { get; set; }
|
||||
|
||||
[Input("sources", required: true)]
|
||||
private InputList<string>? _sources;
|
||||
|
||||
/// <summary>
|
||||
/// Existing images to include in the index.
|
||||
/// </summary>
|
||||
public InputList<string> Sources
|
||||
{
|
||||
get => _sources ?? (_sources = new InputList<string>());
|
||||
set => _sources = value;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// The tag to apply to the index.
|
||||
/// </summary>
|
||||
[Input("tag", required: true)]
|
||||
public Input<string> Tag { get; set; } = null!;
|
||||
|
||||
public IndexArgs()
|
||||
{
|
||||
Push = true;
|
||||
}
|
||||
public static new IndexArgs Empty => new IndexArgs();
|
||||
}
|
||||
}
|
||||
50
sdk/dotnet/Inputs/BuildContextArgs.cs
generated
Normal file
50
sdk/dotnet/Inputs/BuildContextArgs.cs
generated
Normal file
@@ -0,0 +1,50 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class BuildContextArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// Resources to use for build context.
|
||||
///
|
||||
/// The location can be:
|
||||
/// * A relative or absolute path to a local directory (`.`, `./app`,
|
||||
/// `/app`, etc.).
|
||||
/// * A remote URL of a Git repository, tarball, or plain text file
|
||||
/// (`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`,
|
||||
/// etc.).
|
||||
/// </summary>
|
||||
[Input("location", required: true)]
|
||||
public Input<string> Location { get; set; } = null!;
|
||||
|
||||
[Input("named")]
|
||||
private InputMap<Inputs.ContextArgs>? _named;
|
||||
|
||||
/// <summary>
|
||||
/// Additional build contexts to use.
|
||||
///
|
||||
/// These contexts are accessed with `FROM name` or `--from=name`
|
||||
/// statements when using Dockerfile 1.4+ syntax.
|
||||
///
|
||||
/// Values can be local paths, HTTP URLs, or `docker-image://` images.
|
||||
/// </summary>
|
||||
public InputMap<Inputs.ContextArgs> Named
|
||||
{
|
||||
get => _named ?? (_named = new InputMap<Inputs.ContextArgs>());
|
||||
set => _named = value;
|
||||
}
|
||||
|
||||
public BuildContextArgs()
|
||||
{
|
||||
}
|
||||
public static new BuildContextArgs Empty => new BuildContextArgs();
|
||||
}
|
||||
}
|
||||
31
sdk/dotnet/Inputs/BuilderConfigArgs.cs
generated
Normal file
31
sdk/dotnet/Inputs/BuilderConfigArgs.cs
generated
Normal file
@@ -0,0 +1,31 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class BuilderConfigArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// Name of an existing buildx builder to use.
|
||||
///
|
||||
/// Only `docker-container`, `kubernetes`, or `remote` drivers are
|
||||
/// supported. The legacy `docker` driver is not supported.
|
||||
///
|
||||
/// Equivalent to Docker's `--builder` flag.
|
||||
/// </summary>
|
||||
[Input("name")]
|
||||
public Input<string>? Name { get; set; }
|
||||
|
||||
public BuilderConfigArgs()
|
||||
{
|
||||
}
|
||||
public static new BuilderConfigArgs Empty => new BuilderConfigArgs();
|
||||
}
|
||||
}
|
||||
67
sdk/dotnet/Inputs/CacheFromArgs.cs
generated
Normal file
67
sdk/dotnet/Inputs/CacheFromArgs.cs
generated
Normal file
@@ -0,0 +1,67 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class CacheFromArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// Upload build caches to Azure's blob storage service.
|
||||
/// </summary>
|
||||
[Input("azblob")]
|
||||
public Input<Inputs.CacheFromAzureBlobArgs>? Azblob { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// When `true` this entry will be excluded. Defaults to `false`.
|
||||
/// </summary>
|
||||
[Input("disabled")]
|
||||
public Input<bool>? Disabled { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Recommended for use with GitHub Actions workflows.
|
||||
///
|
||||
/// An action like `crazy-max/ghaction-github-runtime` is recommended to
|
||||
/// expose appropriate credentials to your GitHub workflow.
|
||||
/// </summary>
|
||||
[Input("gha")]
|
||||
public Input<Inputs.CacheFromGitHubActionsArgs>? Gha { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// A simple backend which caches images on your local filesystem.
|
||||
/// </summary>
|
||||
[Input("local")]
|
||||
public Input<Inputs.CacheFromLocalArgs>? Local { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// A raw string as you would provide it to the Docker CLI (e.g.,
|
||||
/// `type=inline`).
|
||||
/// </summary>
|
||||
[Input("raw")]
|
||||
public Input<string>? Raw { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Upload build caches to remote registries.
|
||||
/// </summary>
|
||||
[Input("registry")]
|
||||
public Input<Inputs.CacheFromRegistryArgs>? Registry { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Upload build caches to AWS S3 or an S3-compatible services such as
|
||||
/// MinIO.
|
||||
/// </summary>
|
||||
[Input("s3")]
|
||||
public Input<Inputs.CacheFromS3Args>? S3 { get; set; }
|
||||
|
||||
public CacheFromArgs()
|
||||
{
|
||||
}
|
||||
public static new CacheFromArgs Empty => new CacheFromArgs();
|
||||
}
|
||||
}
|
||||
48
sdk/dotnet/Inputs/CacheFromAzureBlobArgs.cs
generated
Normal file
48
sdk/dotnet/Inputs/CacheFromAzureBlobArgs.cs
generated
Normal file
@@ -0,0 +1,48 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class CacheFromAzureBlobArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// Base URL of the storage account.
|
||||
/// </summary>
|
||||
[Input("accountUrl")]
|
||||
public Input<string>? AccountUrl { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The name of the cache image.
|
||||
/// </summary>
|
||||
[Input("name", required: true)]
|
||||
public Input<string> Name { get; set; } = null!;
|
||||
|
||||
[Input("secretAccessKey")]
|
||||
private Input<string>? _secretAccessKey;
|
||||
|
||||
/// <summary>
|
||||
/// Blob storage account key.
|
||||
/// </summary>
|
||||
public Input<string>? SecretAccessKey
|
||||
{
|
||||
get => _secretAccessKey;
|
||||
set
|
||||
{
|
||||
var emptySecret = Output.CreateSecret(0);
|
||||
_secretAccessKey = Output.Tuple<Input<string>?, int>(value, emptySecret).Apply(t => t.Item1);
|
||||
}
|
||||
}
|
||||
|
||||
public CacheFromAzureBlobArgs()
|
||||
{
|
||||
}
|
||||
public static new CacheFromAzureBlobArgs Empty => new CacheFromAzureBlobArgs();
|
||||
}
|
||||
}
|
||||
63
sdk/dotnet/Inputs/CacheFromGitHubActionsArgs.cs
generated
Normal file
63
sdk/dotnet/Inputs/CacheFromGitHubActionsArgs.cs
generated
Normal file
@@ -0,0 +1,63 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class CacheFromGitHubActionsArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// The scope to use for cache keys. Defaults to `buildkit`.
|
||||
///
|
||||
/// This should be set if building and caching multiple images in one
|
||||
/// workflow, otherwise caches will overwrite each other.
|
||||
/// </summary>
|
||||
[Input("scope")]
|
||||
public Input<string>? Scope { get; set; }
|
||||
|
||||
[Input("token")]
|
||||
private Input<string>? _token;
|
||||
|
||||
/// <summary>
|
||||
/// The GitHub Actions token to use. This is not a personal access tokens
|
||||
/// and is typically generated automatically as part of each job.
|
||||
///
|
||||
/// Defaults to `$ACTIONS_RUNTIME_TOKEN`, although a separate action like
|
||||
/// `crazy-max/ghaction-github-runtime` is recommended to expose this
|
||||
/// environment variable to your jobs.
|
||||
/// </summary>
|
||||
public Input<string>? Token
|
||||
{
|
||||
get => _token;
|
||||
set
|
||||
{
|
||||
var emptySecret = Output.CreateSecret(0);
|
||||
_token = Output.Tuple<Input<string>?, int>(value, emptySecret).Apply(t => t.Item1);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// The cache server URL to use for artifacts.
|
||||
///
|
||||
/// Defaults to `$ACTIONS_RUNTIME_URL`, although a separate action like
|
||||
/// `crazy-max/ghaction-github-runtime` is recommended to expose this
|
||||
/// environment variable to your jobs.
|
||||
/// </summary>
|
||||
[Input("url")]
|
||||
public Input<string>? Url { get; set; }
|
||||
|
||||
public CacheFromGitHubActionsArgs()
|
||||
{
|
||||
Scope = Utilities.GetEnv("buildkit") ?? "";
|
||||
Token = Utilities.GetEnv("ACTIONS_RUNTIME_TOKEN") ?? "";
|
||||
Url = Utilities.GetEnv("ACTIONS_RUNTIME_URL") ?? "";
|
||||
}
|
||||
public static new CacheFromGitHubActionsArgs Empty => new CacheFromGitHubActionsArgs();
|
||||
}
|
||||
}
|
||||
32
sdk/dotnet/Inputs/CacheFromLocalArgs.cs
generated
Normal file
32
sdk/dotnet/Inputs/CacheFromLocalArgs.cs
generated
Normal file
@@ -0,0 +1,32 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class CacheFromLocalArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// Digest of manifest to import.
|
||||
/// </summary>
|
||||
[Input("digest")]
|
||||
public Input<string>? Digest { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Path of the local directory where cache gets imported from.
|
||||
/// </summary>
|
||||
[Input("src", required: true)]
|
||||
public Input<string> Src { get; set; } = null!;
|
||||
|
||||
public CacheFromLocalArgs()
|
||||
{
|
||||
}
|
||||
public static new CacheFromLocalArgs Empty => new CacheFromLocalArgs();
|
||||
}
|
||||
}
|
||||
26
sdk/dotnet/Inputs/CacheFromRegistryArgs.cs
generated
Normal file
26
sdk/dotnet/Inputs/CacheFromRegistryArgs.cs
generated
Normal file
@@ -0,0 +1,26 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class CacheFromRegistryArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// Fully qualified name of the cache image to import.
|
||||
/// </summary>
|
||||
[Input("ref", required: true)]
|
||||
public Input<string> Ref { get; set; } = null!;
|
||||
|
||||
public CacheFromRegistryArgs()
|
||||
{
|
||||
}
|
||||
public static new CacheFromRegistryArgs Empty => new CacheFromRegistryArgs();
|
||||
}
|
||||
}
|
||||
104
sdk/dotnet/Inputs/CacheFromS3Args.cs
generated
Normal file
104
sdk/dotnet/Inputs/CacheFromS3Args.cs
generated
Normal file
@@ -0,0 +1,104 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class CacheFromS3Args : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// Defaults to `$AWS_ACCESS_KEY_ID`.
|
||||
/// </summary>
|
||||
[Input("accessKeyId")]
|
||||
public Input<string>? AccessKeyId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Prefix to prepend to blob filenames.
|
||||
/// </summary>
|
||||
[Input("blobsPrefix")]
|
||||
public Input<string>? BlobsPrefix { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Name of the S3 bucket.
|
||||
/// </summary>
|
||||
[Input("bucket", required: true)]
|
||||
public Input<string> Bucket { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// Endpoint of the S3 bucket.
|
||||
/// </summary>
|
||||
[Input("endpointUrl")]
|
||||
public Input<string>? EndpointUrl { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Prefix to prepend on manifest filenames.
|
||||
/// </summary>
|
||||
[Input("manifestsPrefix")]
|
||||
public Input<string>? ManifestsPrefix { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Name of the cache image.
|
||||
/// </summary>
|
||||
[Input("name")]
|
||||
public Input<string>? Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The geographic location of the bucket. Defaults to `$AWS_REGION`.
|
||||
/// </summary>
|
||||
[Input("region", required: true)]
|
||||
public Input<string> Region { get; set; } = null!;
|
||||
|
||||
[Input("secretAccessKey")]
|
||||
private Input<string>? _secretAccessKey;
|
||||
|
||||
/// <summary>
|
||||
/// Defaults to `$AWS_SECRET_ACCESS_KEY`.
|
||||
/// </summary>
|
||||
public Input<string>? SecretAccessKey
|
||||
{
|
||||
get => _secretAccessKey;
|
||||
set
|
||||
{
|
||||
var emptySecret = Output.CreateSecret(0);
|
||||
_secretAccessKey = Output.Tuple<Input<string>?, int>(value, emptySecret).Apply(t => t.Item1);
|
||||
}
|
||||
}
|
||||
|
||||
[Input("sessionToken")]
|
||||
private Input<string>? _sessionToken;
|
||||
|
||||
/// <summary>
|
||||
/// Defaults to `$AWS_SESSION_TOKEN`.
|
||||
/// </summary>
|
||||
public Input<string>? SessionToken
|
||||
{
|
||||
get => _sessionToken;
|
||||
set
|
||||
{
|
||||
var emptySecret = Output.CreateSecret(0);
|
||||
_sessionToken = Output.Tuple<Input<string>?, int>(value, emptySecret).Apply(t => t.Item1);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Uses `bucket` in the URL instead of hostname when `true`.
|
||||
/// </summary>
|
||||
[Input("usePathStyle")]
|
||||
public Input<bool>? UsePathStyle { get; set; }
|
||||
|
||||
public CacheFromS3Args()
|
||||
{
|
||||
AccessKeyId = Utilities.GetEnv("AWS_ACCESS_KEY_ID") ?? "";
|
||||
Region = Utilities.GetEnv("AWS_REGION") ?? "";
|
||||
SecretAccessKey = Utilities.GetEnv("AWS_SECRET_ACCESS_KEY") ?? "";
|
||||
SessionToken = Utilities.GetEnv("AWS_SESSION_TOKEN") ?? "";
|
||||
}
|
||||
public static new CacheFromS3Args Empty => new CacheFromS3Args();
|
||||
}
|
||||
}
|
||||
75
sdk/dotnet/Inputs/CacheToArgs.cs
generated
Normal file
75
sdk/dotnet/Inputs/CacheToArgs.cs
generated
Normal file
@@ -0,0 +1,75 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class CacheToArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// Push cache to Azure's blob storage service.
|
||||
/// </summary>
|
||||
[Input("azblob")]
|
||||
public Input<Inputs.CacheToAzureBlobArgs>? Azblob { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// When `true` this entry will be excluded. Defaults to `false`.
|
||||
/// </summary>
|
||||
[Input("disabled")]
|
||||
public Input<bool>? Disabled { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Recommended for use with GitHub Actions workflows.
|
||||
///
|
||||
/// An action like `crazy-max/ghaction-github-runtime` is recommended to
|
||||
/// expose appropriate credentials to your GitHub workflow.
|
||||
/// </summary>
|
||||
[Input("gha")]
|
||||
public Input<Inputs.CacheToGitHubActionsArgs>? Gha { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The inline cache storage backend is the simplest implementation to get
|
||||
/// started with, but it does not handle multi-stage builds. Consider the
|
||||
/// `registry` cache backend instead.
|
||||
/// </summary>
|
||||
[Input("inline")]
|
||||
public Input<Inputs.CacheToInlineArgs>? Inline { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// A simple backend which caches imagines on your local filesystem.
|
||||
/// </summary>
|
||||
[Input("local")]
|
||||
public Input<Inputs.CacheToLocalArgs>? Local { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// A raw string as you would provide it to the Docker CLI (e.g.,
|
||||
/// `type=inline`)
|
||||
/// </summary>
|
||||
[Input("raw")]
|
||||
public Input<string>? Raw { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Push caches to remote registries. Incompatible with the `docker` build
|
||||
/// driver.
|
||||
/// </summary>
|
||||
[Input("registry")]
|
||||
public Input<Inputs.CacheToRegistryArgs>? Registry { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Push cache to AWS S3 or S3-compatible services such as MinIO.
|
||||
/// </summary>
|
||||
[Input("s3")]
|
||||
public Input<Inputs.CacheToS3Args>? S3 { get; set; }
|
||||
|
||||
public CacheToArgs()
|
||||
{
|
||||
}
|
||||
public static new CacheToArgs Empty => new CacheToArgs();
|
||||
}
|
||||
}
|
||||
62
sdk/dotnet/Inputs/CacheToAzureBlobArgs.cs
generated
Normal file
62
sdk/dotnet/Inputs/CacheToAzureBlobArgs.cs
generated
Normal file
@@ -0,0 +1,62 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class CacheToAzureBlobArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// Base URL of the storage account.
|
||||
/// </summary>
|
||||
[Input("accountUrl")]
|
||||
public Input<string>? AccountUrl { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Ignore errors caused by failed cache exports.
|
||||
/// </summary>
|
||||
[Input("ignoreError")]
|
||||
public Input<bool>? IgnoreError { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The cache mode to use. Defaults to `min`.
|
||||
/// </summary>
|
||||
[Input("mode")]
|
||||
public Input<Pulumi.DockerBuild.CacheMode>? Mode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The name of the cache image.
|
||||
/// </summary>
|
||||
[Input("name", required: true)]
|
||||
public Input<string> Name { get; set; } = null!;
|
||||
|
||||
[Input("secretAccessKey")]
|
||||
private Input<string>? _secretAccessKey;
|
||||
|
||||
/// <summary>
|
||||
/// Blob storage account key.
|
||||
/// </summary>
|
||||
public Input<string>? SecretAccessKey
|
||||
{
|
||||
get => _secretAccessKey;
|
||||
set
|
||||
{
|
||||
var emptySecret = Output.CreateSecret(0);
|
||||
_secretAccessKey = Output.Tuple<Input<string>?, int>(value, emptySecret).Apply(t => t.Item1);
|
||||
}
|
||||
}
|
||||
|
||||
public CacheToAzureBlobArgs()
|
||||
{
|
||||
IgnoreError = false;
|
||||
Mode = Pulumi.DockerBuild.CacheMode.Min;
|
||||
}
|
||||
public static new CacheToAzureBlobArgs Empty => new CacheToAzureBlobArgs();
|
||||
}
|
||||
}
|
||||
77
sdk/dotnet/Inputs/CacheToGitHubActionsArgs.cs
generated
Normal file
77
sdk/dotnet/Inputs/CacheToGitHubActionsArgs.cs
generated
Normal file
@@ -0,0 +1,77 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class CacheToGitHubActionsArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// Ignore errors caused by failed cache exports.
|
||||
/// </summary>
|
||||
[Input("ignoreError")]
|
||||
public Input<bool>? IgnoreError { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The cache mode to use. Defaults to `min`.
|
||||
/// </summary>
|
||||
[Input("mode")]
|
||||
public Input<Pulumi.DockerBuild.CacheMode>? Mode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The scope to use for cache keys. Defaults to `buildkit`.
|
||||
///
|
||||
/// This should be set if building and caching multiple images in one
|
||||
/// workflow, otherwise caches will overwrite each other.
|
||||
/// </summary>
|
||||
[Input("scope")]
|
||||
public Input<string>? Scope { get; set; }
|
||||
|
||||
[Input("token")]
|
||||
private Input<string>? _token;
|
||||
|
||||
/// <summary>
|
||||
/// The GitHub Actions token to use. This is not a personal access tokens
|
||||
/// and is typically generated automatically as part of each job.
|
||||
///
|
||||
/// Defaults to `$ACTIONS_RUNTIME_TOKEN`, although a separate action like
|
||||
/// `crazy-max/ghaction-github-runtime` is recommended to expose this
|
||||
/// environment variable to your jobs.
|
||||
/// </summary>
|
||||
public Input<string>? Token
|
||||
{
|
||||
get => _token;
|
||||
set
|
||||
{
|
||||
var emptySecret = Output.CreateSecret(0);
|
||||
_token = Output.Tuple<Input<string>?, int>(value, emptySecret).Apply(t => t.Item1);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// The cache server URL to use for artifacts.
|
||||
///
|
||||
/// Defaults to `$ACTIONS_RUNTIME_URL`, although a separate action like
|
||||
/// `crazy-max/ghaction-github-runtime` is recommended to expose this
|
||||
/// environment variable to your jobs.
|
||||
/// </summary>
|
||||
[Input("url")]
|
||||
public Input<string>? Url { get; set; }
|
||||
|
||||
public CacheToGitHubActionsArgs()
|
||||
{
|
||||
IgnoreError = false;
|
||||
Mode = Pulumi.DockerBuild.CacheMode.Min;
|
||||
Scope = Utilities.GetEnv("buildkit") ?? "";
|
||||
Token = Utilities.GetEnv("ACTIONS_RUNTIME_TOKEN") ?? "";
|
||||
Url = Utilities.GetEnv("ACTIONS_RUNTIME_URL") ?? "";
|
||||
}
|
||||
public static new CacheToGitHubActionsArgs Empty => new CacheToGitHubActionsArgs();
|
||||
}
|
||||
}
|
||||
23
sdk/dotnet/Inputs/CacheToInlineArgs.cs
generated
Normal file
23
sdk/dotnet/Inputs/CacheToInlineArgs.cs
generated
Normal file
@@ -0,0 +1,23 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// Include an inline cache with the exported image.
|
||||
/// </summary>
|
||||
public sealed class CacheToInlineArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
public CacheToInlineArgs()
|
||||
{
|
||||
}
|
||||
public static new CacheToInlineArgs Empty => new CacheToInlineArgs();
|
||||
}
|
||||
}
|
||||
61
sdk/dotnet/Inputs/CacheToLocalArgs.cs
generated
Normal file
61
sdk/dotnet/Inputs/CacheToLocalArgs.cs
generated
Normal file
@@ -0,0 +1,61 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class CacheToLocalArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// The compression type to use.
|
||||
/// </summary>
|
||||
[Input("compression")]
|
||||
public Input<Pulumi.DockerBuild.CompressionType>? Compression { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Compression level from 0 to 22.
|
||||
/// </summary>
|
||||
[Input("compressionLevel")]
|
||||
public Input<int>? CompressionLevel { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Path of the local directory to export the cache.
|
||||
/// </summary>
|
||||
[Input("dest", required: true)]
|
||||
public Input<string> Dest { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// Forcefully apply compression.
|
||||
/// </summary>
|
||||
[Input("forceCompression")]
|
||||
public Input<bool>? ForceCompression { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Ignore errors caused by failed cache exports.
|
||||
/// </summary>
|
||||
[Input("ignoreError")]
|
||||
public Input<bool>? IgnoreError { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The cache mode to use. Defaults to `min`.
|
||||
/// </summary>
|
||||
[Input("mode")]
|
||||
public Input<Pulumi.DockerBuild.CacheMode>? Mode { get; set; }
|
||||
|
||||
public CacheToLocalArgs()
|
||||
{
|
||||
Compression = Pulumi.DockerBuild.CompressionType.Gzip;
|
||||
CompressionLevel = 0;
|
||||
ForceCompression = false;
|
||||
IgnoreError = false;
|
||||
Mode = Pulumi.DockerBuild.CacheMode.Min;
|
||||
}
|
||||
public static new CacheToLocalArgs Empty => new CacheToLocalArgs();
|
||||
}
|
||||
}
|
||||
82
sdk/dotnet/Inputs/CacheToRegistryArgs.cs
generated
Normal file
82
sdk/dotnet/Inputs/CacheToRegistryArgs.cs
generated
Normal file
@@ -0,0 +1,82 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class CacheToRegistryArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// The compression type to use.
|
||||
/// </summary>
|
||||
[Input("compression")]
|
||||
public Input<Pulumi.DockerBuild.CompressionType>? Compression { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Compression level from 0 to 22.
|
||||
/// </summary>
|
||||
[Input("compressionLevel")]
|
||||
public Input<int>? CompressionLevel { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Forcefully apply compression.
|
||||
/// </summary>
|
||||
[Input("forceCompression")]
|
||||
public Input<bool>? ForceCompression { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Ignore errors caused by failed cache exports.
|
||||
/// </summary>
|
||||
[Input("ignoreError")]
|
||||
public Input<bool>? IgnoreError { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Export cache manifest as an OCI-compatible image manifest instead of a
|
||||
/// manifest list. Requires `ociMediaTypes` to also be `true`.
|
||||
///
|
||||
/// Some registries like AWS ECR will not work with caching if this is
|
||||
/// `false`.
|
||||
///
|
||||
/// Defaults to `false` to match Docker's default behavior.
|
||||
/// </summary>
|
||||
[Input("imageManifest")]
|
||||
public Input<bool>? ImageManifest { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The cache mode to use. Defaults to `min`.
|
||||
/// </summary>
|
||||
[Input("mode")]
|
||||
public Input<Pulumi.DockerBuild.CacheMode>? Mode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Whether to use OCI media types in exported manifests. Defaults to
|
||||
/// `true`.
|
||||
/// </summary>
|
||||
[Input("ociMediaTypes")]
|
||||
public Input<bool>? OciMediaTypes { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Fully qualified name of the cache image to import.
|
||||
/// </summary>
|
||||
[Input("ref", required: true)]
|
||||
public Input<string> Ref { get; set; } = null!;
|
||||
|
||||
public CacheToRegistryArgs()
|
||||
{
|
||||
Compression = Pulumi.DockerBuild.CompressionType.Gzip;
|
||||
CompressionLevel = 0;
|
||||
ForceCompression = false;
|
||||
IgnoreError = false;
|
||||
ImageManifest = false;
|
||||
Mode = Pulumi.DockerBuild.CacheMode.Min;
|
||||
OciMediaTypes = true;
|
||||
}
|
||||
public static new CacheToRegistryArgs Empty => new CacheToRegistryArgs();
|
||||
}
|
||||
}
|
||||
118
sdk/dotnet/Inputs/CacheToS3Args.cs
generated
Normal file
118
sdk/dotnet/Inputs/CacheToS3Args.cs
generated
Normal file
@@ -0,0 +1,118 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class CacheToS3Args : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// Defaults to `$AWS_ACCESS_KEY_ID`.
|
||||
/// </summary>
|
||||
[Input("accessKeyId")]
|
||||
public Input<string>? AccessKeyId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Prefix to prepend to blob filenames.
|
||||
/// </summary>
|
||||
[Input("blobsPrefix")]
|
||||
public Input<string>? BlobsPrefix { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Name of the S3 bucket.
|
||||
/// </summary>
|
||||
[Input("bucket", required: true)]
|
||||
public Input<string> Bucket { get; set; } = null!;
|
||||
|
||||
/// <summary>
|
||||
/// Endpoint of the S3 bucket.
|
||||
/// </summary>
|
||||
[Input("endpointUrl")]
|
||||
public Input<string>? EndpointUrl { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Ignore errors caused by failed cache exports.
|
||||
/// </summary>
|
||||
[Input("ignoreError")]
|
||||
public Input<bool>? IgnoreError { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Prefix to prepend on manifest filenames.
|
||||
/// </summary>
|
||||
[Input("manifestsPrefix")]
|
||||
public Input<string>? ManifestsPrefix { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The cache mode to use. Defaults to `min`.
|
||||
/// </summary>
|
||||
[Input("mode")]
|
||||
public Input<Pulumi.DockerBuild.CacheMode>? Mode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Name of the cache image.
|
||||
/// </summary>
|
||||
[Input("name")]
|
||||
public Input<string>? Name { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The geographic location of the bucket. Defaults to `$AWS_REGION`.
|
||||
/// </summary>
|
||||
[Input("region", required: true)]
|
||||
public Input<string> Region { get; set; } = null!;
|
||||
|
||||
[Input("secretAccessKey")]
|
||||
private Input<string>? _secretAccessKey;
|
||||
|
||||
/// <summary>
|
||||
/// Defaults to `$AWS_SECRET_ACCESS_KEY`.
|
||||
/// </summary>
|
||||
public Input<string>? SecretAccessKey
|
||||
{
|
||||
get => _secretAccessKey;
|
||||
set
|
||||
{
|
||||
var emptySecret = Output.CreateSecret(0);
|
||||
_secretAccessKey = Output.Tuple<Input<string>?, int>(value, emptySecret).Apply(t => t.Item1);
|
||||
}
|
||||
}
|
||||
|
||||
[Input("sessionToken")]
|
||||
private Input<string>? _sessionToken;
|
||||
|
||||
/// <summary>
|
||||
/// Defaults to `$AWS_SESSION_TOKEN`.
|
||||
/// </summary>
|
||||
public Input<string>? SessionToken
|
||||
{
|
||||
get => _sessionToken;
|
||||
set
|
||||
{
|
||||
var emptySecret = Output.CreateSecret(0);
|
||||
_sessionToken = Output.Tuple<Input<string>?, int>(value, emptySecret).Apply(t => t.Item1);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Uses `bucket` in the URL instead of hostname when `true`.
|
||||
/// </summary>
|
||||
[Input("usePathStyle")]
|
||||
public Input<bool>? UsePathStyle { get; set; }
|
||||
|
||||
public CacheToS3Args()
|
||||
{
|
||||
AccessKeyId = Utilities.GetEnv("AWS_ACCESS_KEY_ID") ?? "";
|
||||
IgnoreError = false;
|
||||
Mode = Pulumi.DockerBuild.CacheMode.Min;
|
||||
Region = Utilities.GetEnv("AWS_REGION") ?? "";
|
||||
SecretAccessKey = Utilities.GetEnv("AWS_SECRET_ACCESS_KEY") ?? "";
|
||||
SessionToken = Utilities.GetEnv("AWS_SESSION_TOKEN") ?? "";
|
||||
}
|
||||
public static new CacheToS3Args Empty => new CacheToS3Args();
|
||||
}
|
||||
}
|
||||
33
sdk/dotnet/Inputs/ContextArgs.cs
generated
Normal file
33
sdk/dotnet/Inputs/ContextArgs.cs
generated
Normal file
@@ -0,0 +1,33 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class ContextArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// Resources to use for build context.
|
||||
///
|
||||
/// The location can be:
|
||||
/// * A relative or absolute path to a local directory (`.`, `./app`,
|
||||
/// `/app`, etc.).
|
||||
/// * A remote URL of a Git repository, tarball, or plain text file
|
||||
/// (`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`,
|
||||
/// etc.).
|
||||
/// </summary>
|
||||
[Input("location", required: true)]
|
||||
public Input<string> Location { get; set; } = null!;
|
||||
|
||||
public ContextArgs()
|
||||
{
|
||||
}
|
||||
public static new ContextArgs Empty => new ContextArgs();
|
||||
}
|
||||
}
|
||||
42
sdk/dotnet/Inputs/DockerfileArgs.cs
generated
Normal file
42
sdk/dotnet/Inputs/DockerfileArgs.cs
generated
Normal file
@@ -0,0 +1,42 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class DockerfileArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// Raw Dockerfile contents.
|
||||
///
|
||||
/// Conflicts with `location`.
|
||||
///
|
||||
/// Equivalent to invoking Docker with `-f -`.
|
||||
/// </summary>
|
||||
[Input("inline")]
|
||||
public Input<string>? Inline { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Location of the Dockerfile to use.
|
||||
///
|
||||
/// Can be a relative or absolute path to a local file, or a remote URL.
|
||||
///
|
||||
/// Defaults to `${context.location}/Dockerfile` if context is on-disk.
|
||||
///
|
||||
/// Conflicts with `inline`.
|
||||
/// </summary>
|
||||
[Input("location")]
|
||||
public Input<string>? Location { get; set; }
|
||||
|
||||
public DockerfileArgs()
|
||||
{
|
||||
}
|
||||
public static new DockerfileArgs Empty => new DockerfileArgs();
|
||||
}
|
||||
}
|
||||
76
sdk/dotnet/Inputs/ExportArgs.cs
generated
Normal file
76
sdk/dotnet/Inputs/ExportArgs.cs
generated
Normal file
@@ -0,0 +1,76 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class ExportArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// A no-op export. Helpful for silencing the 'no exports' warning if you
|
||||
/// just want to populate caches.
|
||||
/// </summary>
|
||||
[Input("cacheonly")]
|
||||
public Input<Inputs.ExportCacheOnlyArgs>? Cacheonly { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// When `true` this entry will be excluded. Defaults to `false`.
|
||||
/// </summary>
|
||||
[Input("disabled")]
|
||||
public Input<bool>? Disabled { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Export as a Docker image layout.
|
||||
/// </summary>
|
||||
[Input("docker")]
|
||||
public Input<Inputs.ExportDockerArgs>? Docker { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Outputs the build result into a container image format.
|
||||
/// </summary>
|
||||
[Input("image")]
|
||||
public Input<Inputs.ExportImageArgs>? Image { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Export to a local directory as files and directories.
|
||||
/// </summary>
|
||||
[Input("local")]
|
||||
public Input<Inputs.ExportLocalArgs>? Local { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Identical to the Docker exporter but uses OCI media types by default.
|
||||
/// </summary>
|
||||
[Input("oci")]
|
||||
public Input<Inputs.ExportOCIArgs>? Oci { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// A raw string as you would provide it to the Docker CLI (e.g.,
|
||||
/// `type=docker`)
|
||||
/// </summary>
|
||||
[Input("raw")]
|
||||
public Input<string>? Raw { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Identical to the Image exporter, but pushes by default.
|
||||
/// </summary>
|
||||
[Input("registry")]
|
||||
public Input<Inputs.ExportRegistryArgs>? Registry { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Export to a local directory as a tarball.
|
||||
/// </summary>
|
||||
[Input("tar")]
|
||||
public Input<Inputs.ExportTarArgs>? Tar { get; set; }
|
||||
|
||||
public ExportArgs()
|
||||
{
|
||||
}
|
||||
public static new ExportArgs Empty => new ExportArgs();
|
||||
}
|
||||
}
|
||||
20
sdk/dotnet/Inputs/ExportCacheOnlyArgs.cs
generated
Normal file
20
sdk/dotnet/Inputs/ExportCacheOnlyArgs.cs
generated
Normal file
@@ -0,0 +1,20 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class ExportCacheOnlyArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
public ExportCacheOnlyArgs()
|
||||
{
|
||||
}
|
||||
public static new ExportCacheOnlyArgs Empty => new ExportCacheOnlyArgs();
|
||||
}
|
||||
}
|
||||
85
sdk/dotnet/Inputs/ExportDockerArgs.cs
generated
Normal file
85
sdk/dotnet/Inputs/ExportDockerArgs.cs
generated
Normal file
@@ -0,0 +1,85 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class ExportDockerArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
[Input("annotations")]
|
||||
private InputMap<string>? _annotations;
|
||||
|
||||
/// <summary>
|
||||
/// Attach an arbitrary key/value annotation to the image.
|
||||
/// </summary>
|
||||
public InputMap<string> Annotations
|
||||
{
|
||||
get => _annotations ?? (_annotations = new InputMap<string>());
|
||||
set => _annotations = value;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// The compression type to use.
|
||||
/// </summary>
|
||||
[Input("compression")]
|
||||
public Input<Pulumi.DockerBuild.CompressionType>? Compression { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Compression level from 0 to 22.
|
||||
/// </summary>
|
||||
[Input("compressionLevel")]
|
||||
public Input<int>? CompressionLevel { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The local export path.
|
||||
/// </summary>
|
||||
[Input("dest")]
|
||||
public Input<string>? Dest { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Forcefully apply compression.
|
||||
/// </summary>
|
||||
[Input("forceCompression")]
|
||||
public Input<bool>? ForceCompression { get; set; }
|
||||
|
||||
[Input("names")]
|
||||
private InputList<string>? _names;
|
||||
|
||||
/// <summary>
|
||||
/// Specify images names to export. This is overridden if tags are already specified.
|
||||
/// </summary>
|
||||
public InputList<string> Names
|
||||
{
|
||||
get => _names ?? (_names = new InputList<string>());
|
||||
set => _names = value;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Use OCI media types in exporter manifests.
|
||||
/// </summary>
|
||||
[Input("ociMediaTypes")]
|
||||
public Input<bool>? OciMediaTypes { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Bundle the output into a tarball layout.
|
||||
/// </summary>
|
||||
[Input("tar")]
|
||||
public Input<bool>? Tar { get; set; }
|
||||
|
||||
public ExportDockerArgs()
|
||||
{
|
||||
Compression = Pulumi.DockerBuild.CompressionType.Gzip;
|
||||
CompressionLevel = 0;
|
||||
ForceCompression = false;
|
||||
OciMediaTypes = false;
|
||||
Tar = true;
|
||||
}
|
||||
public static new ExportDockerArgs Empty => new ExportDockerArgs();
|
||||
}
|
||||
}
|
||||
122
sdk/dotnet/Inputs/ExportImageArgs.cs
generated
Normal file
122
sdk/dotnet/Inputs/ExportImageArgs.cs
generated
Normal file
@@ -0,0 +1,122 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class ExportImageArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
[Input("annotations")]
|
||||
private InputMap<string>? _annotations;
|
||||
|
||||
/// <summary>
|
||||
/// Attach an arbitrary key/value annotation to the image.
|
||||
/// </summary>
|
||||
public InputMap<string> Annotations
|
||||
{
|
||||
get => _annotations ?? (_annotations = new InputMap<string>());
|
||||
set => _annotations = value;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// The compression type to use.
|
||||
/// </summary>
|
||||
[Input("compression")]
|
||||
public Input<Pulumi.DockerBuild.CompressionType>? Compression { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Compression level from 0 to 22.
|
||||
/// </summary>
|
||||
[Input("compressionLevel")]
|
||||
public Input<int>? CompressionLevel { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Name image with `prefix@<digest>`, used for anonymous images.
|
||||
/// </summary>
|
||||
[Input("danglingNamePrefix")]
|
||||
public Input<string>? DanglingNamePrefix { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Forcefully apply compression.
|
||||
/// </summary>
|
||||
[Input("forceCompression")]
|
||||
public Input<bool>? ForceCompression { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Allow pushing to an insecure registry.
|
||||
/// </summary>
|
||||
[Input("insecure")]
|
||||
public Input<bool>? Insecure { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Add additional canonical name (`name@<digest>`).
|
||||
/// </summary>
|
||||
[Input("nameCanonical")]
|
||||
public Input<bool>? NameCanonical { get; set; }
|
||||
|
||||
[Input("names")]
|
||||
private InputList<string>? _names;
|
||||
|
||||
/// <summary>
|
||||
/// Specify images names to export. This is overridden if tags are already specified.
|
||||
/// </summary>
|
||||
public InputList<string> Names
|
||||
{
|
||||
get => _names ?? (_names = new InputList<string>());
|
||||
set => _names = value;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Use OCI media types in exporter manifests.
|
||||
/// </summary>
|
||||
[Input("ociMediaTypes")]
|
||||
public Input<bool>? OciMediaTypes { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Push after creating the image. Defaults to `false`.
|
||||
/// </summary>
|
||||
[Input("push")]
|
||||
public Input<bool>? Push { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Push image without name.
|
||||
/// </summary>
|
||||
[Input("pushByDigest")]
|
||||
public Input<bool>? PushByDigest { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Store resulting images to the worker's image store and ensure all of
|
||||
/// its blobs are in the content store.
|
||||
///
|
||||
/// Defaults to `true`.
|
||||
///
|
||||
/// Ignored if the worker doesn't have image store (when using OCI workers,
|
||||
/// for example).
|
||||
/// </summary>
|
||||
[Input("store")]
|
||||
public Input<bool>? Store { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Unpack image after creation (for use with containerd). Defaults to
|
||||
/// `false`.
|
||||
/// </summary>
|
||||
[Input("unpack")]
|
||||
public Input<bool>? Unpack { get; set; }
|
||||
|
||||
public ExportImageArgs()
|
||||
{
|
||||
Compression = Pulumi.DockerBuild.CompressionType.Gzip;
|
||||
CompressionLevel = 0;
|
||||
ForceCompression = false;
|
||||
OciMediaTypes = false;
|
||||
Store = true;
|
||||
}
|
||||
public static new ExportImageArgs Empty => new ExportImageArgs();
|
||||
}
|
||||
}
|
||||
26
sdk/dotnet/Inputs/ExportLocalArgs.cs
generated
Normal file
26
sdk/dotnet/Inputs/ExportLocalArgs.cs
generated
Normal file
@@ -0,0 +1,26 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class ExportLocalArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// Output path.
|
||||
/// </summary>
|
||||
[Input("dest", required: true)]
|
||||
public Input<string> Dest { get; set; } = null!;
|
||||
|
||||
public ExportLocalArgs()
|
||||
{
|
||||
}
|
||||
public static new ExportLocalArgs Empty => new ExportLocalArgs();
|
||||
}
|
||||
}
|
||||
85
sdk/dotnet/Inputs/ExportOCIArgs.cs
generated
Normal file
85
sdk/dotnet/Inputs/ExportOCIArgs.cs
generated
Normal file
@@ -0,0 +1,85 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class ExportOCIArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
[Input("annotations")]
|
||||
private InputMap<string>? _annotations;
|
||||
|
||||
/// <summary>
|
||||
/// Attach an arbitrary key/value annotation to the image.
|
||||
/// </summary>
|
||||
public InputMap<string> Annotations
|
||||
{
|
||||
get => _annotations ?? (_annotations = new InputMap<string>());
|
||||
set => _annotations = value;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// The compression type to use.
|
||||
/// </summary>
|
||||
[Input("compression")]
|
||||
public Input<Pulumi.DockerBuild.CompressionType>? Compression { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Compression level from 0 to 22.
|
||||
/// </summary>
|
||||
[Input("compressionLevel")]
|
||||
public Input<int>? CompressionLevel { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// The local export path.
|
||||
/// </summary>
|
||||
[Input("dest")]
|
||||
public Input<string>? Dest { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Forcefully apply compression.
|
||||
/// </summary>
|
||||
[Input("forceCompression")]
|
||||
public Input<bool>? ForceCompression { get; set; }
|
||||
|
||||
[Input("names")]
|
||||
private InputList<string>? _names;
|
||||
|
||||
/// <summary>
|
||||
/// Specify images names to export. This is overridden if tags are already specified.
|
||||
/// </summary>
|
||||
public InputList<string> Names
|
||||
{
|
||||
get => _names ?? (_names = new InputList<string>());
|
||||
set => _names = value;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Use OCI media types in exporter manifests.
|
||||
/// </summary>
|
||||
[Input("ociMediaTypes")]
|
||||
public Input<bool>? OciMediaTypes { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Bundle the output into a tarball layout.
|
||||
/// </summary>
|
||||
[Input("tar")]
|
||||
public Input<bool>? Tar { get; set; }
|
||||
|
||||
public ExportOCIArgs()
|
||||
{
|
||||
Compression = Pulumi.DockerBuild.CompressionType.Gzip;
|
||||
CompressionLevel = 0;
|
||||
ForceCompression = false;
|
||||
OciMediaTypes = true;
|
||||
Tar = true;
|
||||
}
|
||||
public static new ExportOCIArgs Empty => new ExportOCIArgs();
|
||||
}
|
||||
}
|
||||
123
sdk/dotnet/Inputs/ExportRegistryArgs.cs
generated
Normal file
123
sdk/dotnet/Inputs/ExportRegistryArgs.cs
generated
Normal file
@@ -0,0 +1,123 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class ExportRegistryArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
[Input("annotations")]
|
||||
private InputMap<string>? _annotations;
|
||||
|
||||
/// <summary>
|
||||
/// Attach an arbitrary key/value annotation to the image.
|
||||
/// </summary>
|
||||
public InputMap<string> Annotations
|
||||
{
|
||||
get => _annotations ?? (_annotations = new InputMap<string>());
|
||||
set => _annotations = value;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// The compression type to use.
|
||||
/// </summary>
|
||||
[Input("compression")]
|
||||
public Input<Pulumi.DockerBuild.CompressionType>? Compression { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Compression level from 0 to 22.
|
||||
/// </summary>
|
||||
[Input("compressionLevel")]
|
||||
public Input<int>? CompressionLevel { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Name image with `prefix@<digest>`, used for anonymous images.
|
||||
/// </summary>
|
||||
[Input("danglingNamePrefix")]
|
||||
public Input<string>? DanglingNamePrefix { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Forcefully apply compression.
|
||||
/// </summary>
|
||||
[Input("forceCompression")]
|
||||
public Input<bool>? ForceCompression { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Allow pushing to an insecure registry.
|
||||
/// </summary>
|
||||
[Input("insecure")]
|
||||
public Input<bool>? Insecure { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Add additional canonical name (`name@<digest>`).
|
||||
/// </summary>
|
||||
[Input("nameCanonical")]
|
||||
public Input<bool>? NameCanonical { get; set; }
|
||||
|
||||
[Input("names")]
|
||||
private InputList<string>? _names;
|
||||
|
||||
/// <summary>
|
||||
/// Specify images names to export. This is overridden if tags are already specified.
|
||||
/// </summary>
|
||||
public InputList<string> Names
|
||||
{
|
||||
get => _names ?? (_names = new InputList<string>());
|
||||
set => _names = value;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Use OCI media types in exporter manifests.
|
||||
/// </summary>
|
||||
[Input("ociMediaTypes")]
|
||||
public Input<bool>? OciMediaTypes { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Push after creating the image. Defaults to `true`.
|
||||
/// </summary>
|
||||
[Input("push")]
|
||||
public Input<bool>? Push { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Push image without name.
|
||||
/// </summary>
|
||||
[Input("pushByDigest")]
|
||||
public Input<bool>? PushByDigest { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Store resulting images to the worker's image store and ensure all of
|
||||
/// its blobs are in the content store.
|
||||
///
|
||||
/// Defaults to `true`.
|
||||
///
|
||||
/// Ignored if the worker doesn't have image store (when using OCI workers,
|
||||
/// for example).
|
||||
/// </summary>
|
||||
[Input("store")]
|
||||
public Input<bool>? Store { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// Unpack image after creation (for use with containerd). Defaults to
|
||||
/// `false`.
|
||||
/// </summary>
|
||||
[Input("unpack")]
|
||||
public Input<bool>? Unpack { get; set; }
|
||||
|
||||
public ExportRegistryArgs()
|
||||
{
|
||||
Compression = Pulumi.DockerBuild.CompressionType.Gzip;
|
||||
CompressionLevel = 0;
|
||||
ForceCompression = false;
|
||||
OciMediaTypes = false;
|
||||
Push = true;
|
||||
Store = true;
|
||||
}
|
||||
public static new ExportRegistryArgs Empty => new ExportRegistryArgs();
|
||||
}
|
||||
}
|
||||
26
sdk/dotnet/Inputs/ExportTarArgs.cs
generated
Normal file
26
sdk/dotnet/Inputs/ExportTarArgs.cs
generated
Normal file
@@ -0,0 +1,26 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class ExportTarArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// Output path.
|
||||
/// </summary>
|
||||
[Input("dest", required: true)]
|
||||
public Input<string> Dest { get; set; } = null!;
|
||||
|
||||
public ExportTarArgs()
|
||||
{
|
||||
}
|
||||
public static new ExportTarArgs Empty => new ExportTarArgs();
|
||||
}
|
||||
}
|
||||
48
sdk/dotnet/Inputs/RegistryArgs.cs
generated
Normal file
48
sdk/dotnet/Inputs/RegistryArgs.cs
generated
Normal file
@@ -0,0 +1,48 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class RegistryArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// The registry's address (e.g. "docker.io").
|
||||
/// </summary>
|
||||
[Input("address", required: true)]
|
||||
public Input<string> Address { get; set; } = null!;
|
||||
|
||||
[Input("password")]
|
||||
private Input<string>? _password;
|
||||
|
||||
/// <summary>
|
||||
/// Password or token for the registry.
|
||||
/// </summary>
|
||||
public Input<string>? Password
|
||||
{
|
||||
get => _password;
|
||||
set
|
||||
{
|
||||
var emptySecret = Output.CreateSecret(0);
|
||||
_password = Output.Tuple<Input<string>?, int>(value, emptySecret).Apply(t => t.Item1);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Username for the registry.
|
||||
/// </summary>
|
||||
[Input("username")]
|
||||
public Input<string>? Username { get; set; }
|
||||
|
||||
public RegistryArgs()
|
||||
{
|
||||
}
|
||||
public static new RegistryArgs Empty => new RegistryArgs();
|
||||
}
|
||||
}
|
||||
48
sdk/dotnet/Inputs/SSHArgs.cs
generated
Normal file
48
sdk/dotnet/Inputs/SSHArgs.cs
generated
Normal file
@@ -0,0 +1,48 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Inputs
|
||||
{
|
||||
|
||||
public sealed class SSHArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// Useful for distinguishing different servers that are part of the same
|
||||
/// build.
|
||||
///
|
||||
/// A value of `default` is appropriate if only dealing with a single host.
|
||||
/// </summary>
|
||||
[Input("id", required: true)]
|
||||
public Input<string> Id { get; set; } = null!;
|
||||
|
||||
[Input("paths")]
|
||||
private InputList<string>? _paths;
|
||||
|
||||
/// <summary>
|
||||
/// SSH agent socket or private keys to expose to the build under the given
|
||||
/// identifier.
|
||||
///
|
||||
/// Defaults to `[$SSH_AUTH_SOCK]`.
|
||||
///
|
||||
/// Note that your keys are **not** automatically added when using an
|
||||
/// agent. Run `ssh-add -l` locally to confirm which public keys are
|
||||
/// visible to the agent; these will be exposed to your build.
|
||||
/// </summary>
|
||||
public InputList<string> Paths
|
||||
{
|
||||
get => _paths ?? (_paths = new InputList<string>());
|
||||
set => _paths = value;
|
||||
}
|
||||
|
||||
public SSHArgs()
|
||||
{
|
||||
}
|
||||
public static new SSHArgs Empty => new SSHArgs();
|
||||
}
|
||||
}
|
||||
47
sdk/dotnet/Outputs/BuildContext.cs
generated
Normal file
47
sdk/dotnet/Outputs/BuildContext.cs
generated
Normal file
@@ -0,0 +1,47 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class BuildContext
|
||||
{
|
||||
/// <summary>
|
||||
/// Resources to use for build context.
|
||||
///
|
||||
/// The location can be:
|
||||
/// * A relative or absolute path to a local directory (`.`, `./app`,
|
||||
/// `/app`, etc.).
|
||||
/// * A remote URL of a Git repository, tarball, or plain text file
|
||||
/// (`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`,
|
||||
/// etc.).
|
||||
/// </summary>
|
||||
public readonly string Location;
|
||||
/// <summary>
|
||||
/// Additional build contexts to use.
|
||||
///
|
||||
/// These contexts are accessed with `FROM name` or `--from=name`
|
||||
/// statements when using Dockerfile 1.4+ syntax.
|
||||
///
|
||||
/// Values can be local paths, HTTP URLs, or `docker-image://` images.
|
||||
/// </summary>
|
||||
public readonly ImmutableDictionary<string, Outputs.Context>? Named;
|
||||
|
||||
[OutputConstructor]
|
||||
private BuildContext(
|
||||
string location,
|
||||
|
||||
ImmutableDictionary<string, Outputs.Context>? named)
|
||||
{
|
||||
Location = location;
|
||||
Named = named;
|
||||
}
|
||||
}
|
||||
}
|
||||
32
sdk/dotnet/Outputs/BuilderConfig.cs
generated
Normal file
32
sdk/dotnet/Outputs/BuilderConfig.cs
generated
Normal file
@@ -0,0 +1,32 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class BuilderConfig
|
||||
{
|
||||
/// <summary>
|
||||
/// Name of an existing buildx builder to use.
|
||||
///
|
||||
/// Only `docker-container`, `kubernetes`, or `remote` drivers are
|
||||
/// supported. The legacy `docker` driver is not supported.
|
||||
///
|
||||
/// Equivalent to Docker's `--builder` flag.
|
||||
/// </summary>
|
||||
public readonly string? Name;
|
||||
|
||||
[OutputConstructor]
|
||||
private BuilderConfig(string? name)
|
||||
{
|
||||
Name = name;
|
||||
}
|
||||
}
|
||||
}
|
||||
75
sdk/dotnet/Outputs/CacheFrom.cs
generated
Normal file
75
sdk/dotnet/Outputs/CacheFrom.cs
generated
Normal file
@@ -0,0 +1,75 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class CacheFrom
|
||||
{
|
||||
/// <summary>
|
||||
/// Upload build caches to Azure's blob storage service.
|
||||
/// </summary>
|
||||
public readonly Outputs.CacheFromAzureBlob? Azblob;
|
||||
/// <summary>
|
||||
/// When `true` this entry will be excluded. Defaults to `false`.
|
||||
/// </summary>
|
||||
public readonly bool? Disabled;
|
||||
/// <summary>
|
||||
/// Recommended for use with GitHub Actions workflows.
|
||||
///
|
||||
/// An action like `crazy-max/ghaction-github-runtime` is recommended to
|
||||
/// expose appropriate credentials to your GitHub workflow.
|
||||
/// </summary>
|
||||
public readonly Outputs.CacheFromGitHubActions? Gha;
|
||||
/// <summary>
|
||||
/// A simple backend which caches images on your local filesystem.
|
||||
/// </summary>
|
||||
public readonly Outputs.CacheFromLocal? Local;
|
||||
/// <summary>
|
||||
/// A raw string as you would provide it to the Docker CLI (e.g.,
|
||||
/// `type=inline`).
|
||||
/// </summary>
|
||||
public readonly string? Raw;
|
||||
/// <summary>
|
||||
/// Upload build caches to remote registries.
|
||||
/// </summary>
|
||||
public readonly Outputs.CacheFromRegistry? Registry;
|
||||
/// <summary>
|
||||
/// Upload build caches to AWS S3 or an S3-compatible services such as
|
||||
/// MinIO.
|
||||
/// </summary>
|
||||
public readonly Outputs.CacheFromS3? S3;
|
||||
|
||||
[OutputConstructor]
|
||||
private CacheFrom(
|
||||
Outputs.CacheFromAzureBlob? azblob,
|
||||
|
||||
bool? disabled,
|
||||
|
||||
Outputs.CacheFromGitHubActions? gha,
|
||||
|
||||
Outputs.CacheFromLocal? local,
|
||||
|
||||
string? raw,
|
||||
|
||||
Outputs.CacheFromRegistry? registry,
|
||||
|
||||
Outputs.CacheFromS3? s3)
|
||||
{
|
||||
Azblob = azblob;
|
||||
Disabled = disabled;
|
||||
Gha = gha;
|
||||
Local = local;
|
||||
Raw = raw;
|
||||
Registry = registry;
|
||||
S3 = s3;
|
||||
}
|
||||
}
|
||||
}
|
||||
42
sdk/dotnet/Outputs/CacheFromAzureBlob.cs
generated
Normal file
42
sdk/dotnet/Outputs/CacheFromAzureBlob.cs
generated
Normal file
@@ -0,0 +1,42 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class CacheFromAzureBlob
|
||||
{
|
||||
/// <summary>
|
||||
/// Base URL of the storage account.
|
||||
/// </summary>
|
||||
public readonly string? AccountUrl;
|
||||
/// <summary>
|
||||
/// The name of the cache image.
|
||||
/// </summary>
|
||||
public readonly string Name;
|
||||
/// <summary>
|
||||
/// Blob storage account key.
|
||||
/// </summary>
|
||||
public readonly string? SecretAccessKey;
|
||||
|
||||
[OutputConstructor]
|
||||
private CacheFromAzureBlob(
|
||||
string? accountUrl,
|
||||
|
||||
string name,
|
||||
|
||||
string? secretAccessKey)
|
||||
{
|
||||
AccountUrl = accountUrl;
|
||||
Name = name;
|
||||
SecretAccessKey = secretAccessKey;
|
||||
}
|
||||
}
|
||||
}
|
||||
54
sdk/dotnet/Outputs/CacheFromGitHubActions.cs
generated
Normal file
54
sdk/dotnet/Outputs/CacheFromGitHubActions.cs
generated
Normal file
@@ -0,0 +1,54 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class CacheFromGitHubActions
|
||||
{
|
||||
/// <summary>
|
||||
/// The scope to use for cache keys. Defaults to `buildkit`.
|
||||
///
|
||||
/// This should be set if building and caching multiple images in one
|
||||
/// workflow, otherwise caches will overwrite each other.
|
||||
/// </summary>
|
||||
public readonly string? Scope;
|
||||
/// <summary>
|
||||
/// The GitHub Actions token to use. This is not a personal access tokens
|
||||
/// and is typically generated automatically as part of each job.
|
||||
///
|
||||
/// Defaults to `$ACTIONS_RUNTIME_TOKEN`, although a separate action like
|
||||
/// `crazy-max/ghaction-github-runtime` is recommended to expose this
|
||||
/// environment variable to your jobs.
|
||||
/// </summary>
|
||||
public readonly string? Token;
|
||||
/// <summary>
|
||||
/// The cache server URL to use for artifacts.
|
||||
///
|
||||
/// Defaults to `$ACTIONS_RUNTIME_URL`, although a separate action like
|
||||
/// `crazy-max/ghaction-github-runtime` is recommended to expose this
|
||||
/// environment variable to your jobs.
|
||||
/// </summary>
|
||||
public readonly string? Url;
|
||||
|
||||
[OutputConstructor]
|
||||
private CacheFromGitHubActions(
|
||||
string? scope,
|
||||
|
||||
string? token,
|
||||
|
||||
string? url)
|
||||
{
|
||||
Scope = scope;
|
||||
Token = token;
|
||||
Url = url;
|
||||
}
|
||||
}
|
||||
}
|
||||
35
sdk/dotnet/Outputs/CacheFromLocal.cs
generated
Normal file
35
sdk/dotnet/Outputs/CacheFromLocal.cs
generated
Normal file
@@ -0,0 +1,35 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class CacheFromLocal
|
||||
{
|
||||
/// <summary>
|
||||
/// Digest of manifest to import.
|
||||
/// </summary>
|
||||
public readonly string? Digest;
|
||||
/// <summary>
|
||||
/// Path of the local directory where cache gets imported from.
|
||||
/// </summary>
|
||||
public readonly string Src;
|
||||
|
||||
[OutputConstructor]
|
||||
private CacheFromLocal(
|
||||
string? digest,
|
||||
|
||||
string src)
|
||||
{
|
||||
Digest = digest;
|
||||
Src = src;
|
||||
}
|
||||
}
|
||||
}
|
||||
27
sdk/dotnet/Outputs/CacheFromRegistry.cs
generated
Normal file
27
sdk/dotnet/Outputs/CacheFromRegistry.cs
generated
Normal file
@@ -0,0 +1,27 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class CacheFromRegistry
|
||||
{
|
||||
/// <summary>
|
||||
/// Fully qualified name of the cache image to import.
|
||||
/// </summary>
|
||||
public readonly string Ref;
|
||||
|
||||
[OutputConstructor]
|
||||
private CacheFromRegistry(string @ref)
|
||||
{
|
||||
Ref = @ref;
|
||||
}
|
||||
}
|
||||
}
|
||||
91
sdk/dotnet/Outputs/CacheFromS3.cs
generated
Normal file
91
sdk/dotnet/Outputs/CacheFromS3.cs
generated
Normal file
@@ -0,0 +1,91 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class CacheFromS3
|
||||
{
|
||||
/// <summary>
|
||||
/// Defaults to `$AWS_ACCESS_KEY_ID`.
|
||||
/// </summary>
|
||||
public readonly string? AccessKeyId;
|
||||
/// <summary>
|
||||
/// Prefix to prepend to blob filenames.
|
||||
/// </summary>
|
||||
public readonly string? BlobsPrefix;
|
||||
/// <summary>
|
||||
/// Name of the S3 bucket.
|
||||
/// </summary>
|
||||
public readonly string Bucket;
|
||||
/// <summary>
|
||||
/// Endpoint of the S3 bucket.
|
||||
/// </summary>
|
||||
public readonly string? EndpointUrl;
|
||||
/// <summary>
|
||||
/// Prefix to prepend on manifest filenames.
|
||||
/// </summary>
|
||||
public readonly string? ManifestsPrefix;
|
||||
/// <summary>
|
||||
/// Name of the cache image.
|
||||
/// </summary>
|
||||
public readonly string? Name;
|
||||
/// <summary>
|
||||
/// The geographic location of the bucket. Defaults to `$AWS_REGION`.
|
||||
/// </summary>
|
||||
public readonly string Region;
|
||||
/// <summary>
|
||||
/// Defaults to `$AWS_SECRET_ACCESS_KEY`.
|
||||
/// </summary>
|
||||
public readonly string? SecretAccessKey;
|
||||
/// <summary>
|
||||
/// Defaults to `$AWS_SESSION_TOKEN`.
|
||||
/// </summary>
|
||||
public readonly string? SessionToken;
|
||||
/// <summary>
|
||||
/// Uses `bucket` in the URL instead of hostname when `true`.
|
||||
/// </summary>
|
||||
public readonly bool? UsePathStyle;
|
||||
|
||||
[OutputConstructor]
|
||||
private CacheFromS3(
|
||||
string? accessKeyId,
|
||||
|
||||
string? blobsPrefix,
|
||||
|
||||
string bucket,
|
||||
|
||||
string? endpointUrl,
|
||||
|
||||
string? manifestsPrefix,
|
||||
|
||||
string? name,
|
||||
|
||||
string region,
|
||||
|
||||
string? secretAccessKey,
|
||||
|
||||
string? sessionToken,
|
||||
|
||||
bool? usePathStyle)
|
||||
{
|
||||
AccessKeyId = accessKeyId;
|
||||
BlobsPrefix = blobsPrefix;
|
||||
Bucket = bucket;
|
||||
EndpointUrl = endpointUrl;
|
||||
ManifestsPrefix = manifestsPrefix;
|
||||
Name = name;
|
||||
Region = region;
|
||||
SecretAccessKey = secretAccessKey;
|
||||
SessionToken = sessionToken;
|
||||
UsePathStyle = usePathStyle;
|
||||
}
|
||||
}
|
||||
}
|
||||
84
sdk/dotnet/Outputs/CacheTo.cs
generated
Normal file
84
sdk/dotnet/Outputs/CacheTo.cs
generated
Normal file
@@ -0,0 +1,84 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class CacheTo
|
||||
{
|
||||
/// <summary>
|
||||
/// Push cache to Azure's blob storage service.
|
||||
/// </summary>
|
||||
public readonly Outputs.CacheToAzureBlob? Azblob;
|
||||
/// <summary>
|
||||
/// When `true` this entry will be excluded. Defaults to `false`.
|
||||
/// </summary>
|
||||
public readonly bool? Disabled;
|
||||
/// <summary>
|
||||
/// Recommended for use with GitHub Actions workflows.
|
||||
///
|
||||
/// An action like `crazy-max/ghaction-github-runtime` is recommended to
|
||||
/// expose appropriate credentials to your GitHub workflow.
|
||||
/// </summary>
|
||||
public readonly Outputs.CacheToGitHubActions? Gha;
|
||||
/// <summary>
|
||||
/// The inline cache storage backend is the simplest implementation to get
|
||||
/// started with, but it does not handle multi-stage builds. Consider the
|
||||
/// `registry` cache backend instead.
|
||||
/// </summary>
|
||||
public readonly Outputs.CacheToInline? Inline;
|
||||
/// <summary>
|
||||
/// A simple backend which caches imagines on your local filesystem.
|
||||
/// </summary>
|
||||
public readonly Outputs.CacheToLocal? Local;
|
||||
/// <summary>
|
||||
/// A raw string as you would provide it to the Docker CLI (e.g.,
|
||||
/// `type=inline`)
|
||||
/// </summary>
|
||||
public readonly string? Raw;
|
||||
/// <summary>
|
||||
/// Push caches to remote registries. Incompatible with the `docker` build
|
||||
/// driver.
|
||||
/// </summary>
|
||||
public readonly Outputs.CacheToRegistry? Registry;
|
||||
/// <summary>
|
||||
/// Push cache to AWS S3 or S3-compatible services such as MinIO.
|
||||
/// </summary>
|
||||
public readonly Outputs.CacheToS3? S3;
|
||||
|
||||
[OutputConstructor]
|
||||
private CacheTo(
|
||||
Outputs.CacheToAzureBlob? azblob,
|
||||
|
||||
bool? disabled,
|
||||
|
||||
Outputs.CacheToGitHubActions? gha,
|
||||
|
||||
Outputs.CacheToInline? inline,
|
||||
|
||||
Outputs.CacheToLocal? local,
|
||||
|
||||
string? raw,
|
||||
|
||||
Outputs.CacheToRegistry? registry,
|
||||
|
||||
Outputs.CacheToS3? s3)
|
||||
{
|
||||
Azblob = azblob;
|
||||
Disabled = disabled;
|
||||
Gha = gha;
|
||||
Inline = inline;
|
||||
Local = local;
|
||||
Raw = raw;
|
||||
Registry = registry;
|
||||
S3 = s3;
|
||||
}
|
||||
}
|
||||
}
|
||||
56
sdk/dotnet/Outputs/CacheToAzureBlob.cs
generated
Normal file
56
sdk/dotnet/Outputs/CacheToAzureBlob.cs
generated
Normal file
@@ -0,0 +1,56 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class CacheToAzureBlob
|
||||
{
|
||||
/// <summary>
|
||||
/// Base URL of the storage account.
|
||||
/// </summary>
|
||||
public readonly string? AccountUrl;
|
||||
/// <summary>
|
||||
/// Ignore errors caused by failed cache exports.
|
||||
/// </summary>
|
||||
public readonly bool? IgnoreError;
|
||||
/// <summary>
|
||||
/// The cache mode to use. Defaults to `min`.
|
||||
/// </summary>
|
||||
public readonly Pulumi.DockerBuild.CacheMode? Mode;
|
||||
/// <summary>
|
||||
/// The name of the cache image.
|
||||
/// </summary>
|
||||
public readonly string Name;
|
||||
/// <summary>
|
||||
/// Blob storage account key.
|
||||
/// </summary>
|
||||
public readonly string? SecretAccessKey;
|
||||
|
||||
[OutputConstructor]
|
||||
private CacheToAzureBlob(
|
||||
string? accountUrl,
|
||||
|
||||
bool? ignoreError,
|
||||
|
||||
Pulumi.DockerBuild.CacheMode? mode,
|
||||
|
||||
string name,
|
||||
|
||||
string? secretAccessKey)
|
||||
{
|
||||
AccountUrl = accountUrl;
|
||||
IgnoreError = ignoreError;
|
||||
Mode = mode;
|
||||
Name = name;
|
||||
SecretAccessKey = secretAccessKey;
|
||||
}
|
||||
}
|
||||
}
|
||||
68
sdk/dotnet/Outputs/CacheToGitHubActions.cs
generated
Normal file
68
sdk/dotnet/Outputs/CacheToGitHubActions.cs
generated
Normal file
@@ -0,0 +1,68 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class CacheToGitHubActions
|
||||
{
|
||||
/// <summary>
|
||||
/// Ignore errors caused by failed cache exports.
|
||||
/// </summary>
|
||||
public readonly bool? IgnoreError;
|
||||
/// <summary>
|
||||
/// The cache mode to use. Defaults to `min`.
|
||||
/// </summary>
|
||||
public readonly Pulumi.DockerBuild.CacheMode? Mode;
|
||||
/// <summary>
|
||||
/// The scope to use for cache keys. Defaults to `buildkit`.
|
||||
///
|
||||
/// This should be set if building and caching multiple images in one
|
||||
/// workflow, otherwise caches will overwrite each other.
|
||||
/// </summary>
|
||||
public readonly string? Scope;
|
||||
/// <summary>
|
||||
/// The GitHub Actions token to use. This is not a personal access tokens
|
||||
/// and is typically generated automatically as part of each job.
|
||||
///
|
||||
/// Defaults to `$ACTIONS_RUNTIME_TOKEN`, although a separate action like
|
||||
/// `crazy-max/ghaction-github-runtime` is recommended to expose this
|
||||
/// environment variable to your jobs.
|
||||
/// </summary>
|
||||
public readonly string? Token;
|
||||
/// <summary>
|
||||
/// The cache server URL to use for artifacts.
|
||||
///
|
||||
/// Defaults to `$ACTIONS_RUNTIME_URL`, although a separate action like
|
||||
/// `crazy-max/ghaction-github-runtime` is recommended to expose this
|
||||
/// environment variable to your jobs.
|
||||
/// </summary>
|
||||
public readonly string? Url;
|
||||
|
||||
[OutputConstructor]
|
||||
private CacheToGitHubActions(
|
||||
bool? ignoreError,
|
||||
|
||||
Pulumi.DockerBuild.CacheMode? mode,
|
||||
|
||||
string? scope,
|
||||
|
||||
string? token,
|
||||
|
||||
string? url)
|
||||
{
|
||||
IgnoreError = ignoreError;
|
||||
Mode = mode;
|
||||
Scope = scope;
|
||||
Token = token;
|
||||
Url = url;
|
||||
}
|
||||
}
|
||||
}
|
||||
24
sdk/dotnet/Outputs/CacheToInline.cs
generated
Normal file
24
sdk/dotnet/Outputs/CacheToInline.cs
generated
Normal file
@@ -0,0 +1,24 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// Include an inline cache with the exported image.
|
||||
/// </summary>
|
||||
[OutputType]
|
||||
public sealed class CacheToInline
|
||||
{
|
||||
[OutputConstructor]
|
||||
private CacheToInline()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
63
sdk/dotnet/Outputs/CacheToLocal.cs
generated
Normal file
63
sdk/dotnet/Outputs/CacheToLocal.cs
generated
Normal file
@@ -0,0 +1,63 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class CacheToLocal
|
||||
{
|
||||
/// <summary>
|
||||
/// The compression type to use.
|
||||
/// </summary>
|
||||
public readonly Pulumi.DockerBuild.CompressionType? Compression;
|
||||
/// <summary>
|
||||
/// Compression level from 0 to 22.
|
||||
/// </summary>
|
||||
public readonly int? CompressionLevel;
|
||||
/// <summary>
|
||||
/// Path of the local directory to export the cache.
|
||||
/// </summary>
|
||||
public readonly string Dest;
|
||||
/// <summary>
|
||||
/// Forcefully apply compression.
|
||||
/// </summary>
|
||||
public readonly bool? ForceCompression;
|
||||
/// <summary>
|
||||
/// Ignore errors caused by failed cache exports.
|
||||
/// </summary>
|
||||
public readonly bool? IgnoreError;
|
||||
/// <summary>
|
||||
/// The cache mode to use. Defaults to `min`.
|
||||
/// </summary>
|
||||
public readonly Pulumi.DockerBuild.CacheMode? Mode;
|
||||
|
||||
[OutputConstructor]
|
||||
private CacheToLocal(
|
||||
Pulumi.DockerBuild.CompressionType? compression,
|
||||
|
||||
int? compressionLevel,
|
||||
|
||||
string dest,
|
||||
|
||||
bool? forceCompression,
|
||||
|
||||
bool? ignoreError,
|
||||
|
||||
Pulumi.DockerBuild.CacheMode? mode)
|
||||
{
|
||||
Compression = compression;
|
||||
CompressionLevel = compressionLevel;
|
||||
Dest = dest;
|
||||
ForceCompression = forceCompression;
|
||||
IgnoreError = ignoreError;
|
||||
Mode = mode;
|
||||
}
|
||||
}
|
||||
}
|
||||
84
sdk/dotnet/Outputs/CacheToRegistry.cs
generated
Normal file
84
sdk/dotnet/Outputs/CacheToRegistry.cs
generated
Normal file
@@ -0,0 +1,84 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class CacheToRegistry
|
||||
{
|
||||
/// <summary>
|
||||
/// The compression type to use.
|
||||
/// </summary>
|
||||
public readonly Pulumi.DockerBuild.CompressionType? Compression;
|
||||
/// <summary>
|
||||
/// Compression level from 0 to 22.
|
||||
/// </summary>
|
||||
public readonly int? CompressionLevel;
|
||||
/// <summary>
|
||||
/// Forcefully apply compression.
|
||||
/// </summary>
|
||||
public readonly bool? ForceCompression;
|
||||
/// <summary>
|
||||
/// Ignore errors caused by failed cache exports.
|
||||
/// </summary>
|
||||
public readonly bool? IgnoreError;
|
||||
/// <summary>
|
||||
/// Export cache manifest as an OCI-compatible image manifest instead of a
|
||||
/// manifest list. Requires `ociMediaTypes` to also be `true`.
|
||||
///
|
||||
/// Some registries like AWS ECR will not work with caching if this is
|
||||
/// `false`.
|
||||
///
|
||||
/// Defaults to `false` to match Docker's default behavior.
|
||||
/// </summary>
|
||||
public readonly bool? ImageManifest;
|
||||
/// <summary>
|
||||
/// The cache mode to use. Defaults to `min`.
|
||||
/// </summary>
|
||||
public readonly Pulumi.DockerBuild.CacheMode? Mode;
|
||||
/// <summary>
|
||||
/// Whether to use OCI media types in exported manifests. Defaults to
|
||||
/// `true`.
|
||||
/// </summary>
|
||||
public readonly bool? OciMediaTypes;
|
||||
/// <summary>
|
||||
/// Fully qualified name of the cache image to import.
|
||||
/// </summary>
|
||||
public readonly string Ref;
|
||||
|
||||
[OutputConstructor]
|
||||
private CacheToRegistry(
|
||||
Pulumi.DockerBuild.CompressionType? compression,
|
||||
|
||||
int? compressionLevel,
|
||||
|
||||
bool? forceCompression,
|
||||
|
||||
bool? ignoreError,
|
||||
|
||||
bool? imageManifest,
|
||||
|
||||
Pulumi.DockerBuild.CacheMode? mode,
|
||||
|
||||
bool? ociMediaTypes,
|
||||
|
||||
string @ref)
|
||||
{
|
||||
Compression = compression;
|
||||
CompressionLevel = compressionLevel;
|
||||
ForceCompression = forceCompression;
|
||||
IgnoreError = ignoreError;
|
||||
ImageManifest = imageManifest;
|
||||
Mode = mode;
|
||||
OciMediaTypes = ociMediaTypes;
|
||||
Ref = @ref;
|
||||
}
|
||||
}
|
||||
}
|
||||
105
sdk/dotnet/Outputs/CacheToS3.cs
generated
Normal file
105
sdk/dotnet/Outputs/CacheToS3.cs
generated
Normal file
@@ -0,0 +1,105 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class CacheToS3
|
||||
{
|
||||
/// <summary>
|
||||
/// Defaults to `$AWS_ACCESS_KEY_ID`.
|
||||
/// </summary>
|
||||
public readonly string? AccessKeyId;
|
||||
/// <summary>
|
||||
/// Prefix to prepend to blob filenames.
|
||||
/// </summary>
|
||||
public readonly string? BlobsPrefix;
|
||||
/// <summary>
|
||||
/// Name of the S3 bucket.
|
||||
/// </summary>
|
||||
public readonly string Bucket;
|
||||
/// <summary>
|
||||
/// Endpoint of the S3 bucket.
|
||||
/// </summary>
|
||||
public readonly string? EndpointUrl;
|
||||
/// <summary>
|
||||
/// Ignore errors caused by failed cache exports.
|
||||
/// </summary>
|
||||
public readonly bool? IgnoreError;
|
||||
/// <summary>
|
||||
/// Prefix to prepend on manifest filenames.
|
||||
/// </summary>
|
||||
public readonly string? ManifestsPrefix;
|
||||
/// <summary>
|
||||
/// The cache mode to use. Defaults to `min`.
|
||||
/// </summary>
|
||||
public readonly Pulumi.DockerBuild.CacheMode? Mode;
|
||||
/// <summary>
|
||||
/// Name of the cache image.
|
||||
/// </summary>
|
||||
public readonly string? Name;
|
||||
/// <summary>
|
||||
/// The geographic location of the bucket. Defaults to `$AWS_REGION`.
|
||||
/// </summary>
|
||||
public readonly string Region;
|
||||
/// <summary>
|
||||
/// Defaults to `$AWS_SECRET_ACCESS_KEY`.
|
||||
/// </summary>
|
||||
public readonly string? SecretAccessKey;
|
||||
/// <summary>
|
||||
/// Defaults to `$AWS_SESSION_TOKEN`.
|
||||
/// </summary>
|
||||
public readonly string? SessionToken;
|
||||
/// <summary>
|
||||
/// Uses `bucket` in the URL instead of hostname when `true`.
|
||||
/// </summary>
|
||||
public readonly bool? UsePathStyle;
|
||||
|
||||
[OutputConstructor]
|
||||
private CacheToS3(
|
||||
string? accessKeyId,
|
||||
|
||||
string? blobsPrefix,
|
||||
|
||||
string bucket,
|
||||
|
||||
string? endpointUrl,
|
||||
|
||||
bool? ignoreError,
|
||||
|
||||
string? manifestsPrefix,
|
||||
|
||||
Pulumi.DockerBuild.CacheMode? mode,
|
||||
|
||||
string? name,
|
||||
|
||||
string region,
|
||||
|
||||
string? secretAccessKey,
|
||||
|
||||
string? sessionToken,
|
||||
|
||||
bool? usePathStyle)
|
||||
{
|
||||
AccessKeyId = accessKeyId;
|
||||
BlobsPrefix = blobsPrefix;
|
||||
Bucket = bucket;
|
||||
EndpointUrl = endpointUrl;
|
||||
IgnoreError = ignoreError;
|
||||
ManifestsPrefix = manifestsPrefix;
|
||||
Mode = mode;
|
||||
Name = name;
|
||||
Region = region;
|
||||
SecretAccessKey = secretAccessKey;
|
||||
SessionToken = sessionToken;
|
||||
UsePathStyle = usePathStyle;
|
||||
}
|
||||
}
|
||||
}
|
||||
34
sdk/dotnet/Outputs/Context.cs
generated
Normal file
34
sdk/dotnet/Outputs/Context.cs
generated
Normal file
@@ -0,0 +1,34 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class Context
|
||||
{
|
||||
/// <summary>
|
||||
/// Resources to use for build context.
|
||||
///
|
||||
/// The location can be:
|
||||
/// * A relative or absolute path to a local directory (`.`, `./app`,
|
||||
/// `/app`, etc.).
|
||||
/// * A remote URL of a Git repository, tarball, or plain text file
|
||||
/// (`https://github.com/user/myrepo.git`, `http://server/context.tar.gz`,
|
||||
/// etc.).
|
||||
/// </summary>
|
||||
public readonly string Location;
|
||||
|
||||
[OutputConstructor]
|
||||
private Context(string location)
|
||||
{
|
||||
Location = location;
|
||||
}
|
||||
}
|
||||
}
|
||||
45
sdk/dotnet/Outputs/Dockerfile.cs
generated
Normal file
45
sdk/dotnet/Outputs/Dockerfile.cs
generated
Normal file
@@ -0,0 +1,45 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class Dockerfile
|
||||
{
|
||||
/// <summary>
|
||||
/// Raw Dockerfile contents.
|
||||
///
|
||||
/// Conflicts with `location`.
|
||||
///
|
||||
/// Equivalent to invoking Docker with `-f -`.
|
||||
/// </summary>
|
||||
public readonly string? Inline;
|
||||
/// <summary>
|
||||
/// Location of the Dockerfile to use.
|
||||
///
|
||||
/// Can be a relative or absolute path to a local file, or a remote URL.
|
||||
///
|
||||
/// Defaults to `${context.location}/Dockerfile` if context is on-disk.
|
||||
///
|
||||
/// Conflicts with `inline`.
|
||||
/// </summary>
|
||||
public readonly string? Location;
|
||||
|
||||
[OutputConstructor]
|
||||
private Dockerfile(
|
||||
string? inline,
|
||||
|
||||
string? location)
|
||||
{
|
||||
Inline = inline;
|
||||
Location = location;
|
||||
}
|
||||
}
|
||||
}
|
||||
86
sdk/dotnet/Outputs/Export.cs
generated
Normal file
86
sdk/dotnet/Outputs/Export.cs
generated
Normal file
@@ -0,0 +1,86 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class Export
|
||||
{
|
||||
/// <summary>
|
||||
/// A no-op export. Helpful for silencing the 'no exports' warning if you
|
||||
/// just want to populate caches.
|
||||
/// </summary>
|
||||
public readonly Outputs.ExportCacheOnly? Cacheonly;
|
||||
/// <summary>
|
||||
/// When `true` this entry will be excluded. Defaults to `false`.
|
||||
/// </summary>
|
||||
public readonly bool? Disabled;
|
||||
/// <summary>
|
||||
/// Export as a Docker image layout.
|
||||
/// </summary>
|
||||
public readonly Outputs.ExportDocker? Docker;
|
||||
/// <summary>
|
||||
/// Outputs the build result into a container image format.
|
||||
/// </summary>
|
||||
public readonly Outputs.ExportImage? Image;
|
||||
/// <summary>
|
||||
/// Export to a local directory as files and directories.
|
||||
/// </summary>
|
||||
public readonly Outputs.ExportLocal? Local;
|
||||
/// <summary>
|
||||
/// Identical to the Docker exporter but uses OCI media types by default.
|
||||
/// </summary>
|
||||
public readonly Outputs.ExportOCI? Oci;
|
||||
/// <summary>
|
||||
/// A raw string as you would provide it to the Docker CLI (e.g.,
|
||||
/// `type=docker`)
|
||||
/// </summary>
|
||||
public readonly string? Raw;
|
||||
/// <summary>
|
||||
/// Identical to the Image exporter, but pushes by default.
|
||||
/// </summary>
|
||||
public readonly Outputs.ExportRegistry? Registry;
|
||||
/// <summary>
|
||||
/// Export to a local directory as a tarball.
|
||||
/// </summary>
|
||||
public readonly Outputs.ExportTar? Tar;
|
||||
|
||||
[OutputConstructor]
|
||||
private Export(
|
||||
Outputs.ExportCacheOnly? cacheonly,
|
||||
|
||||
bool? disabled,
|
||||
|
||||
Outputs.ExportDocker? docker,
|
||||
|
||||
Outputs.ExportImage? image,
|
||||
|
||||
Outputs.ExportLocal? local,
|
||||
|
||||
Outputs.ExportOCI? oci,
|
||||
|
||||
string? raw,
|
||||
|
||||
Outputs.ExportRegistry? registry,
|
||||
|
||||
Outputs.ExportTar? tar)
|
||||
{
|
||||
Cacheonly = cacheonly;
|
||||
Disabled = disabled;
|
||||
Docker = docker;
|
||||
Image = image;
|
||||
Local = local;
|
||||
Oci = oci;
|
||||
Raw = raw;
|
||||
Registry = registry;
|
||||
Tar = tar;
|
||||
}
|
||||
}
|
||||
}
|
||||
21
sdk/dotnet/Outputs/ExportCacheOnly.cs
generated
Normal file
21
sdk/dotnet/Outputs/ExportCacheOnly.cs
generated
Normal file
@@ -0,0 +1,21 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class ExportCacheOnly
|
||||
{
|
||||
[OutputConstructor]
|
||||
private ExportCacheOnly()
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
77
sdk/dotnet/Outputs/ExportDocker.cs
generated
Normal file
77
sdk/dotnet/Outputs/ExportDocker.cs
generated
Normal file
@@ -0,0 +1,77 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class ExportDocker
|
||||
{
|
||||
/// <summary>
|
||||
/// Attach an arbitrary key/value annotation to the image.
|
||||
/// </summary>
|
||||
public readonly ImmutableDictionary<string, string>? Annotations;
|
||||
/// <summary>
|
||||
/// The compression type to use.
|
||||
/// </summary>
|
||||
public readonly Pulumi.DockerBuild.CompressionType? Compression;
|
||||
/// <summary>
|
||||
/// Compression level from 0 to 22.
|
||||
/// </summary>
|
||||
public readonly int? CompressionLevel;
|
||||
/// <summary>
|
||||
/// The local export path.
|
||||
/// </summary>
|
||||
public readonly string? Dest;
|
||||
/// <summary>
|
||||
/// Forcefully apply compression.
|
||||
/// </summary>
|
||||
public readonly bool? ForceCompression;
|
||||
/// <summary>
|
||||
/// Specify images names to export. This is overridden if tags are already specified.
|
||||
/// </summary>
|
||||
public readonly ImmutableArray<string> Names;
|
||||
/// <summary>
|
||||
/// Use OCI media types in exporter manifests.
|
||||
/// </summary>
|
||||
public readonly bool? OciMediaTypes;
|
||||
/// <summary>
|
||||
/// Bundle the output into a tarball layout.
|
||||
/// </summary>
|
||||
public readonly bool? Tar;
|
||||
|
||||
[OutputConstructor]
|
||||
private ExportDocker(
|
||||
ImmutableDictionary<string, string>? annotations,
|
||||
|
||||
Pulumi.DockerBuild.CompressionType? compression,
|
||||
|
||||
int? compressionLevel,
|
||||
|
||||
string? dest,
|
||||
|
||||
bool? forceCompression,
|
||||
|
||||
ImmutableArray<string> names,
|
||||
|
||||
bool? ociMediaTypes,
|
||||
|
||||
bool? tar)
|
||||
{
|
||||
Annotations = annotations;
|
||||
Compression = compression;
|
||||
CompressionLevel = compressionLevel;
|
||||
Dest = dest;
|
||||
ForceCompression = forceCompression;
|
||||
Names = names;
|
||||
OciMediaTypes = ociMediaTypes;
|
||||
Tar = tar;
|
||||
}
|
||||
}
|
||||
}
|
||||
119
sdk/dotnet/Outputs/ExportImage.cs
generated
Normal file
119
sdk/dotnet/Outputs/ExportImage.cs
generated
Normal file
@@ -0,0 +1,119 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class ExportImage
|
||||
{
|
||||
/// <summary>
|
||||
/// Attach an arbitrary key/value annotation to the image.
|
||||
/// </summary>
|
||||
public readonly ImmutableDictionary<string, string>? Annotations;
|
||||
/// <summary>
|
||||
/// The compression type to use.
|
||||
/// </summary>
|
||||
public readonly Pulumi.DockerBuild.CompressionType? Compression;
|
||||
/// <summary>
|
||||
/// Compression level from 0 to 22.
|
||||
/// </summary>
|
||||
public readonly int? CompressionLevel;
|
||||
/// <summary>
|
||||
/// Name image with `prefix@<digest>`, used for anonymous images.
|
||||
/// </summary>
|
||||
public readonly string? DanglingNamePrefix;
|
||||
/// <summary>
|
||||
/// Forcefully apply compression.
|
||||
/// </summary>
|
||||
public readonly bool? ForceCompression;
|
||||
/// <summary>
|
||||
/// Allow pushing to an insecure registry.
|
||||
/// </summary>
|
||||
public readonly bool? Insecure;
|
||||
/// <summary>
|
||||
/// Add additional canonical name (`name@<digest>`).
|
||||
/// </summary>
|
||||
public readonly bool? NameCanonical;
|
||||
/// <summary>
|
||||
/// Specify images names to export. This is overridden if tags are already specified.
|
||||
/// </summary>
|
||||
public readonly ImmutableArray<string> Names;
|
||||
/// <summary>
|
||||
/// Use OCI media types in exporter manifests.
|
||||
/// </summary>
|
||||
public readonly bool? OciMediaTypes;
|
||||
/// <summary>
|
||||
/// Push after creating the image. Defaults to `false`.
|
||||
/// </summary>
|
||||
public readonly bool? Push;
|
||||
/// <summary>
|
||||
/// Push image without name.
|
||||
/// </summary>
|
||||
public readonly bool? PushByDigest;
|
||||
/// <summary>
|
||||
/// Store resulting images to the worker's image store and ensure all of
|
||||
/// its blobs are in the content store.
|
||||
///
|
||||
/// Defaults to `true`.
|
||||
///
|
||||
/// Ignored if the worker doesn't have image store (when using OCI workers,
|
||||
/// for example).
|
||||
/// </summary>
|
||||
public readonly bool? Store;
|
||||
/// <summary>
|
||||
/// Unpack image after creation (for use with containerd). Defaults to
|
||||
/// `false`.
|
||||
/// </summary>
|
||||
public readonly bool? Unpack;
|
||||
|
||||
[OutputConstructor]
|
||||
private ExportImage(
|
||||
ImmutableDictionary<string, string>? annotations,
|
||||
|
||||
Pulumi.DockerBuild.CompressionType? compression,
|
||||
|
||||
int? compressionLevel,
|
||||
|
||||
string? danglingNamePrefix,
|
||||
|
||||
bool? forceCompression,
|
||||
|
||||
bool? insecure,
|
||||
|
||||
bool? nameCanonical,
|
||||
|
||||
ImmutableArray<string> names,
|
||||
|
||||
bool? ociMediaTypes,
|
||||
|
||||
bool? push,
|
||||
|
||||
bool? pushByDigest,
|
||||
|
||||
bool? store,
|
||||
|
||||
bool? unpack)
|
||||
{
|
||||
Annotations = annotations;
|
||||
Compression = compression;
|
||||
CompressionLevel = compressionLevel;
|
||||
DanglingNamePrefix = danglingNamePrefix;
|
||||
ForceCompression = forceCompression;
|
||||
Insecure = insecure;
|
||||
NameCanonical = nameCanonical;
|
||||
Names = names;
|
||||
OciMediaTypes = ociMediaTypes;
|
||||
Push = push;
|
||||
PushByDigest = pushByDigest;
|
||||
Store = store;
|
||||
Unpack = unpack;
|
||||
}
|
||||
}
|
||||
}
|
||||
27
sdk/dotnet/Outputs/ExportLocal.cs
generated
Normal file
27
sdk/dotnet/Outputs/ExportLocal.cs
generated
Normal file
@@ -0,0 +1,27 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class ExportLocal
|
||||
{
|
||||
/// <summary>
|
||||
/// Output path.
|
||||
/// </summary>
|
||||
public readonly string Dest;
|
||||
|
||||
[OutputConstructor]
|
||||
private ExportLocal(string dest)
|
||||
{
|
||||
Dest = dest;
|
||||
}
|
||||
}
|
||||
}
|
||||
77
sdk/dotnet/Outputs/ExportOCI.cs
generated
Normal file
77
sdk/dotnet/Outputs/ExportOCI.cs
generated
Normal file
@@ -0,0 +1,77 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class ExportOCI
|
||||
{
|
||||
/// <summary>
|
||||
/// Attach an arbitrary key/value annotation to the image.
|
||||
/// </summary>
|
||||
public readonly ImmutableDictionary<string, string>? Annotations;
|
||||
/// <summary>
|
||||
/// The compression type to use.
|
||||
/// </summary>
|
||||
public readonly Pulumi.DockerBuild.CompressionType? Compression;
|
||||
/// <summary>
|
||||
/// Compression level from 0 to 22.
|
||||
/// </summary>
|
||||
public readonly int? CompressionLevel;
|
||||
/// <summary>
|
||||
/// The local export path.
|
||||
/// </summary>
|
||||
public readonly string? Dest;
|
||||
/// <summary>
|
||||
/// Forcefully apply compression.
|
||||
/// </summary>
|
||||
public readonly bool? ForceCompression;
|
||||
/// <summary>
|
||||
/// Specify images names to export. This is overridden if tags are already specified.
|
||||
/// </summary>
|
||||
public readonly ImmutableArray<string> Names;
|
||||
/// <summary>
|
||||
/// Use OCI media types in exporter manifests.
|
||||
/// </summary>
|
||||
public readonly bool? OciMediaTypes;
|
||||
/// <summary>
|
||||
/// Bundle the output into a tarball layout.
|
||||
/// </summary>
|
||||
public readonly bool? Tar;
|
||||
|
||||
[OutputConstructor]
|
||||
private ExportOCI(
|
||||
ImmutableDictionary<string, string>? annotations,
|
||||
|
||||
Pulumi.DockerBuild.CompressionType? compression,
|
||||
|
||||
int? compressionLevel,
|
||||
|
||||
string? dest,
|
||||
|
||||
bool? forceCompression,
|
||||
|
||||
ImmutableArray<string> names,
|
||||
|
||||
bool? ociMediaTypes,
|
||||
|
||||
bool? tar)
|
||||
{
|
||||
Annotations = annotations;
|
||||
Compression = compression;
|
||||
CompressionLevel = compressionLevel;
|
||||
Dest = dest;
|
||||
ForceCompression = forceCompression;
|
||||
Names = names;
|
||||
OciMediaTypes = ociMediaTypes;
|
||||
Tar = tar;
|
||||
}
|
||||
}
|
||||
}
|
||||
119
sdk/dotnet/Outputs/ExportRegistry.cs
generated
Normal file
119
sdk/dotnet/Outputs/ExportRegistry.cs
generated
Normal file
@@ -0,0 +1,119 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class ExportRegistry
|
||||
{
|
||||
/// <summary>
|
||||
/// Attach an arbitrary key/value annotation to the image.
|
||||
/// </summary>
|
||||
public readonly ImmutableDictionary<string, string>? Annotations;
|
||||
/// <summary>
|
||||
/// The compression type to use.
|
||||
/// </summary>
|
||||
public readonly Pulumi.DockerBuild.CompressionType? Compression;
|
||||
/// <summary>
|
||||
/// Compression level from 0 to 22.
|
||||
/// </summary>
|
||||
public readonly int? CompressionLevel;
|
||||
/// <summary>
|
||||
/// Name image with `prefix@<digest>`, used for anonymous images.
|
||||
/// </summary>
|
||||
public readonly string? DanglingNamePrefix;
|
||||
/// <summary>
|
||||
/// Forcefully apply compression.
|
||||
/// </summary>
|
||||
public readonly bool? ForceCompression;
|
||||
/// <summary>
|
||||
/// Allow pushing to an insecure registry.
|
||||
/// </summary>
|
||||
public readonly bool? Insecure;
|
||||
/// <summary>
|
||||
/// Add additional canonical name (`name@<digest>`).
|
||||
/// </summary>
|
||||
public readonly bool? NameCanonical;
|
||||
/// <summary>
|
||||
/// Specify images names to export. This is overridden if tags are already specified.
|
||||
/// </summary>
|
||||
public readonly ImmutableArray<string> Names;
|
||||
/// <summary>
|
||||
/// Use OCI media types in exporter manifests.
|
||||
/// </summary>
|
||||
public readonly bool? OciMediaTypes;
|
||||
/// <summary>
|
||||
/// Push after creating the image. Defaults to `true`.
|
||||
/// </summary>
|
||||
public readonly bool? Push;
|
||||
/// <summary>
|
||||
/// Push image without name.
|
||||
/// </summary>
|
||||
public readonly bool? PushByDigest;
|
||||
/// <summary>
|
||||
/// Store resulting images to the worker's image store and ensure all of
|
||||
/// its blobs are in the content store.
|
||||
///
|
||||
/// Defaults to `true`.
|
||||
///
|
||||
/// Ignored if the worker doesn't have image store (when using OCI workers,
|
||||
/// for example).
|
||||
/// </summary>
|
||||
public readonly bool? Store;
|
||||
/// <summary>
|
||||
/// Unpack image after creation (for use with containerd). Defaults to
|
||||
/// `false`.
|
||||
/// </summary>
|
||||
public readonly bool? Unpack;
|
||||
|
||||
[OutputConstructor]
|
||||
private ExportRegistry(
|
||||
ImmutableDictionary<string, string>? annotations,
|
||||
|
||||
Pulumi.DockerBuild.CompressionType? compression,
|
||||
|
||||
int? compressionLevel,
|
||||
|
||||
string? danglingNamePrefix,
|
||||
|
||||
bool? forceCompression,
|
||||
|
||||
bool? insecure,
|
||||
|
||||
bool? nameCanonical,
|
||||
|
||||
ImmutableArray<string> names,
|
||||
|
||||
bool? ociMediaTypes,
|
||||
|
||||
bool? push,
|
||||
|
||||
bool? pushByDigest,
|
||||
|
||||
bool? store,
|
||||
|
||||
bool? unpack)
|
||||
{
|
||||
Annotations = annotations;
|
||||
Compression = compression;
|
||||
CompressionLevel = compressionLevel;
|
||||
DanglingNamePrefix = danglingNamePrefix;
|
||||
ForceCompression = forceCompression;
|
||||
Insecure = insecure;
|
||||
NameCanonical = nameCanonical;
|
||||
Names = names;
|
||||
OciMediaTypes = ociMediaTypes;
|
||||
Push = push;
|
||||
PushByDigest = pushByDigest;
|
||||
Store = store;
|
||||
Unpack = unpack;
|
||||
}
|
||||
}
|
||||
}
|
||||
27
sdk/dotnet/Outputs/ExportTar.cs
generated
Normal file
27
sdk/dotnet/Outputs/ExportTar.cs
generated
Normal file
@@ -0,0 +1,27 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class ExportTar
|
||||
{
|
||||
/// <summary>
|
||||
/// Output path.
|
||||
/// </summary>
|
||||
public readonly string Dest;
|
||||
|
||||
[OutputConstructor]
|
||||
private ExportTar(string dest)
|
||||
{
|
||||
Dest = dest;
|
||||
}
|
||||
}
|
||||
}
|
||||
42
sdk/dotnet/Outputs/Registry.cs
generated
Normal file
42
sdk/dotnet/Outputs/Registry.cs
generated
Normal file
@@ -0,0 +1,42 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class Registry
|
||||
{
|
||||
/// <summary>
|
||||
/// The registry's address (e.g. "docker.io").
|
||||
/// </summary>
|
||||
public readonly string Address;
|
||||
/// <summary>
|
||||
/// Password or token for the registry.
|
||||
/// </summary>
|
||||
public readonly string? Password;
|
||||
/// <summary>
|
||||
/// Username for the registry.
|
||||
/// </summary>
|
||||
public readonly string? Username;
|
||||
|
||||
[OutputConstructor]
|
||||
private Registry(
|
||||
string address,
|
||||
|
||||
string? password,
|
||||
|
||||
string? username)
|
||||
{
|
||||
Address = address;
|
||||
Password = password;
|
||||
Username = username;
|
||||
}
|
||||
}
|
||||
}
|
||||
45
sdk/dotnet/Outputs/SSH.cs
generated
Normal file
45
sdk/dotnet/Outputs/SSH.cs
generated
Normal file
@@ -0,0 +1,45 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.DockerBuild.Outputs
|
||||
{
|
||||
|
||||
[OutputType]
|
||||
public sealed class SSH
|
||||
{
|
||||
/// <summary>
|
||||
/// Useful for distinguishing different servers that are part of the same
|
||||
/// build.
|
||||
///
|
||||
/// A value of `default` is appropriate if only dealing with a single host.
|
||||
/// </summary>
|
||||
public readonly string Id;
|
||||
/// <summary>
|
||||
/// SSH agent socket or private keys to expose to the build under the given
|
||||
/// identifier.
|
||||
///
|
||||
/// Defaults to `[$SSH_AUTH_SOCK]`.
|
||||
///
|
||||
/// Note that your keys are **not** automatically added when using an
|
||||
/// agent. Run `ssh-add -l` locally to confirm which public keys are
|
||||
/// visible to the agent; these will be exposed to your build.
|
||||
/// </summary>
|
||||
public readonly ImmutableArray<string> Paths;
|
||||
|
||||
[OutputConstructor]
|
||||
private SSH(
|
||||
string id,
|
||||
|
||||
ImmutableArray<string> paths)
|
||||
{
|
||||
Id = id;
|
||||
Paths = paths;
|
||||
}
|
||||
}
|
||||
}
|
||||
29
sdk/dotnet/Provider.cs
generated
29
sdk/dotnet/Provider.cs
generated
@@ -7,11 +7,18 @@ using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.Dockerbuild
|
||||
namespace Pulumi.DockerBuild
|
||||
{
|
||||
[DockerbuildResourceType("pulumi:providers:dockerbuild")]
|
||||
[DockerBuildResourceType("pulumi:providers:docker-build")]
|
||||
public partial class Provider : global::Pulumi.ProviderResource
|
||||
{
|
||||
/// <summary>
|
||||
/// The build daemon's address.
|
||||
/// </summary>
|
||||
[Output("host")]
|
||||
public Output<string?> Host { get; private set; } = null!;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Create a Provider resource with the given unique name, arguments, and options.
|
||||
/// </summary>
|
||||
@@ -20,7 +27,7 @@ namespace Pulumi.Dockerbuild
|
||||
/// <param name="args">The arguments used to populate this resource's properties</param>
|
||||
/// <param name="options">A bag of options that control this resource's behavior</param>
|
||||
public Provider(string name, ProviderArgs? args = null, CustomResourceOptions? options = null)
|
||||
: base("dockerbuild", name, args ?? new ProviderArgs(), MakeResourceOptions(options, ""))
|
||||
: base("docker-build", name, args ?? new ProviderArgs(), MakeResourceOptions(options, ""))
|
||||
{
|
||||
}
|
||||
|
||||
@@ -29,7 +36,6 @@ namespace Pulumi.Dockerbuild
|
||||
var defaultOptions = new CustomResourceOptions
|
||||
{
|
||||
Version = Utilities.Version,
|
||||
PluginDownloadURL = "github.com/pulumi/pulumi-dockerbuild",
|
||||
};
|
||||
var merged = CustomResourceOptions.Merge(defaultOptions, options);
|
||||
// Override the ID if one was specified for consistency with other language SDKs.
|
||||
@@ -40,8 +46,23 @@ namespace Pulumi.Dockerbuild
|
||||
|
||||
public sealed class ProviderArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
/// <summary>
|
||||
/// The build daemon's address.
|
||||
/// </summary>
|
||||
[Input("host")]
|
||||
public Input<string>? Host { get; set; }
|
||||
|
||||
[Input("registries", json: true)]
|
||||
private InputList<Inputs.RegistryArgs>? _registries;
|
||||
public InputList<Inputs.RegistryArgs> Registries
|
||||
{
|
||||
get => _registries ?? (_registries = new InputList<Inputs.RegistryArgs>());
|
||||
set => _registries = value;
|
||||
}
|
||||
|
||||
public ProviderArgs()
|
||||
{
|
||||
Host = Utilities.GetEnv("DOCKER_HOST") ?? "";
|
||||
}
|
||||
public static new ProviderArgs Empty => new ProviderArgs();
|
||||
}
|
||||
|
||||
@@ -4,10 +4,10 @@
|
||||
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
|
||||
<Authors>pulumi</Authors>
|
||||
<Company>pulumi</Company>
|
||||
<Description>Description</Description>
|
||||
<PackageLicenseExpression></PackageLicenseExpression>
|
||||
<PackageProjectUrl>pulumi.com</PackageProjectUrl>
|
||||
<RepositoryUrl>https://github.com/pulumi/pulumi-dockerbuild</RepositoryUrl>
|
||||
<Description>A Pulumi provider for building modern Docker images with buildx and BuildKit.</Description>
|
||||
<PackageLicenseExpression>Apache-2.0</PackageLicenseExpression>
|
||||
<PackageProjectUrl>https://pulumi.com</PackageProjectUrl>
|
||||
<RepositoryUrl>https://github.com/pulumi/pulumi-docker-build</RepositoryUrl>
|
||||
<PackageIcon>logo.png</PackageIcon>
|
||||
|
||||
<TargetFramework>net6.0</TargetFramework>
|
||||
2
sdk/dotnet/README.md
generated
2
sdk/dotnet/README.md
generated
@@ -1 +1 @@
|
||||
Description
|
||||
A Pulumi provider for building modern Docker images with buildx and BuildKit.
|
||||
|
||||
75
sdk/dotnet/Random.cs
generated
75
sdk/dotnet/Random.cs
generated
@@ -1,75 +0,0 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.Immutable;
|
||||
using System.Threading.Tasks;
|
||||
using Pulumi.Serialization;
|
||||
|
||||
namespace Pulumi.Dockerbuild
|
||||
{
|
||||
[DockerbuildResourceType("dockerbuild:index:Random")]
|
||||
public partial class Random : global::Pulumi.CustomResource
|
||||
{
|
||||
[Output("length")]
|
||||
public Output<int> Length { get; private set; } = null!;
|
||||
|
||||
[Output("result")]
|
||||
public Output<string> Result { get; private set; } = null!;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Create a Random resource with the given unique name, arguments, and options.
|
||||
/// </summary>
|
||||
///
|
||||
/// <param name="name">The unique name of the resource</param>
|
||||
/// <param name="args">The arguments used to populate this resource's properties</param>
|
||||
/// <param name="options">A bag of options that control this resource's behavior</param>
|
||||
public Random(string name, RandomArgs args, CustomResourceOptions? options = null)
|
||||
: base("dockerbuild:index:Random", name, args ?? new RandomArgs(), MakeResourceOptions(options, ""))
|
||||
{
|
||||
}
|
||||
|
||||
private Random(string name, Input<string> id, CustomResourceOptions? options = null)
|
||||
: base("dockerbuild:index:Random", name, null, MakeResourceOptions(options, id))
|
||||
{
|
||||
}
|
||||
|
||||
private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? options, Input<string>? id)
|
||||
{
|
||||
var defaultOptions = new CustomResourceOptions
|
||||
{
|
||||
Version = Utilities.Version,
|
||||
PluginDownloadURL = "github.com/pulumi/pulumi-dockerbuild",
|
||||
};
|
||||
var merged = CustomResourceOptions.Merge(defaultOptions, options);
|
||||
// Override the ID if one was specified for consistency with other language SDKs.
|
||||
merged.Id = id ?? merged.Id;
|
||||
return merged;
|
||||
}
|
||||
/// <summary>
|
||||
/// Get an existing Random resource's state with the given name, ID, and optional extra
|
||||
/// properties used to qualify the lookup.
|
||||
/// </summary>
|
||||
///
|
||||
/// <param name="name">The unique name of the resulting resource.</param>
|
||||
/// <param name="id">The unique provider ID of the resource to lookup.</param>
|
||||
/// <param name="options">A bag of options that control this resource's behavior</param>
|
||||
public static Random Get(string name, Input<string> id, CustomResourceOptions? options = null)
|
||||
{
|
||||
return new Random(name, id, options);
|
||||
}
|
||||
}
|
||||
|
||||
public sealed class RandomArgs : global::Pulumi.ResourceArgs
|
||||
{
|
||||
[Input("length", required: true)]
|
||||
public Input<int> Length { get; set; } = null!;
|
||||
|
||||
public RandomArgs()
|
||||
{
|
||||
}
|
||||
public static new RandomArgs Empty => new RandomArgs();
|
||||
}
|
||||
}
|
||||
9
sdk/dotnet/Utilities.cs
generated
9
sdk/dotnet/Utilities.cs
generated
@@ -1,7 +1,7 @@
|
||||
// *** WARNING: this file was generated by pulumi. ***
|
||||
// *** Do not edit by hand unless you're certain you know what you are doing! ***
|
||||
|
||||
namespace Pulumi.Dockerbuild
|
||||
namespace Pulumi.DockerBuild
|
||||
{
|
||||
static class Utilities
|
||||
{
|
||||
@@ -53,7 +53,6 @@ namespace Pulumi.Dockerbuild
|
||||
{
|
||||
var dst = src ?? new global::Pulumi.InvokeOptions{};
|
||||
dst.Version = src?.Version ?? Version;
|
||||
dst.PluginDownloadURL = src?.PluginDownloadURL ?? "github.com/pulumi/pulumi-dockerbuild";
|
||||
return dst;
|
||||
}
|
||||
|
||||
@@ -63,7 +62,7 @@ namespace Pulumi.Dockerbuild
|
||||
static Utilities()
|
||||
{
|
||||
var assembly = global::System.Reflection.IntrospectionExtensions.GetTypeInfo(typeof(Utilities)).Assembly;
|
||||
using var stream = assembly.GetManifestResourceStream("Pulumi.Dockerbuild.version.txt");
|
||||
using var stream = assembly.GetManifestResourceStream("Pulumi.DockerBuild.version.txt");
|
||||
using var reader = new global::System.IO.StreamReader(stream ?? throw new global::System.NotSupportedException("Missing embedded version.txt file"));
|
||||
version = reader.ReadToEnd().Trim();
|
||||
var parts = version.Split("\n");
|
||||
@@ -75,9 +74,9 @@ namespace Pulumi.Dockerbuild
|
||||
}
|
||||
}
|
||||
|
||||
internal sealed class DockerbuildResourceTypeAttribute : global::Pulumi.ResourceTypeAttribute
|
||||
internal sealed class DockerBuildResourceTypeAttribute : global::Pulumi.ResourceTypeAttribute
|
||||
{
|
||||
public DockerbuildResourceTypeAttribute(string type) : base(type, Utilities.Version)
|
||||
public DockerBuildResourceTypeAttribute(string type) : base(type, Utilities.Version)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
||||
3
sdk/dotnet/pulumi-plugin.json
generated
3
sdk/dotnet/pulumi-plugin.json
generated
@@ -1,5 +1,4 @@
|
||||
{
|
||||
"resource": true,
|
||||
"name": "dockerbuild",
|
||||
"server": "github.com/pulumi/pulumi-dockerbuild"
|
||||
"name": "docker-build"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user