published on Saturday, Sep 12, 2026 by Pulumi
published on Saturday, Sep 12, 2026 by Pulumi
Resource for creating and managing Harness Registries.
Note:
In Harness Artifact Registry, a Virtual registry is functionally equivalent to what is commonly referred to as a Local registry in other systems.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as harness from "@pulumi/harness";
// Example of a Virtual Registry
const virtualRegistry = new harness.platform.HarRegistry("virtual_registry", {
identifier: "virtual_docker_registry",
description: "Virtual Docker Registry",
spaceRef: "accountId/orgId/projectId",
packageType: "DOCKER",
configs: [{
type: "VIRTUAL",
upstreamProxies: [
"registry1",
"registry2",
],
}],
parentRef: "accountId/orgId/projectId",
});
// Example of an Upstream Registry with Authentication
const upstreamRegistry = new harness.platform.HarRegistry("upstream_registry", {
identifier: "upstream_helm_registry",
description: "Upstream Helm Registry",
spaceRef: "accountId/orgId/projectId",
packageType: "HELM",
configs: [{
type: "UPSTREAM",
source: "Custom",
url: "https://helm.sh",
auths: [{
authType: "UserPassword",
userName: "registry_user",
secretIdentifier: "registry_password",
secretSpacePath: "accountId/orgId/projectId",
}],
}],
parentRef: "accountId/orgId/projectId",
});
// Example of an Upstream Go Registry (GoProxy source needs no url)
const goUpstream = new harness.platform.HarRegistry("go_upstream", {
identifier: "upstream_go_registry",
description: "Upstream Go Registry",
spaceRef: "accountId/orgId/projectId",
packageType: "GO",
configs: [{
type: "UPSTREAM",
source: "GoProxy",
authType: "Anonymous",
}],
parentRef: "accountId/orgId/projectId",
});
// Example of an Upstream Conda Registry (Anaconda source needs no url)
const condaUpstream = new harness.platform.HarRegistry("conda_upstream", {
identifier: "upstream_conda_registry",
description: "Upstream Conda Registry",
spaceRef: "accountId/orgId/projectId",
packageType: "CONDA",
configs: [{
type: "UPSTREAM",
source: "Anaconda",
authType: "Anonymous",
}],
parentRef: "accountId/orgId/projectId",
});
// Example of an Upstream Helm HTTP Registry (HelmChartRepo source requires url)
const helmHttpUpstream = new harness.platform.HarRegistry("helm_http_upstream", {
identifier: "upstream_helm_http_registry",
description: "Upstream Helm HTTP Registry",
spaceRef: "accountId/orgId/projectId",
packageType: "HELM_HTTP",
configs: [{
type: "UPSTREAM",
source: "HelmChartRepo",
url: "https://charts.bitnami.com/bitnami",
authType: "Anonymous",
}],
parentRef: "accountId/orgId/projectId",
});
// Example of a Virtual Debian Registry with Debian-specific configuration
const debianVirtual = new harness.platform.HarRegistry("debian_virtual", {
identifier: "virtual_debian_registry",
description: "Virtual Debian Registry",
spaceRef: "accountId/orgId/projectId",
packageType: "DEBIAN",
configs: [{
type: "VIRTUAL",
upstreamProxies: ["debian_upstream_registry"],
debianConfig: {
remoteIndexedArchitectures: [
"amd64",
"arm64",
],
optionalIndexCompressionFormats: [".xz"],
},
}],
parentRef: "accountId/orgId/projectId",
});
// Example of an Upstream Custom Debian Registry (Debian source needs url)
const debianUpstream = new harness.platform.HarRegistry("debian_upstream", {
identifier: "upstream_debian_registry",
description: "Upstream Debian Registry",
spaceRef: "accountId/orgId/projectId",
packageType: "DEBIAN",
configs: [{
type: "UPSTREAM",
source: "Custom",
url: "http://deb.debian.org/debian",
authType: "Anonymous",
}],
parentRef: "accountId/orgId/projectId",
});
// Example of an Upstream Python Registry with a custom remote URL suffix
const pythonUpstream = new harness.platform.HarRegistry("python_upstream", {
identifier: "upstream_python_registry",
description: "Upstream Python Registry",
spaceRef: "accountId/orgId/projectId",
packageType: "PYTHON",
configs: [{
type: "UPSTREAM",
source: "Custom",
url: "https://pypi.example.com",
remoteUrlSuffix: "simple",
authType: "Anonymous",
}],
parentRef: "accountId/orgId/projectId",
});
// Example of an Upstream Conan Registry (ConanCenter source needs no url)
const conanUpstream = new harness.platform.HarRegistry("conan_upstream", {
identifier: "upstream_conan_registry",
description: "Upstream Conan Registry",
spaceRef: "accountId/orgId/projectId",
packageType: "CONAN",
configs: [{
type: "UPSTREAM",
source: "ConanCenter",
authType: "Anonymous",
}],
parentRef: "accountId/orgId/projectId",
});
// Example of an Upstream Ruby Registry (RubyGems source needs no url)
const rubygemsUpstream = new harness.platform.HarRegistry("rubygems_upstream", {
identifier: "upstream_ruby_registry",
description: "Upstream Ruby Registry",
spaceRef: "accountId/orgId/projectId",
packageType: "RUBY",
configs: [{
type: "UPSTREAM",
source: "RubyGems",
authType: "Anonymous",
}],
parentRef: "accountId/orgId/projectId",
});
// Example of a Virtual Terraform Registry
const terraformVirtual = new harness.platform.HarRegistry("terraform_virtual", {
identifier: "virtual_terraform_registry",
description: "Virtual Terraform Registry",
spaceRef: "accountId/orgId/projectId",
packageType: "TERRAFORM",
configs: [{
type: "VIRTUAL",
}],
parentRef: "accountId/orgId/projectId",
});
// Example of a Virtual CRAN Registry
const cranVirtual = new harness.platform.HarRegistry("cran_virtual", {
identifier: "virtual_cran_registry",
description: "Virtual CRAN Registry",
spaceRef: "accountId/orgId/projectId",
packageType: "CRAN",
configs: [{
type: "VIRTUAL",
}],
parentRef: "accountId/orgId/projectId",
});
// Example of an Upstream CRAN Registry (CRAN source needs no url)
const cranUpstream = new harness.platform.HarRegistry("cran_upstream", {
identifier: "upstream_cran_registry",
description: "Upstream CRAN Registry",
spaceRef: "accountId/orgId/projectId",
packageType: "CRAN",
configs: [{
type: "UPSTREAM",
source: "CRAN",
authType: "Anonymous",
}],
parentRef: "accountId/orgId/projectId",
});
// Example of a Virtual Alpine Registry
const alpineVirtual = new harness.platform.HarRegistry("alpine_virtual", {
identifier: "virtual_alpine_registry",
description: "Virtual Alpine Registry",
spaceRef: "accountId/orgId/projectId",
packageType: "ALPINE",
configs: [{
type: "VIRTUAL",
}],
parentRef: "accountId/orgId/projectId",
});
// Example of an Upstream Alpine Registry (Alpine source needs no url)
const alpineUpstream = new harness.platform.HarRegistry("alpine_upstream", {
identifier: "upstream_alpine_registry",
description: "Upstream Alpine Registry",
spaceRef: "accountId/orgId/projectId",
packageType: "ALPINE",
configs: [{
type: "UPSTREAM",
source: "Alpine",
authType: "Anonymous",
}],
parentRef: "accountId/orgId/projectId",
});
// Example of a Virtual Wolfi Registry
const wolfiVirtual = new harness.platform.HarRegistry("wolfi_virtual", {
identifier: "virtual_wolfi_registry",
description: "Virtual Wolfi Registry",
spaceRef: "accountId/orgId/projectId",
packageType: "WOLFI",
configs: [{
type: "VIRTUAL",
}],
parentRef: "accountId/orgId/projectId",
});
// Example of an Upstream Wolfi Registry (Wolfi source needs no url)
const wolfiUpstream = new harness.platform.HarRegistry("wolfi_upstream", {
identifier: "upstream_wolfi_registry",
description: "Upstream Wolfi Registry",
spaceRef: "accountId/orgId/projectId",
packageType: "WOLFI",
configs: [{
type: "UPSTREAM",
source: "Wolfi",
authType: "Anonymous",
}],
parentRef: "accountId/orgId/projectId",
});
import pulumi
import pulumi_harness as harness
# Example of a Virtual Registry
virtual_registry = harness.platform.HarRegistry("virtual_registry",
identifier="virtual_docker_registry",
description="Virtual Docker Registry",
space_ref="accountId/orgId/projectId",
package_type="DOCKER",
configs=[{
"type": "VIRTUAL",
"upstream_proxies": [
"registry1",
"registry2",
],
}],
parent_ref="accountId/orgId/projectId")
# Example of an Upstream Registry with Authentication
upstream_registry = harness.platform.HarRegistry("upstream_registry",
identifier="upstream_helm_registry",
description="Upstream Helm Registry",
space_ref="accountId/orgId/projectId",
package_type="HELM",
configs=[{
"type": "UPSTREAM",
"source": "Custom",
"url": "https://helm.sh",
"auths": [{
"auth_type": "UserPassword",
"user_name": "registry_user",
"secret_identifier": "registry_password",
"secret_space_path": "accountId/orgId/projectId",
}],
}],
parent_ref="accountId/orgId/projectId")
# Example of an Upstream Go Registry (GoProxy source needs no url)
go_upstream = harness.platform.HarRegistry("go_upstream",
identifier="upstream_go_registry",
description="Upstream Go Registry",
space_ref="accountId/orgId/projectId",
package_type="GO",
configs=[{
"type": "UPSTREAM",
"source": "GoProxy",
"auth_type": "Anonymous",
}],
parent_ref="accountId/orgId/projectId")
# Example of an Upstream Conda Registry (Anaconda source needs no url)
conda_upstream = harness.platform.HarRegistry("conda_upstream",
identifier="upstream_conda_registry",
description="Upstream Conda Registry",
space_ref="accountId/orgId/projectId",
package_type="CONDA",
configs=[{
"type": "UPSTREAM",
"source": "Anaconda",
"auth_type": "Anonymous",
}],
parent_ref="accountId/orgId/projectId")
# Example of an Upstream Helm HTTP Registry (HelmChartRepo source requires url)
helm_http_upstream = harness.platform.HarRegistry("helm_http_upstream",
identifier="upstream_helm_http_registry",
description="Upstream Helm HTTP Registry",
space_ref="accountId/orgId/projectId",
package_type="HELM_HTTP",
configs=[{
"type": "UPSTREAM",
"source": "HelmChartRepo",
"url": "https://charts.bitnami.com/bitnami",
"auth_type": "Anonymous",
}],
parent_ref="accountId/orgId/projectId")
# Example of a Virtual Debian Registry with Debian-specific configuration
debian_virtual = harness.platform.HarRegistry("debian_virtual",
identifier="virtual_debian_registry",
description="Virtual Debian Registry",
space_ref="accountId/orgId/projectId",
package_type="DEBIAN",
configs=[{
"type": "VIRTUAL",
"upstream_proxies": ["debian_upstream_registry"],
"debian_config": {
"remote_indexed_architectures": [
"amd64",
"arm64",
],
"optional_index_compression_formats": [".xz"],
},
}],
parent_ref="accountId/orgId/projectId")
# Example of an Upstream Custom Debian Registry (Debian source needs url)
debian_upstream = harness.platform.HarRegistry("debian_upstream",
identifier="upstream_debian_registry",
description="Upstream Debian Registry",
space_ref="accountId/orgId/projectId",
package_type="DEBIAN",
configs=[{
"type": "UPSTREAM",
"source": "Custom",
"url": "http://deb.debian.org/debian",
"auth_type": "Anonymous",
}],
parent_ref="accountId/orgId/projectId")
# Example of an Upstream Python Registry with a custom remote URL suffix
python_upstream = harness.platform.HarRegistry("python_upstream",
identifier="upstream_python_registry",
description="Upstream Python Registry",
space_ref="accountId/orgId/projectId",
package_type="PYTHON",
configs=[{
"type": "UPSTREAM",
"source": "Custom",
"url": "https://pypi.example.com",
"remote_url_suffix": "simple",
"auth_type": "Anonymous",
}],
parent_ref="accountId/orgId/projectId")
# Example of an Upstream Conan Registry (ConanCenter source needs no url)
conan_upstream = harness.platform.HarRegistry("conan_upstream",
identifier="upstream_conan_registry",
description="Upstream Conan Registry",
space_ref="accountId/orgId/projectId",
package_type="CONAN",
configs=[{
"type": "UPSTREAM",
"source": "ConanCenter",
"auth_type": "Anonymous",
}],
parent_ref="accountId/orgId/projectId")
# Example of an Upstream Ruby Registry (RubyGems source needs no url)
rubygems_upstream = harness.platform.HarRegistry("rubygems_upstream",
identifier="upstream_ruby_registry",
description="Upstream Ruby Registry",
space_ref="accountId/orgId/projectId",
package_type="RUBY",
configs=[{
"type": "UPSTREAM",
"source": "RubyGems",
"auth_type": "Anonymous",
}],
parent_ref="accountId/orgId/projectId")
# Example of a Virtual Terraform Registry
terraform_virtual = harness.platform.HarRegistry("terraform_virtual",
identifier="virtual_terraform_registry",
description="Virtual Terraform Registry",
space_ref="accountId/orgId/projectId",
package_type="TERRAFORM",
configs=[{
"type": "VIRTUAL",
}],
parent_ref="accountId/orgId/projectId")
# Example of a Virtual CRAN Registry
cran_virtual = harness.platform.HarRegistry("cran_virtual",
identifier="virtual_cran_registry",
description="Virtual CRAN Registry",
space_ref="accountId/orgId/projectId",
package_type="CRAN",
configs=[{
"type": "VIRTUAL",
}],
parent_ref="accountId/orgId/projectId")
# Example of an Upstream CRAN Registry (CRAN source needs no url)
cran_upstream = harness.platform.HarRegistry("cran_upstream",
identifier="upstream_cran_registry",
description="Upstream CRAN Registry",
space_ref="accountId/orgId/projectId",
package_type="CRAN",
configs=[{
"type": "UPSTREAM",
"source": "CRAN",
"auth_type": "Anonymous",
}],
parent_ref="accountId/orgId/projectId")
# Example of a Virtual Alpine Registry
alpine_virtual = harness.platform.HarRegistry("alpine_virtual",
identifier="virtual_alpine_registry",
description="Virtual Alpine Registry",
space_ref="accountId/orgId/projectId",
package_type="ALPINE",
configs=[{
"type": "VIRTUAL",
}],
parent_ref="accountId/orgId/projectId")
# Example of an Upstream Alpine Registry (Alpine source needs no url)
alpine_upstream = harness.platform.HarRegistry("alpine_upstream",
identifier="upstream_alpine_registry",
description="Upstream Alpine Registry",
space_ref="accountId/orgId/projectId",
package_type="ALPINE",
configs=[{
"type": "UPSTREAM",
"source": "Alpine",
"auth_type": "Anonymous",
}],
parent_ref="accountId/orgId/projectId")
# Example of a Virtual Wolfi Registry
wolfi_virtual = harness.platform.HarRegistry("wolfi_virtual",
identifier="virtual_wolfi_registry",
description="Virtual Wolfi Registry",
space_ref="accountId/orgId/projectId",
package_type="WOLFI",
configs=[{
"type": "VIRTUAL",
}],
parent_ref="accountId/orgId/projectId")
# Example of an Upstream Wolfi Registry (Wolfi source needs no url)
wolfi_upstream = harness.platform.HarRegistry("wolfi_upstream",
identifier="upstream_wolfi_registry",
description="Upstream Wolfi Registry",
space_ref="accountId/orgId/projectId",
package_type="WOLFI",
configs=[{
"type": "UPSTREAM",
"source": "Wolfi",
"auth_type": "Anonymous",
}],
parent_ref="accountId/orgId/projectId")
package main
import (
"github.com/pulumi/pulumi-harness/sdk/go/harness/platform"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
// Example of a Virtual Registry
_, err := platform.NewHarRegistry(ctx, "virtual_registry", &platform.HarRegistryArgs{
Identifier: pulumi.String("virtual_docker_registry"),
Description: pulumi.String("Virtual Docker Registry"),
SpaceRef: pulumi.String("accountId/orgId/projectId"),
PackageType: pulumi.String("DOCKER"),
Configs: platform.HarRegistryConfigArray{
&platform.HarRegistryConfigArgs{
Type: pulumi.String("VIRTUAL"),
UpstreamProxies: pulumi.StringArray{
pulumi.String("registry1"),
pulumi.String("registry2"),
},
},
},
ParentRef: pulumi.String("accountId/orgId/projectId"),
})
if err != nil {
return err
}
// Example of an Upstream Registry with Authentication
_, err = platform.NewHarRegistry(ctx, "upstream_registry", &platform.HarRegistryArgs{
Identifier: pulumi.String("upstream_helm_registry"),
Description: pulumi.String("Upstream Helm Registry"),
SpaceRef: pulumi.String("accountId/orgId/projectId"),
PackageType: pulumi.String("HELM"),
Configs: platform.HarRegistryConfigArray{
&platform.HarRegistryConfigArgs{
Type: pulumi.String("UPSTREAM"),
Source: pulumi.String("Custom"),
Url: pulumi.String("https://helm.sh"),
Auths: platform.HarRegistryConfigAuthArray{
&platform.HarRegistryConfigAuthArgs{
AuthType: pulumi.String("UserPassword"),
UserName: pulumi.String("registry_user"),
SecretIdentifier: pulumi.String("registry_password"),
SecretSpacePath: pulumi.String("accountId/orgId/projectId"),
},
},
},
},
ParentRef: pulumi.String("accountId/orgId/projectId"),
})
if err != nil {
return err
}
// Example of an Upstream Go Registry (GoProxy source needs no url)
_, err = platform.NewHarRegistry(ctx, "go_upstream", &platform.HarRegistryArgs{
Identifier: pulumi.String("upstream_go_registry"),
Description: pulumi.String("Upstream Go Registry"),
SpaceRef: pulumi.String("accountId/orgId/projectId"),
PackageType: pulumi.String("GO"),
Configs: platform.HarRegistryConfigArray{
&platform.HarRegistryConfigArgs{
Type: pulumi.String("UPSTREAM"),
Source: pulumi.String("GoProxy"),
AuthType: pulumi.String("Anonymous"),
},
},
ParentRef: pulumi.String("accountId/orgId/projectId"),
})
if err != nil {
return err
}
// Example of an Upstream Conda Registry (Anaconda source needs no url)
_, err = platform.NewHarRegistry(ctx, "conda_upstream", &platform.HarRegistryArgs{
Identifier: pulumi.String("upstream_conda_registry"),
Description: pulumi.String("Upstream Conda Registry"),
SpaceRef: pulumi.String("accountId/orgId/projectId"),
PackageType: pulumi.String("CONDA"),
Configs: platform.HarRegistryConfigArray{
&platform.HarRegistryConfigArgs{
Type: pulumi.String("UPSTREAM"),
Source: pulumi.String("Anaconda"),
AuthType: pulumi.String("Anonymous"),
},
},
ParentRef: pulumi.String("accountId/orgId/projectId"),
})
if err != nil {
return err
}
// Example of an Upstream Helm HTTP Registry (HelmChartRepo source requires url)
_, err = platform.NewHarRegistry(ctx, "helm_http_upstream", &platform.HarRegistryArgs{
Identifier: pulumi.String("upstream_helm_http_registry"),
Description: pulumi.String("Upstream Helm HTTP Registry"),
SpaceRef: pulumi.String("accountId/orgId/projectId"),
PackageType: pulumi.String("HELM_HTTP"),
Configs: platform.HarRegistryConfigArray{
&platform.HarRegistryConfigArgs{
Type: pulumi.String("UPSTREAM"),
Source: pulumi.String("HelmChartRepo"),
Url: pulumi.String("https://charts.bitnami.com/bitnami"),
AuthType: pulumi.String("Anonymous"),
},
},
ParentRef: pulumi.String("accountId/orgId/projectId"),
})
if err != nil {
return err
}
// Example of a Virtual Debian Registry with Debian-specific configuration
_, err = platform.NewHarRegistry(ctx, "debian_virtual", &platform.HarRegistryArgs{
Identifier: pulumi.String("virtual_debian_registry"),
Description: pulumi.String("Virtual Debian Registry"),
SpaceRef: pulumi.String("accountId/orgId/projectId"),
PackageType: pulumi.String("DEBIAN"),
Configs: platform.HarRegistryConfigArray{
&platform.HarRegistryConfigArgs{
Type: pulumi.String("VIRTUAL"),
UpstreamProxies: pulumi.StringArray{
pulumi.String("debian_upstream_registry"),
},
DebianConfig: &platform.HarRegistryConfigDebianConfigArgs{
RemoteIndexedArchitectures: pulumi.StringArray{
pulumi.String("amd64"),
pulumi.String("arm64"),
},
OptionalIndexCompressionFormats: pulumi.StringArray{
pulumi.String(".xz"),
},
},
},
},
ParentRef: pulumi.String("accountId/orgId/projectId"),
})
if err != nil {
return err
}
// Example of an Upstream Custom Debian Registry (Debian source needs url)
_, err = platform.NewHarRegistry(ctx, "debian_upstream", &platform.HarRegistryArgs{
Identifier: pulumi.String("upstream_debian_registry"),
Description: pulumi.String("Upstream Debian Registry"),
SpaceRef: pulumi.String("accountId/orgId/projectId"),
PackageType: pulumi.String("DEBIAN"),
Configs: platform.HarRegistryConfigArray{
&platform.HarRegistryConfigArgs{
Type: pulumi.String("UPSTREAM"),
Source: pulumi.String("Custom"),
Url: pulumi.String("http://deb.debian.org/debian"),
AuthType: pulumi.String("Anonymous"),
},
},
ParentRef: pulumi.String("accountId/orgId/projectId"),
})
if err != nil {
return err
}
// Example of an Upstream Python Registry with a custom remote URL suffix
_, err = platform.NewHarRegistry(ctx, "python_upstream", &platform.HarRegistryArgs{
Identifier: pulumi.String("upstream_python_registry"),
Description: pulumi.String("Upstream Python Registry"),
SpaceRef: pulumi.String("accountId/orgId/projectId"),
PackageType: pulumi.String("PYTHON"),
Configs: platform.HarRegistryConfigArray{
&platform.HarRegistryConfigArgs{
Type: pulumi.String("UPSTREAM"),
Source: pulumi.String("Custom"),
Url: pulumi.String("https://pypi.example.com"),
RemoteUrlSuffix: pulumi.String("simple"),
AuthType: pulumi.String("Anonymous"),
},
},
ParentRef: pulumi.String("accountId/orgId/projectId"),
})
if err != nil {
return err
}
// Example of an Upstream Conan Registry (ConanCenter source needs no url)
_, err = platform.NewHarRegistry(ctx, "conan_upstream", &platform.HarRegistryArgs{
Identifier: pulumi.String("upstream_conan_registry"),
Description: pulumi.String("Upstream Conan Registry"),
SpaceRef: pulumi.String("accountId/orgId/projectId"),
PackageType: pulumi.String("CONAN"),
Configs: platform.HarRegistryConfigArray{
&platform.HarRegistryConfigArgs{
Type: pulumi.String("UPSTREAM"),
Source: pulumi.String("ConanCenter"),
AuthType: pulumi.String("Anonymous"),
},
},
ParentRef: pulumi.String("accountId/orgId/projectId"),
})
if err != nil {
return err
}
// Example of an Upstream Ruby Registry (RubyGems source needs no url)
_, err = platform.NewHarRegistry(ctx, "rubygems_upstream", &platform.HarRegistryArgs{
Identifier: pulumi.String("upstream_ruby_registry"),
Description: pulumi.String("Upstream Ruby Registry"),
SpaceRef: pulumi.String("accountId/orgId/projectId"),
PackageType: pulumi.String("RUBY"),
Configs: platform.HarRegistryConfigArray{
&platform.HarRegistryConfigArgs{
Type: pulumi.String("UPSTREAM"),
Source: pulumi.String("RubyGems"),
AuthType: pulumi.String("Anonymous"),
},
},
ParentRef: pulumi.String("accountId/orgId/projectId"),
})
if err != nil {
return err
}
// Example of a Virtual Terraform Registry
_, err = platform.NewHarRegistry(ctx, "terraform_virtual", &platform.HarRegistryArgs{
Identifier: pulumi.String("virtual_terraform_registry"),
Description: pulumi.String("Virtual Terraform Registry"),
SpaceRef: pulumi.String("accountId/orgId/projectId"),
PackageType: pulumi.String("TERRAFORM"),
Configs: platform.HarRegistryConfigArray{
&platform.HarRegistryConfigArgs{
Type: pulumi.String("VIRTUAL"),
},
},
ParentRef: pulumi.String("accountId/orgId/projectId"),
})
if err != nil {
return err
}
// Example of a Virtual CRAN Registry
_, err = platform.NewHarRegistry(ctx, "cran_virtual", &platform.HarRegistryArgs{
Identifier: pulumi.String("virtual_cran_registry"),
Description: pulumi.String("Virtual CRAN Registry"),
SpaceRef: pulumi.String("accountId/orgId/projectId"),
PackageType: pulumi.String("CRAN"),
Configs: platform.HarRegistryConfigArray{
&platform.HarRegistryConfigArgs{
Type: pulumi.String("VIRTUAL"),
},
},
ParentRef: pulumi.String("accountId/orgId/projectId"),
})
if err != nil {
return err
}
// Example of an Upstream CRAN Registry (CRAN source needs no url)
_, err = platform.NewHarRegistry(ctx, "cran_upstream", &platform.HarRegistryArgs{
Identifier: pulumi.String("upstream_cran_registry"),
Description: pulumi.String("Upstream CRAN Registry"),
SpaceRef: pulumi.String("accountId/orgId/projectId"),
PackageType: pulumi.String("CRAN"),
Configs: platform.HarRegistryConfigArray{
&platform.HarRegistryConfigArgs{
Type: pulumi.String("UPSTREAM"),
Source: pulumi.String("CRAN"),
AuthType: pulumi.String("Anonymous"),
},
},
ParentRef: pulumi.String("accountId/orgId/projectId"),
})
if err != nil {
return err
}
// Example of a Virtual Alpine Registry
_, err = platform.NewHarRegistry(ctx, "alpine_virtual", &platform.HarRegistryArgs{
Identifier: pulumi.String("virtual_alpine_registry"),
Description: pulumi.String("Virtual Alpine Registry"),
SpaceRef: pulumi.String("accountId/orgId/projectId"),
PackageType: pulumi.String("ALPINE"),
Configs: platform.HarRegistryConfigArray{
&platform.HarRegistryConfigArgs{
Type: pulumi.String("VIRTUAL"),
},
},
ParentRef: pulumi.String("accountId/orgId/projectId"),
})
if err != nil {
return err
}
// Example of an Upstream Alpine Registry (Alpine source needs no url)
_, err = platform.NewHarRegistry(ctx, "alpine_upstream", &platform.HarRegistryArgs{
Identifier: pulumi.String("upstream_alpine_registry"),
Description: pulumi.String("Upstream Alpine Registry"),
SpaceRef: pulumi.String("accountId/orgId/projectId"),
PackageType: pulumi.String("ALPINE"),
Configs: platform.HarRegistryConfigArray{
&platform.HarRegistryConfigArgs{
Type: pulumi.String("UPSTREAM"),
Source: pulumi.String("Alpine"),
AuthType: pulumi.String("Anonymous"),
},
},
ParentRef: pulumi.String("accountId/orgId/projectId"),
})
if err != nil {
return err
}
// Example of a Virtual Wolfi Registry
_, err = platform.NewHarRegistry(ctx, "wolfi_virtual", &platform.HarRegistryArgs{
Identifier: pulumi.String("virtual_wolfi_registry"),
Description: pulumi.String("Virtual Wolfi Registry"),
SpaceRef: pulumi.String("accountId/orgId/projectId"),
PackageType: pulumi.String("WOLFI"),
Configs: platform.HarRegistryConfigArray{
&platform.HarRegistryConfigArgs{
Type: pulumi.String("VIRTUAL"),
},
},
ParentRef: pulumi.String("accountId/orgId/projectId"),
})
if err != nil {
return err
}
// Example of an Upstream Wolfi Registry (Wolfi source needs no url)
_, err = platform.NewHarRegistry(ctx, "wolfi_upstream", &platform.HarRegistryArgs{
Identifier: pulumi.String("upstream_wolfi_registry"),
Description: pulumi.String("Upstream Wolfi Registry"),
SpaceRef: pulumi.String("accountId/orgId/projectId"),
PackageType: pulumi.String("WOLFI"),
Configs: platform.HarRegistryConfigArray{
&platform.HarRegistryConfigArgs{
Type: pulumi.String("UPSTREAM"),
Source: pulumi.String("Wolfi"),
AuthType: pulumi.String("Anonymous"),
},
},
ParentRef: pulumi.String("accountId/orgId/projectId"),
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Harness = Pulumi.Harness;
return await Deployment.RunAsync(() =>
{
// Example of a Virtual Registry
var virtualRegistry = new Harness.Platform.HarRegistry("virtual_registry", new()
{
Identifier = "virtual_docker_registry",
Description = "Virtual Docker Registry",
SpaceRef = "accountId/orgId/projectId",
PackageType = "DOCKER",
Configs = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigArgs
{
Type = "VIRTUAL",
UpstreamProxies = new[]
{
"registry1",
"registry2",
},
},
},
ParentRef = "accountId/orgId/projectId",
});
// Example of an Upstream Registry with Authentication
var upstreamRegistry = new Harness.Platform.HarRegistry("upstream_registry", new()
{
Identifier = "upstream_helm_registry",
Description = "Upstream Helm Registry",
SpaceRef = "accountId/orgId/projectId",
PackageType = "HELM",
Configs = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigArgs
{
Type = "UPSTREAM",
Source = "Custom",
Url = "https://helm.sh",
Auths = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigAuthArgs
{
AuthType = "UserPassword",
UserName = "registry_user",
SecretIdentifier = "registry_password",
SecretSpacePath = "accountId/orgId/projectId",
},
},
},
},
ParentRef = "accountId/orgId/projectId",
});
// Example of an Upstream Go Registry (GoProxy source needs no url)
var goUpstream = new Harness.Platform.HarRegistry("go_upstream", new()
{
Identifier = "upstream_go_registry",
Description = "Upstream Go Registry",
SpaceRef = "accountId/orgId/projectId",
PackageType = "GO",
Configs = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigArgs
{
Type = "UPSTREAM",
Source = "GoProxy",
AuthType = "Anonymous",
},
},
ParentRef = "accountId/orgId/projectId",
});
// Example of an Upstream Conda Registry (Anaconda source needs no url)
var condaUpstream = new Harness.Platform.HarRegistry("conda_upstream", new()
{
Identifier = "upstream_conda_registry",
Description = "Upstream Conda Registry",
SpaceRef = "accountId/orgId/projectId",
PackageType = "CONDA",
Configs = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigArgs
{
Type = "UPSTREAM",
Source = "Anaconda",
AuthType = "Anonymous",
},
},
ParentRef = "accountId/orgId/projectId",
});
// Example of an Upstream Helm HTTP Registry (HelmChartRepo source requires url)
var helmHttpUpstream = new Harness.Platform.HarRegistry("helm_http_upstream", new()
{
Identifier = "upstream_helm_http_registry",
Description = "Upstream Helm HTTP Registry",
SpaceRef = "accountId/orgId/projectId",
PackageType = "HELM_HTTP",
Configs = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigArgs
{
Type = "UPSTREAM",
Source = "HelmChartRepo",
Url = "https://charts.bitnami.com/bitnami",
AuthType = "Anonymous",
},
},
ParentRef = "accountId/orgId/projectId",
});
// Example of a Virtual Debian Registry with Debian-specific configuration
var debianVirtual = new Harness.Platform.HarRegistry("debian_virtual", new()
{
Identifier = "virtual_debian_registry",
Description = "Virtual Debian Registry",
SpaceRef = "accountId/orgId/projectId",
PackageType = "DEBIAN",
Configs = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigArgs
{
Type = "VIRTUAL",
UpstreamProxies = new[]
{
"debian_upstream_registry",
},
DebianConfig = new Harness.Platform.Inputs.HarRegistryConfigDebianConfigArgs
{
RemoteIndexedArchitectures = new[]
{
"amd64",
"arm64",
},
OptionalIndexCompressionFormats = new[]
{
".xz",
},
},
},
},
ParentRef = "accountId/orgId/projectId",
});
// Example of an Upstream Custom Debian Registry (Debian source needs url)
var debianUpstream = new Harness.Platform.HarRegistry("debian_upstream", new()
{
Identifier = "upstream_debian_registry",
Description = "Upstream Debian Registry",
SpaceRef = "accountId/orgId/projectId",
PackageType = "DEBIAN",
Configs = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigArgs
{
Type = "UPSTREAM",
Source = "Custom",
Url = "http://deb.debian.org/debian",
AuthType = "Anonymous",
},
},
ParentRef = "accountId/orgId/projectId",
});
// Example of an Upstream Python Registry with a custom remote URL suffix
var pythonUpstream = new Harness.Platform.HarRegistry("python_upstream", new()
{
Identifier = "upstream_python_registry",
Description = "Upstream Python Registry",
SpaceRef = "accountId/orgId/projectId",
PackageType = "PYTHON",
Configs = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigArgs
{
Type = "UPSTREAM",
Source = "Custom",
Url = "https://pypi.example.com",
RemoteUrlSuffix = "simple",
AuthType = "Anonymous",
},
},
ParentRef = "accountId/orgId/projectId",
});
// Example of an Upstream Conan Registry (ConanCenter source needs no url)
var conanUpstream = new Harness.Platform.HarRegistry("conan_upstream", new()
{
Identifier = "upstream_conan_registry",
Description = "Upstream Conan Registry",
SpaceRef = "accountId/orgId/projectId",
PackageType = "CONAN",
Configs = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigArgs
{
Type = "UPSTREAM",
Source = "ConanCenter",
AuthType = "Anonymous",
},
},
ParentRef = "accountId/orgId/projectId",
});
// Example of an Upstream Ruby Registry (RubyGems source needs no url)
var rubygemsUpstream = new Harness.Platform.HarRegistry("rubygems_upstream", new()
{
Identifier = "upstream_ruby_registry",
Description = "Upstream Ruby Registry",
SpaceRef = "accountId/orgId/projectId",
PackageType = "RUBY",
Configs = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigArgs
{
Type = "UPSTREAM",
Source = "RubyGems",
AuthType = "Anonymous",
},
},
ParentRef = "accountId/orgId/projectId",
});
// Example of a Virtual Terraform Registry
var terraformVirtual = new Harness.Platform.HarRegistry("terraform_virtual", new()
{
Identifier = "virtual_terraform_registry",
Description = "Virtual Terraform Registry",
SpaceRef = "accountId/orgId/projectId",
PackageType = "TERRAFORM",
Configs = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigArgs
{
Type = "VIRTUAL",
},
},
ParentRef = "accountId/orgId/projectId",
});
// Example of a Virtual CRAN Registry
var cranVirtual = new Harness.Platform.HarRegistry("cran_virtual", new()
{
Identifier = "virtual_cran_registry",
Description = "Virtual CRAN Registry",
SpaceRef = "accountId/orgId/projectId",
PackageType = "CRAN",
Configs = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigArgs
{
Type = "VIRTUAL",
},
},
ParentRef = "accountId/orgId/projectId",
});
// Example of an Upstream CRAN Registry (CRAN source needs no url)
var cranUpstream = new Harness.Platform.HarRegistry("cran_upstream", new()
{
Identifier = "upstream_cran_registry",
Description = "Upstream CRAN Registry",
SpaceRef = "accountId/orgId/projectId",
PackageType = "CRAN",
Configs = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigArgs
{
Type = "UPSTREAM",
Source = "CRAN",
AuthType = "Anonymous",
},
},
ParentRef = "accountId/orgId/projectId",
});
// Example of a Virtual Alpine Registry
var alpineVirtual = new Harness.Platform.HarRegistry("alpine_virtual", new()
{
Identifier = "virtual_alpine_registry",
Description = "Virtual Alpine Registry",
SpaceRef = "accountId/orgId/projectId",
PackageType = "ALPINE",
Configs = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigArgs
{
Type = "VIRTUAL",
},
},
ParentRef = "accountId/orgId/projectId",
});
// Example of an Upstream Alpine Registry (Alpine source needs no url)
var alpineUpstream = new Harness.Platform.HarRegistry("alpine_upstream", new()
{
Identifier = "upstream_alpine_registry",
Description = "Upstream Alpine Registry",
SpaceRef = "accountId/orgId/projectId",
PackageType = "ALPINE",
Configs = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigArgs
{
Type = "UPSTREAM",
Source = "Alpine",
AuthType = "Anonymous",
},
},
ParentRef = "accountId/orgId/projectId",
});
// Example of a Virtual Wolfi Registry
var wolfiVirtual = new Harness.Platform.HarRegistry("wolfi_virtual", new()
{
Identifier = "virtual_wolfi_registry",
Description = "Virtual Wolfi Registry",
SpaceRef = "accountId/orgId/projectId",
PackageType = "WOLFI",
Configs = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigArgs
{
Type = "VIRTUAL",
},
},
ParentRef = "accountId/orgId/projectId",
});
// Example of an Upstream Wolfi Registry (Wolfi source needs no url)
var wolfiUpstream = new Harness.Platform.HarRegistry("wolfi_upstream", new()
{
Identifier = "upstream_wolfi_registry",
Description = "Upstream Wolfi Registry",
SpaceRef = "accountId/orgId/projectId",
PackageType = "WOLFI",
Configs = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigArgs
{
Type = "UPSTREAM",
Source = "Wolfi",
AuthType = "Anonymous",
},
},
ParentRef = "accountId/orgId/projectId",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.harness.platform.HarRegistry;
import com.pulumi.harness.platform.HarRegistryArgs;
import com.pulumi.harness.platform.inputs.HarRegistryConfigArgs;
import com.pulumi.harness.platform.inputs.HarRegistryConfigAuthArgs;
import com.pulumi.harness.platform.inputs.HarRegistryConfigDebianConfigArgs;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
// Example of a Virtual Registry
var virtualRegistry = new HarRegistry("virtualRegistry", HarRegistryArgs.builder()
.identifier("virtual_docker_registry")
.description("Virtual Docker Registry")
.spaceRef("accountId/orgId/projectId")
.packageType("DOCKER")
.configs(HarRegistryConfigArgs.builder()
.type("VIRTUAL")
.upstreamProxies(
"registry1",
"registry2")
.build())
.parentRef("accountId/orgId/projectId")
.build());
// Example of an Upstream Registry with Authentication
var upstreamRegistry = new HarRegistry("upstreamRegistry", HarRegistryArgs.builder()
.identifier("upstream_helm_registry")
.description("Upstream Helm Registry")
.spaceRef("accountId/orgId/projectId")
.packageType("HELM")
.configs(HarRegistryConfigArgs.builder()
.type("UPSTREAM")
.source("Custom")
.url("https://helm.sh")
.auths(HarRegistryConfigAuthArgs.builder()
.authType("UserPassword")
.userName("registry_user")
.secretIdentifier("registry_password")
.secretSpacePath("accountId/orgId/projectId")
.build())
.build())
.parentRef("accountId/orgId/projectId")
.build());
// Example of an Upstream Go Registry (GoProxy source needs no url)
var goUpstream = new HarRegistry("goUpstream", HarRegistryArgs.builder()
.identifier("upstream_go_registry")
.description("Upstream Go Registry")
.spaceRef("accountId/orgId/projectId")
.packageType("GO")
.configs(HarRegistryConfigArgs.builder()
.type("UPSTREAM")
.source("GoProxy")
.authType("Anonymous")
.build())
.parentRef("accountId/orgId/projectId")
.build());
// Example of an Upstream Conda Registry (Anaconda source needs no url)
var condaUpstream = new HarRegistry("condaUpstream", HarRegistryArgs.builder()
.identifier("upstream_conda_registry")
.description("Upstream Conda Registry")
.spaceRef("accountId/orgId/projectId")
.packageType("CONDA")
.configs(HarRegistryConfigArgs.builder()
.type("UPSTREAM")
.source("Anaconda")
.authType("Anonymous")
.build())
.parentRef("accountId/orgId/projectId")
.build());
// Example of an Upstream Helm HTTP Registry (HelmChartRepo source requires url)
var helmHttpUpstream = new HarRegistry("helmHttpUpstream", HarRegistryArgs.builder()
.identifier("upstream_helm_http_registry")
.description("Upstream Helm HTTP Registry")
.spaceRef("accountId/orgId/projectId")
.packageType("HELM_HTTP")
.configs(HarRegistryConfigArgs.builder()
.type("UPSTREAM")
.source("HelmChartRepo")
.url("https://charts.bitnami.com/bitnami")
.authType("Anonymous")
.build())
.parentRef("accountId/orgId/projectId")
.build());
// Example of a Virtual Debian Registry with Debian-specific configuration
var debianVirtual = new HarRegistry("debianVirtual", HarRegistryArgs.builder()
.identifier("virtual_debian_registry")
.description("Virtual Debian Registry")
.spaceRef("accountId/orgId/projectId")
.packageType("DEBIAN")
.configs(HarRegistryConfigArgs.builder()
.type("VIRTUAL")
.upstreamProxies("debian_upstream_registry")
.debianConfig(HarRegistryConfigDebianConfigArgs.builder()
.remoteIndexedArchitectures(
"amd64",
"arm64")
.optionalIndexCompressionFormats(".xz")
.build())
.build())
.parentRef("accountId/orgId/projectId")
.build());
// Example of an Upstream Custom Debian Registry (Debian source needs url)
var debianUpstream = new HarRegistry("debianUpstream", HarRegistryArgs.builder()
.identifier("upstream_debian_registry")
.description("Upstream Debian Registry")
.spaceRef("accountId/orgId/projectId")
.packageType("DEBIAN")
.configs(HarRegistryConfigArgs.builder()
.type("UPSTREAM")
.source("Custom")
.url("http://deb.debian.org/debian")
.authType("Anonymous")
.build())
.parentRef("accountId/orgId/projectId")
.build());
// Example of an Upstream Python Registry with a custom remote URL suffix
var pythonUpstream = new HarRegistry("pythonUpstream", HarRegistryArgs.builder()
.identifier("upstream_python_registry")
.description("Upstream Python Registry")
.spaceRef("accountId/orgId/projectId")
.packageType("PYTHON")
.configs(HarRegistryConfigArgs.builder()
.type("UPSTREAM")
.source("Custom")
.url("https://pypi.example.com")
.remoteUrlSuffix("simple")
.authType("Anonymous")
.build())
.parentRef("accountId/orgId/projectId")
.build());
// Example of an Upstream Conan Registry (ConanCenter source needs no url)
var conanUpstream = new HarRegistry("conanUpstream", HarRegistryArgs.builder()
.identifier("upstream_conan_registry")
.description("Upstream Conan Registry")
.spaceRef("accountId/orgId/projectId")
.packageType("CONAN")
.configs(HarRegistryConfigArgs.builder()
.type("UPSTREAM")
.source("ConanCenter")
.authType("Anonymous")
.build())
.parentRef("accountId/orgId/projectId")
.build());
// Example of an Upstream Ruby Registry (RubyGems source needs no url)
var rubygemsUpstream = new HarRegistry("rubygemsUpstream", HarRegistryArgs.builder()
.identifier("upstream_ruby_registry")
.description("Upstream Ruby Registry")
.spaceRef("accountId/orgId/projectId")
.packageType("RUBY")
.configs(HarRegistryConfigArgs.builder()
.type("UPSTREAM")
.source("RubyGems")
.authType("Anonymous")
.build())
.parentRef("accountId/orgId/projectId")
.build());
// Example of a Virtual Terraform Registry
var terraformVirtual = new HarRegistry("terraformVirtual", HarRegistryArgs.builder()
.identifier("virtual_terraform_registry")
.description("Virtual Terraform Registry")
.spaceRef("accountId/orgId/projectId")
.packageType("TERRAFORM")
.configs(HarRegistryConfigArgs.builder()
.type("VIRTUAL")
.build())
.parentRef("accountId/orgId/projectId")
.build());
// Example of a Virtual CRAN Registry
var cranVirtual = new HarRegistry("cranVirtual", HarRegistryArgs.builder()
.identifier("virtual_cran_registry")
.description("Virtual CRAN Registry")
.spaceRef("accountId/orgId/projectId")
.packageType("CRAN")
.configs(HarRegistryConfigArgs.builder()
.type("VIRTUAL")
.build())
.parentRef("accountId/orgId/projectId")
.build());
// Example of an Upstream CRAN Registry (CRAN source needs no url)
var cranUpstream = new HarRegistry("cranUpstream", HarRegistryArgs.builder()
.identifier("upstream_cran_registry")
.description("Upstream CRAN Registry")
.spaceRef("accountId/orgId/projectId")
.packageType("CRAN")
.configs(HarRegistryConfigArgs.builder()
.type("UPSTREAM")
.source("CRAN")
.authType("Anonymous")
.build())
.parentRef("accountId/orgId/projectId")
.build());
// Example of a Virtual Alpine Registry
var alpineVirtual = new HarRegistry("alpineVirtual", HarRegistryArgs.builder()
.identifier("virtual_alpine_registry")
.description("Virtual Alpine Registry")
.spaceRef("accountId/orgId/projectId")
.packageType("ALPINE")
.configs(HarRegistryConfigArgs.builder()
.type("VIRTUAL")
.build())
.parentRef("accountId/orgId/projectId")
.build());
// Example of an Upstream Alpine Registry (Alpine source needs no url)
var alpineUpstream = new HarRegistry("alpineUpstream", HarRegistryArgs.builder()
.identifier("upstream_alpine_registry")
.description("Upstream Alpine Registry")
.spaceRef("accountId/orgId/projectId")
.packageType("ALPINE")
.configs(HarRegistryConfigArgs.builder()
.type("UPSTREAM")
.source("Alpine")
.authType("Anonymous")
.build())
.parentRef("accountId/orgId/projectId")
.build());
// Example of a Virtual Wolfi Registry
var wolfiVirtual = new HarRegistry("wolfiVirtual", HarRegistryArgs.builder()
.identifier("virtual_wolfi_registry")
.description("Virtual Wolfi Registry")
.spaceRef("accountId/orgId/projectId")
.packageType("WOLFI")
.configs(HarRegistryConfigArgs.builder()
.type("VIRTUAL")
.build())
.parentRef("accountId/orgId/projectId")
.build());
// Example of an Upstream Wolfi Registry (Wolfi source needs no url)
var wolfiUpstream = new HarRegistry("wolfiUpstream", HarRegistryArgs.builder()
.identifier("upstream_wolfi_registry")
.description("Upstream Wolfi Registry")
.spaceRef("accountId/orgId/projectId")
.packageType("WOLFI")
.configs(HarRegistryConfigArgs.builder()
.type("UPSTREAM")
.source("Wolfi")
.authType("Anonymous")
.build())
.parentRef("accountId/orgId/projectId")
.build());
}
}
resources:
# Example of a Virtual Registry
virtualRegistry:
type: harness:platform:HarRegistry
name: virtual_registry
properties:
identifier: virtual_docker_registry
description: Virtual Docker Registry
spaceRef: accountId/orgId/projectId
packageType: DOCKER
configs:
- type: VIRTUAL
upstreamProxies:
- registry1
- registry2
parentRef: accountId/orgId/projectId
# Example of an Upstream Registry with Authentication
upstreamRegistry:
type: harness:platform:HarRegistry
name: upstream_registry
properties:
identifier: upstream_helm_registry
description: Upstream Helm Registry
spaceRef: accountId/orgId/projectId
packageType: HELM
configs:
- type: UPSTREAM
source: Custom
url: https://helm.sh
auths:
- authType: UserPassword
userName: registry_user
secretIdentifier: registry_password
secretSpacePath: accountId/orgId/projectId
parentRef: accountId/orgId/projectId
# Example of an Upstream Go Registry (GoProxy source needs no url)
goUpstream:
type: harness:platform:HarRegistry
name: go_upstream
properties:
identifier: upstream_go_registry
description: Upstream Go Registry
spaceRef: accountId/orgId/projectId
packageType: GO
configs:
- type: UPSTREAM
source: GoProxy
authType: Anonymous
parentRef: accountId/orgId/projectId
# Example of an Upstream Conda Registry (Anaconda source needs no url)
condaUpstream:
type: harness:platform:HarRegistry
name: conda_upstream
properties:
identifier: upstream_conda_registry
description: Upstream Conda Registry
spaceRef: accountId/orgId/projectId
packageType: CONDA
configs:
- type: UPSTREAM
source: Anaconda
authType: Anonymous
parentRef: accountId/orgId/projectId
# Example of an Upstream Helm HTTP Registry (HelmChartRepo source requires url)
helmHttpUpstream:
type: harness:platform:HarRegistry
name: helm_http_upstream
properties:
identifier: upstream_helm_http_registry
description: Upstream Helm HTTP Registry
spaceRef: accountId/orgId/projectId
packageType: HELM_HTTP
configs:
- type: UPSTREAM
source: HelmChartRepo
url: https://charts.bitnami.com/bitnami
authType: Anonymous
parentRef: accountId/orgId/projectId
# Example of a Virtual Debian Registry with Debian-specific configuration
debianVirtual:
type: harness:platform:HarRegistry
name: debian_virtual
properties:
identifier: virtual_debian_registry
description: Virtual Debian Registry
spaceRef: accountId/orgId/projectId
packageType: DEBIAN
configs:
- type: VIRTUAL
upstreamProxies:
- debian_upstream_registry
debianConfig:
remoteIndexedArchitectures:
- amd64
- arm64
optionalIndexCompressionFormats:
- .xz
parentRef: accountId/orgId/projectId
# Example of an Upstream Custom Debian Registry (Debian source needs url)
debianUpstream:
type: harness:platform:HarRegistry
name: debian_upstream
properties:
identifier: upstream_debian_registry
description: Upstream Debian Registry
spaceRef: accountId/orgId/projectId
packageType: DEBIAN
configs:
- type: UPSTREAM
source: Custom
url: http://deb.debian.org/debian
authType: Anonymous
parentRef: accountId/orgId/projectId
# Example of an Upstream Python Registry with a custom remote URL suffix
pythonUpstream:
type: harness:platform:HarRegistry
name: python_upstream
properties:
identifier: upstream_python_registry
description: Upstream Python Registry
spaceRef: accountId/orgId/projectId
packageType: PYTHON
configs:
- type: UPSTREAM
source: Custom
url: https://pypi.example.com
remoteUrlSuffix: simple
authType: Anonymous
parentRef: accountId/orgId/projectId
# Example of an Upstream Conan Registry (ConanCenter source needs no url)
conanUpstream:
type: harness:platform:HarRegistry
name: conan_upstream
properties:
identifier: upstream_conan_registry
description: Upstream Conan Registry
spaceRef: accountId/orgId/projectId
packageType: CONAN
configs:
- type: UPSTREAM
source: ConanCenter
authType: Anonymous
parentRef: accountId/orgId/projectId
# Example of an Upstream Ruby Registry (RubyGems source needs no url)
rubygemsUpstream:
type: harness:platform:HarRegistry
name: rubygems_upstream
properties:
identifier: upstream_ruby_registry
description: Upstream Ruby Registry
spaceRef: accountId/orgId/projectId
packageType: RUBY
configs:
- type: UPSTREAM
source: RubyGems
authType: Anonymous
parentRef: accountId/orgId/projectId
# Example of a Virtual Terraform Registry
terraformVirtual:
type: harness:platform:HarRegistry
name: terraform_virtual
properties:
identifier: virtual_terraform_registry
description: Virtual Terraform Registry
spaceRef: accountId/orgId/projectId
packageType: TERRAFORM
configs:
- type: VIRTUAL
parentRef: accountId/orgId/projectId
# Example of a Virtual CRAN Registry
cranVirtual:
type: harness:platform:HarRegistry
name: cran_virtual
properties:
identifier: virtual_cran_registry
description: Virtual CRAN Registry
spaceRef: accountId/orgId/projectId
packageType: CRAN
configs:
- type: VIRTUAL
parentRef: accountId/orgId/projectId
# Example of an Upstream CRAN Registry (CRAN source needs no url)
cranUpstream:
type: harness:platform:HarRegistry
name: cran_upstream
properties:
identifier: upstream_cran_registry
description: Upstream CRAN Registry
spaceRef: accountId/orgId/projectId
packageType: CRAN
configs:
- type: UPSTREAM
source: CRAN
authType: Anonymous
parentRef: accountId/orgId/projectId
# Example of a Virtual Alpine Registry
alpineVirtual:
type: harness:platform:HarRegistry
name: alpine_virtual
properties:
identifier: virtual_alpine_registry
description: Virtual Alpine Registry
spaceRef: accountId/orgId/projectId
packageType: ALPINE
configs:
- type: VIRTUAL
parentRef: accountId/orgId/projectId
# Example of an Upstream Alpine Registry (Alpine source needs no url)
alpineUpstream:
type: harness:platform:HarRegistry
name: alpine_upstream
properties:
identifier: upstream_alpine_registry
description: Upstream Alpine Registry
spaceRef: accountId/orgId/projectId
packageType: ALPINE
configs:
- type: UPSTREAM
source: Alpine
authType: Anonymous
parentRef: accountId/orgId/projectId
# Example of a Virtual Wolfi Registry
wolfiVirtual:
type: harness:platform:HarRegistry
name: wolfi_virtual
properties:
identifier: virtual_wolfi_registry
description: Virtual Wolfi Registry
spaceRef: accountId/orgId/projectId
packageType: WOLFI
configs:
- type: VIRTUAL
parentRef: accountId/orgId/projectId
# Example of an Upstream Wolfi Registry (Wolfi source needs no url)
wolfiUpstream:
type: harness:platform:HarRegistry
name: wolfi_upstream
properties:
identifier: upstream_wolfi_registry
description: Upstream Wolfi Registry
spaceRef: accountId/orgId/projectId
packageType: WOLFI
configs:
- type: UPSTREAM
source: Wolfi
authType: Anonymous
parentRef: accountId/orgId/projectId
pulumi {
required_providers {
harness = {
source = "pulumi/harness"
}
}
}
# Example of a Virtual Registry
resource "harness_platform_harregistry" "virtual_registry" {
identifier = "virtual_docker_registry"
description = "Virtual Docker Registry"
space_ref = "accountId/orgId/projectId"
package_type = "DOCKER"
configs {
type = "VIRTUAL"
upstream_proxies = ["registry1", "registry2"]
}
parent_ref = "accountId/orgId/projectId"
}
# Example of an Upstream Registry with Authentication
resource "harness_platform_harregistry" "upstream_registry" {
identifier = "upstream_helm_registry"
description = "Upstream Helm Registry"
space_ref = "accountId/orgId/projectId"
package_type = "HELM"
configs {
type = "UPSTREAM"
source = "Custom"
url = "https://helm.sh"
auths {
auth_type = "UserPassword"
user_name = "registry_user"
secret_identifier = "registry_password"
secret_space_path = "accountId/orgId/projectId"
}
}
parent_ref = "accountId/orgId/projectId"
}
# Example of an Upstream Go Registry (GoProxy source needs no url)
resource "harness_platform_harregistry" "go_upstream" {
identifier = "upstream_go_registry"
description = "Upstream Go Registry"
space_ref = "accountId/orgId/projectId"
package_type = "GO"
configs {
type = "UPSTREAM"
source = "GoProxy"
auth_type = "Anonymous"
}
parent_ref = "accountId/orgId/projectId"
}
# Example of an Upstream Conda Registry (Anaconda source needs no url)
resource "harness_platform_harregistry" "conda_upstream" {
identifier = "upstream_conda_registry"
description = "Upstream Conda Registry"
space_ref = "accountId/orgId/projectId"
package_type = "CONDA"
configs {
type = "UPSTREAM"
source = "Anaconda"
auth_type = "Anonymous"
}
parent_ref = "accountId/orgId/projectId"
}
# Example of an Upstream Helm HTTP Registry (HelmChartRepo source requires url)
resource "harness_platform_harregistry" "helm_http_upstream" {
identifier = "upstream_helm_http_registry"
description = "Upstream Helm HTTP Registry"
space_ref = "accountId/orgId/projectId"
package_type = "HELM_HTTP"
configs {
type = "UPSTREAM"
source = "HelmChartRepo"
url = "https://charts.bitnami.com/bitnami"
auth_type = "Anonymous"
}
parent_ref = "accountId/orgId/projectId"
}
# Example of a Virtual Debian Registry with Debian-specific configuration
resource "harness_platform_harregistry" "debian_virtual" {
identifier = "virtual_debian_registry"
description = "Virtual Debian Registry"
space_ref = "accountId/orgId/projectId"
package_type = "DEBIAN"
configs {
type = "VIRTUAL"
upstream_proxies = ["debian_upstream_registry"]
debian_config = {
remote_indexed_architectures = ["amd64", "arm64"]
optional_index_compression_formats = [".xz"]
}
}
parent_ref = "accountId/orgId/projectId"
}
# Example of an Upstream Custom Debian Registry (Debian source needs url)
resource "harness_platform_harregistry" "debian_upstream" {
identifier = "upstream_debian_registry"
description = "Upstream Debian Registry"
space_ref = "accountId/orgId/projectId"
package_type = "DEBIAN"
configs {
type = "UPSTREAM"
source = "Custom"
url = "http://deb.debian.org/debian"
auth_type = "Anonymous"
}
parent_ref = "accountId/orgId/projectId"
}
# Example of an Upstream Python Registry with a custom remote URL suffix
resource "harness_platform_harregistry" "python_upstream" {
identifier = "upstream_python_registry"
description = "Upstream Python Registry"
space_ref = "accountId/orgId/projectId"
package_type = "PYTHON"
configs {
type = "UPSTREAM"
source = "Custom"
url = "https://pypi.example.com"
remote_url_suffix = "simple"
auth_type = "Anonymous"
}
parent_ref = "accountId/orgId/projectId"
}
# Example of an Upstream Conan Registry (ConanCenter source needs no url)
resource "harness_platform_harregistry" "conan_upstream" {
identifier = "upstream_conan_registry"
description = "Upstream Conan Registry"
space_ref = "accountId/orgId/projectId"
package_type = "CONAN"
configs {
type = "UPSTREAM"
source = "ConanCenter"
auth_type = "Anonymous"
}
parent_ref = "accountId/orgId/projectId"
}
# Example of an Upstream Ruby Registry (RubyGems source needs no url)
resource "harness_platform_harregistry" "rubygems_upstream" {
identifier = "upstream_ruby_registry"
description = "Upstream Ruby Registry"
space_ref = "accountId/orgId/projectId"
package_type = "RUBY"
configs {
type = "UPSTREAM"
source = "RubyGems"
auth_type = "Anonymous"
}
parent_ref = "accountId/orgId/projectId"
}
# Example of a Virtual Terraform Registry
resource "harness_platform_harregistry" "terraform_virtual" {
identifier = "virtual_terraform_registry"
description = "Virtual Terraform Registry"
space_ref = "accountId/orgId/projectId"
package_type = "TERRAFORM"
configs {
type = "VIRTUAL"
}
parent_ref = "accountId/orgId/projectId"
}
# Example of a Virtual CRAN Registry
resource "harness_platform_harregistry" "cran_virtual" {
identifier = "virtual_cran_registry"
description = "Virtual CRAN Registry"
space_ref = "accountId/orgId/projectId"
package_type = "CRAN"
configs {
type = "VIRTUAL"
}
parent_ref = "accountId/orgId/projectId"
}
# Example of an Upstream CRAN Registry (CRAN source needs no url)
resource "harness_platform_harregistry" "cran_upstream" {
identifier = "upstream_cran_registry"
description = "Upstream CRAN Registry"
space_ref = "accountId/orgId/projectId"
package_type = "CRAN"
configs {
type = "UPSTREAM"
source = "CRAN"
auth_type = "Anonymous"
}
parent_ref = "accountId/orgId/projectId"
}
# Example of a Virtual Alpine Registry
resource "harness_platform_harregistry" "alpine_virtual" {
identifier = "virtual_alpine_registry"
description = "Virtual Alpine Registry"
space_ref = "accountId/orgId/projectId"
package_type = "ALPINE"
configs {
type = "VIRTUAL"
}
parent_ref = "accountId/orgId/projectId"
}
# Example of an Upstream Alpine Registry (Alpine source needs no url)
resource "harness_platform_harregistry" "alpine_upstream" {
identifier = "upstream_alpine_registry"
description = "Upstream Alpine Registry"
space_ref = "accountId/orgId/projectId"
package_type = "ALPINE"
configs {
type = "UPSTREAM"
source = "Alpine"
auth_type = "Anonymous"
}
parent_ref = "accountId/orgId/projectId"
}
# Example of a Virtual Wolfi Registry
resource "harness_platform_harregistry" "wolfi_virtual" {
identifier = "virtual_wolfi_registry"
description = "Virtual Wolfi Registry"
space_ref = "accountId/orgId/projectId"
package_type = "WOLFI"
configs {
type = "VIRTUAL"
}
parent_ref = "accountId/orgId/projectId"
}
# Example of an Upstream Wolfi Registry (Wolfi source needs no url)
resource "harness_platform_harregistry" "wolfi_upstream" {
identifier = "upstream_wolfi_registry"
description = "Upstream Wolfi Registry"
space_ref = "accountId/orgId/projectId"
package_type = "WOLFI"
configs {
type = "UPSTREAM"
source = "Wolfi"
auth_type = "Anonymous"
}
parent_ref = "accountId/orgId/projectId"
}
Create HarRegistry Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new HarRegistry(name: string, args: HarRegistryArgs, opts?: CustomResourceOptions);@overload
def HarRegistry(resource_name: str,
args: HarRegistryArgs,
opts: Optional[ResourceOptions] = None)
@overload
def HarRegistry(resource_name: str,
opts: Optional[ResourceOptions] = None,
identifier: Optional[str] = None,
package_type: Optional[str] = None,
parent_ref: Optional[str] = None,
space_ref: Optional[str] = None,
allowed_patterns: Optional[Sequence[str]] = None,
blocked_patterns: Optional[Sequence[str]] = None,
configs: Optional[Sequence[HarRegistryConfigArgs]] = None,
description: Optional[str] = None,
is_public: Optional[bool] = None,
metadata: Optional[Mapping[str, str]] = None)func NewHarRegistry(ctx *Context, name string, args HarRegistryArgs, opts ...ResourceOption) (*HarRegistry, error)public HarRegistry(string name, HarRegistryArgs args, CustomResourceOptions? opts = null)
public HarRegistry(String name, HarRegistryArgs args)
public HarRegistry(String name, HarRegistryArgs args, CustomResourceOptions options)
type: harness:platform:HarRegistry
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
resource "harness_platform_har_registry" "name" {
# resource properties
}Parameters
- name string
- The unique name of the resource.
- args HarRegistryArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args HarRegistryArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args HarRegistryArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args HarRegistryArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args HarRegistryArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var harRegistryResource = new Harness.Platform.HarRegistry("harRegistryResource", new()
{
Identifier = "string",
PackageType = "string",
ParentRef = "string",
SpaceRef = "string",
AllowedPatterns = new[]
{
"string",
},
BlockedPatterns = new[]
{
"string",
},
Configs = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigArgs
{
Type = "string",
AuthType = "string",
Auths = new[]
{
new Harness.Platform.Inputs.HarRegistryConfigAuthArgs
{
AuthType = "string",
AccessKey = "string",
AccessKeyIdentifier = "string",
AccessKeySecretPath = "string",
SecretIdentifier = "string",
SecretKeyIdentifier = "string",
SecretKeySecretPath = "string",
SecretSpacePath = "string",
UserName = "string",
},
},
DebianConfig = new Harness.Platform.Inputs.HarRegistryConfigDebianConfigArgs
{
OptionalIndexCompressionFormats = new[]
{
"string",
},
RemoteIndexedArchitectures = new[]
{
"string",
},
},
FirewallMode = "string",
MetadataCacheTtl = 0,
NegativeCacheTtl = 0,
RemoteUrlSuffix = "string",
Source = "string",
UpstreamProxies = new[]
{
"string",
},
Url = "string",
},
},
Description = "string",
IsPublic = false,
Metadata =
{
{ "string", "string" },
},
});
example, err := platform.NewHarRegistry(ctx, "harRegistryResource", &platform.HarRegistryArgs{
Identifier: pulumi.String("string"),
PackageType: pulumi.String("string"),
ParentRef: pulumi.String("string"),
SpaceRef: pulumi.String("string"),
AllowedPatterns: pulumi.StringArray{
pulumi.String("string"),
},
BlockedPatterns: pulumi.StringArray{
pulumi.String("string"),
},
Configs: platform.HarRegistryConfigArray{
&platform.HarRegistryConfigArgs{
Type: pulumi.String("string"),
AuthType: pulumi.String("string"),
Auths: platform.HarRegistryConfigAuthArray{
&platform.HarRegistryConfigAuthArgs{
AuthType: pulumi.String("string"),
AccessKey: pulumi.String("string"),
AccessKeyIdentifier: pulumi.String("string"),
AccessKeySecretPath: pulumi.String("string"),
SecretIdentifier: pulumi.String("string"),
SecretKeyIdentifier: pulumi.String("string"),
SecretKeySecretPath: pulumi.String("string"),
SecretSpacePath: pulumi.String("string"),
UserName: pulumi.String("string"),
},
},
DebianConfig: &platform.HarRegistryConfigDebianConfigArgs{
OptionalIndexCompressionFormats: pulumi.StringArray{
pulumi.String("string"),
},
RemoteIndexedArchitectures: pulumi.StringArray{
pulumi.String("string"),
},
},
FirewallMode: pulumi.String("string"),
MetadataCacheTtl: pulumi.Int(0),
NegativeCacheTtl: pulumi.Int(0),
RemoteUrlSuffix: pulumi.String("string"),
Source: pulumi.String("string"),
UpstreamProxies: pulumi.StringArray{
pulumi.String("string"),
},
Url: pulumi.String("string"),
},
},
Description: pulumi.String("string"),
IsPublic: pulumi.Bool(false),
Metadata: pulumi.StringMap{
"string": pulumi.String("string"),
},
})
resource "harness_platform_har_registry" "harRegistryResource" {
lifecycle {
create_before_destroy = true
}
identifier = "string"
package_type = "string"
parent_ref = "string"
space_ref = "string"
allowed_patterns = ["string"]
blocked_patterns = ["string"]
configs {
type = "string"
auth_type = "string"
auths {
auth_type = "string"
access_key = "string"
access_key_identifier = "string"
access_key_secret_path = "string"
secret_identifier = "string"
secret_key_identifier = "string"
secret_key_secret_path = "string"
secret_space_path = "string"
user_name = "string"
}
debian_config = {
optional_index_compression_formats = ["string"]
remote_indexed_architectures = ["string"]
}
firewall_mode = "string"
metadata_cache_ttl = 0
negative_cache_ttl = 0
remote_url_suffix = "string"
source = "string"
upstream_proxies = ["string"]
url = "string"
}
description = "string"
is_public = false
metadata = {
"string" = "string"
}
}
var harRegistryResource = new HarRegistry("harRegistryResource", HarRegistryArgs.builder()
.identifier("string")
.packageType("string")
.parentRef("string")
.spaceRef("string")
.allowedPatterns("string")
.blockedPatterns("string")
.configs(HarRegistryConfigArgs.builder()
.type("string")
.authType("string")
.auths(HarRegistryConfigAuthArgs.builder()
.authType("string")
.accessKey("string")
.accessKeyIdentifier("string")
.accessKeySecretPath("string")
.secretIdentifier("string")
.secretKeyIdentifier("string")
.secretKeySecretPath("string")
.secretSpacePath("string")
.userName("string")
.build())
.debianConfig(HarRegistryConfigDebianConfigArgs.builder()
.optionalIndexCompressionFormats("string")
.remoteIndexedArchitectures("string")
.build())
.firewallMode("string")
.metadataCacheTtl(0)
.negativeCacheTtl(0)
.remoteUrlSuffix("string")
.source("string")
.upstreamProxies("string")
.url("string")
.build())
.description("string")
.isPublic(false)
.metadata(Map.of("string", "string"))
.build());
har_registry_resource = harness.platform.HarRegistry("harRegistryResource",
identifier="string",
package_type="string",
parent_ref="string",
space_ref="string",
allowed_patterns=["string"],
blocked_patterns=["string"],
configs=[{
"type": "string",
"auth_type": "string",
"auths": [{
"auth_type": "string",
"access_key": "string",
"access_key_identifier": "string",
"access_key_secret_path": "string",
"secret_identifier": "string",
"secret_key_identifier": "string",
"secret_key_secret_path": "string",
"secret_space_path": "string",
"user_name": "string",
}],
"debian_config": {
"optional_index_compression_formats": ["string"],
"remote_indexed_architectures": ["string"],
},
"firewall_mode": "string",
"metadata_cache_ttl": 0,
"negative_cache_ttl": 0,
"remote_url_suffix": "string",
"source": "string",
"upstream_proxies": ["string"],
"url": "string",
}],
description="string",
is_public=False,
metadata={
"string": "string",
})
const harRegistryResource = new harness.platform.HarRegistry("harRegistryResource", {
identifier: "string",
packageType: "string",
parentRef: "string",
spaceRef: "string",
allowedPatterns: ["string"],
blockedPatterns: ["string"],
configs: [{
type: "string",
authType: "string",
auths: [{
authType: "string",
accessKey: "string",
accessKeyIdentifier: "string",
accessKeySecretPath: "string",
secretIdentifier: "string",
secretKeyIdentifier: "string",
secretKeySecretPath: "string",
secretSpacePath: "string",
userName: "string",
}],
debianConfig: {
optionalIndexCompressionFormats: ["string"],
remoteIndexedArchitectures: ["string"],
},
firewallMode: "string",
metadataCacheTtl: 0,
negativeCacheTtl: 0,
remoteUrlSuffix: "string",
source: "string",
upstreamProxies: ["string"],
url: "string",
}],
description: "string",
isPublic: false,
metadata: {
string: "string",
},
});
type: harness:platform:HarRegistry
properties:
allowedPatterns:
- string
blockedPatterns:
- string
configs:
- authType: string
auths:
- accessKey: string
accessKeyIdentifier: string
accessKeySecretPath: string
authType: string
secretIdentifier: string
secretKeyIdentifier: string
secretKeySecretPath: string
secretSpacePath: string
userName: string
debianConfig:
optionalIndexCompressionFormats:
- string
remoteIndexedArchitectures:
- string
firewallMode: string
metadataCacheTtl: 0
negativeCacheTtl: 0
remoteUrlSuffix: string
source: string
type: string
upstreamProxies:
- string
url: string
description: string
identifier: string
isPublic: false
metadata:
string: string
packageType: string
parentRef: string
spaceRef: string
HarRegistry Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The HarRegistry resource accepts the following input properties:
- Identifier string
- Unique identifier of the registry
- Package
Type string - Type of package (DOCKER, HELM, HELM_HTTP, MAVEN, PYTHON, GENERIC, NUGET, NPM, RPM, CARGO, RAW, PUPPET, GO, CONDA, DEBIAN, CONAN, RUBY, TERRAFORM, CRAN, ALPINE, WOLFI)
- Parent
Ref string - Parent reference for the registry (required for creation)
- Space
Ref string - Space reference for the registry (required for creation)
- Allowed
Patterns List<string> - Allowed artifact patterns
- Blocked
Patterns List<string> - Blocked artifact patterns
- Configs
List<Har
Registry Config> - Configuration for the registry
- Description string
- Description of the registry
- Is
Public bool - Whether the registry is public. When set to true, the registry is publicly accessible without authentication. Defaults to false (private).
- Metadata Dictionary<string, string>
- Custom metadata key-value pairs attached to the registry. Keys and values must match the pattern letters, numbers, _ . / = + - @. Keys are case-sensitive. Maximum 49 entries allowed.
- Identifier string
- Unique identifier of the registry
- Package
Type string - Type of package (DOCKER, HELM, HELM_HTTP, MAVEN, PYTHON, GENERIC, NUGET, NPM, RPM, CARGO, RAW, PUPPET, GO, CONDA, DEBIAN, CONAN, RUBY, TERRAFORM, CRAN, ALPINE, WOLFI)
- Parent
Ref string - Parent reference for the registry (required for creation)
- Space
Ref string - Space reference for the registry (required for creation)
- Allowed
Patterns []string - Allowed artifact patterns
- Blocked
Patterns []string - Blocked artifact patterns
- Configs
[]Har
Registry Config Args - Configuration for the registry
- Description string
- Description of the registry
- Is
Public bool - Whether the registry is public. When set to true, the registry is publicly accessible without authentication. Defaults to false (private).
- Metadata map[string]string
- Custom metadata key-value pairs attached to the registry. Keys and values must match the pattern letters, numbers, _ . / = + - @. Keys are case-sensitive. Maximum 49 entries allowed.
- identifier string
- Unique identifier of the registry
- package_
type string - Type of package (DOCKER, HELM, HELM_HTTP, MAVEN, PYTHON, GENERIC, NUGET, NPM, RPM, CARGO, RAW, PUPPET, GO, CONDA, DEBIAN, CONAN, RUBY, TERRAFORM, CRAN, ALPINE, WOLFI)
- parent_
ref string - Parent reference for the registry (required for creation)
- space_
ref string - Space reference for the registry (required for creation)
- allowed_
patterns list(string) - Allowed artifact patterns
- blocked_
patterns list(string) - Blocked artifact patterns
- configs list(object)
- Configuration for the registry
- description string
- Description of the registry
- is_
public bool - Whether the registry is public. When set to true, the registry is publicly accessible without authentication. Defaults to false (private).
- metadata map(string)
- Custom metadata key-value pairs attached to the registry. Keys and values must match the pattern letters, numbers, _ . / = + - @. Keys are case-sensitive. Maximum 49 entries allowed.
- identifier String
- Unique identifier of the registry
- package
Type String - Type of package (DOCKER, HELM, HELM_HTTP, MAVEN, PYTHON, GENERIC, NUGET, NPM, RPM, CARGO, RAW, PUPPET, GO, CONDA, DEBIAN, CONAN, RUBY, TERRAFORM, CRAN, ALPINE, WOLFI)
- parent
Ref String - Parent reference for the registry (required for creation)
- space
Ref String - Space reference for the registry (required for creation)
- allowed
Patterns List<String> - Allowed artifact patterns
- blocked
Patterns List<String> - Blocked artifact patterns
- configs
List<Har
Registry Config> - Configuration for the registry
- description String
- Description of the registry
- is
Public Boolean - Whether the registry is public. When set to true, the registry is publicly accessible without authentication. Defaults to false (private).
- metadata Map<String,String>
- Custom metadata key-value pairs attached to the registry. Keys and values must match the pattern letters, numbers, _ . / = + - @. Keys are case-sensitive. Maximum 49 entries allowed.
- identifier string
- Unique identifier of the registry
- package
Type string - Type of package (DOCKER, HELM, HELM_HTTP, MAVEN, PYTHON, GENERIC, NUGET, NPM, RPM, CARGO, RAW, PUPPET, GO, CONDA, DEBIAN, CONAN, RUBY, TERRAFORM, CRAN, ALPINE, WOLFI)
- parent
Ref string - Parent reference for the registry (required for creation)
- space
Ref string - Space reference for the registry (required for creation)
- allowed
Patterns string[] - Allowed artifact patterns
- blocked
Patterns string[] - Blocked artifact patterns
- configs
Har
Registry Config[] - Configuration for the registry
- description string
- Description of the registry
- is
Public boolean - Whether the registry is public. When set to true, the registry is publicly accessible without authentication. Defaults to false (private).
- metadata {[key: string]: string}
- Custom metadata key-value pairs attached to the registry. Keys and values must match the pattern letters, numbers, _ . / = + - @. Keys are case-sensitive. Maximum 49 entries allowed.
- identifier str
- Unique identifier of the registry
- package_
type str - Type of package (DOCKER, HELM, HELM_HTTP, MAVEN, PYTHON, GENERIC, NUGET, NPM, RPM, CARGO, RAW, PUPPET, GO, CONDA, DEBIAN, CONAN, RUBY, TERRAFORM, CRAN, ALPINE, WOLFI)
- parent_
ref str - Parent reference for the registry (required for creation)
- space_
ref str - Space reference for the registry (required for creation)
- allowed_
patterns Sequence[str] - Allowed artifact patterns
- blocked_
patterns Sequence[str] - Blocked artifact patterns
- configs
Sequence[Har
Registry Config Args] - Configuration for the registry
- description str
- Description of the registry
- is_
public bool - Whether the registry is public. When set to true, the registry is publicly accessible without authentication. Defaults to false (private).
- metadata Mapping[str, str]
- Custom metadata key-value pairs attached to the registry. Keys and values must match the pattern letters, numbers, _ . / = + - @. Keys are case-sensitive. Maximum 49 entries allowed.
- identifier String
- Unique identifier of the registry
- package
Type String - Type of package (DOCKER, HELM, HELM_HTTP, MAVEN, PYTHON, GENERIC, NUGET, NPM, RPM, CARGO, RAW, PUPPET, GO, CONDA, DEBIAN, CONAN, RUBY, TERRAFORM, CRAN, ALPINE, WOLFI)
- parent
Ref String - Parent reference for the registry (required for creation)
- space
Ref String - Space reference for the registry (required for creation)
- allowed
Patterns List<String> - Allowed artifact patterns
- blocked
Patterns List<String> - Blocked artifact patterns
- configs List<Property Map>
- Configuration for the registry
- description String
- Description of the registry
- is
Public Boolean - Whether the registry is public. When set to true, the registry is publicly accessible without authentication. Defaults to false (private).
- metadata Map<String>
- Custom metadata key-value pairs attached to the registry. Keys and values must match the pattern letters, numbers, _ . / = + - @. Keys are case-sensitive. Maximum 49 entries allowed.
Outputs
All input properties are implicitly available as output properties. Additionally, the HarRegistry resource produces the following output properties:
- created_
at string - Creation timestamp
- id string
- The provider-assigned unique ID for this managed resource.
- url string
- URL of the registry
- created_
at str - Creation timestamp
- id str
- The provider-assigned unique ID for this managed resource.
- url str
- URL of the registry
Look up Existing HarRegistry Resource
Get an existing HarRegistry resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: HarRegistryState, opts?: CustomResourceOptions): HarRegistry@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
allowed_patterns: Optional[Sequence[str]] = None,
blocked_patterns: Optional[Sequence[str]] = None,
configs: Optional[Sequence[HarRegistryConfigArgs]] = None,
created_at: Optional[str] = None,
description: Optional[str] = None,
identifier: Optional[str] = None,
is_public: Optional[bool] = None,
metadata: Optional[Mapping[str, str]] = None,
package_type: Optional[str] = None,
parent_ref: Optional[str] = None,
space_ref: Optional[str] = None,
url: Optional[str] = None) -> HarRegistryfunc GetHarRegistry(ctx *Context, name string, id IDInput, state *HarRegistryState, opts ...ResourceOption) (*HarRegistry, error)public static HarRegistry Get(string name, Input<string> id, HarRegistryState? state, CustomResourceOptions? opts = null)public static HarRegistry get(String name, Output<String> id, HarRegistryState state, CustomResourceOptions options)resources: _: type: harness:platform:HarRegistry get: id: ${id}import {
to = harness_platform_har_registry.example
id = "${id}"
}
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Allowed
Patterns List<string> - Allowed artifact patterns
- Blocked
Patterns List<string> - Blocked artifact patterns
- Configs
List<Har
Registry Config> - Configuration for the registry
- Created
At string - Creation timestamp
- Description string
- Description of the registry
- Identifier string
- Unique identifier of the registry
- Is
Public bool - Whether the registry is public. When set to true, the registry is publicly accessible without authentication. Defaults to false (private).
- Metadata Dictionary<string, string>
- Custom metadata key-value pairs attached to the registry. Keys and values must match the pattern letters, numbers, _ . / = + - @. Keys are case-sensitive. Maximum 49 entries allowed.
- Package
Type string - Type of package (DOCKER, HELM, HELM_HTTP, MAVEN, PYTHON, GENERIC, NUGET, NPM, RPM, CARGO, RAW, PUPPET, GO, CONDA, DEBIAN, CONAN, RUBY, TERRAFORM, CRAN, ALPINE, WOLFI)
- Parent
Ref string - Parent reference for the registry (required for creation)
- Space
Ref string - Space reference for the registry (required for creation)
- Url string
- URL of the registry
- Allowed
Patterns []string - Allowed artifact patterns
- Blocked
Patterns []string - Blocked artifact patterns
- Configs
[]Har
Registry Config Args - Configuration for the registry
- Created
At string - Creation timestamp
- Description string
- Description of the registry
- Identifier string
- Unique identifier of the registry
- Is
Public bool - Whether the registry is public. When set to true, the registry is publicly accessible without authentication. Defaults to false (private).
- Metadata map[string]string
- Custom metadata key-value pairs attached to the registry. Keys and values must match the pattern letters, numbers, _ . / = + - @. Keys are case-sensitive. Maximum 49 entries allowed.
- Package
Type string - Type of package (DOCKER, HELM, HELM_HTTP, MAVEN, PYTHON, GENERIC, NUGET, NPM, RPM, CARGO, RAW, PUPPET, GO, CONDA, DEBIAN, CONAN, RUBY, TERRAFORM, CRAN, ALPINE, WOLFI)
- Parent
Ref string - Parent reference for the registry (required for creation)
- Space
Ref string - Space reference for the registry (required for creation)
- Url string
- URL of the registry
- allowed_
patterns list(string) - Allowed artifact patterns
- blocked_
patterns list(string) - Blocked artifact patterns
- configs list(object)
- Configuration for the registry
- created_
at string - Creation timestamp
- description string
- Description of the registry
- identifier string
- Unique identifier of the registry
- is_
public bool - Whether the registry is public. When set to true, the registry is publicly accessible without authentication. Defaults to false (private).
- metadata map(string)
- Custom metadata key-value pairs attached to the registry. Keys and values must match the pattern letters, numbers, _ . / = + - @. Keys are case-sensitive. Maximum 49 entries allowed.
- package_
type string - Type of package (DOCKER, HELM, HELM_HTTP, MAVEN, PYTHON, GENERIC, NUGET, NPM, RPM, CARGO, RAW, PUPPET, GO, CONDA, DEBIAN, CONAN, RUBY, TERRAFORM, CRAN, ALPINE, WOLFI)
- parent_
ref string - Parent reference for the registry (required for creation)
- space_
ref string - Space reference for the registry (required for creation)
- url string
- URL of the registry
- allowed
Patterns List<String> - Allowed artifact patterns
- blocked
Patterns List<String> - Blocked artifact patterns
- configs
List<Har
Registry Config> - Configuration for the registry
- created
At String - Creation timestamp
- description String
- Description of the registry
- identifier String
- Unique identifier of the registry
- is
Public Boolean - Whether the registry is public. When set to true, the registry is publicly accessible without authentication. Defaults to false (private).
- metadata Map<String,String>
- Custom metadata key-value pairs attached to the registry. Keys and values must match the pattern letters, numbers, _ . / = + - @. Keys are case-sensitive. Maximum 49 entries allowed.
- package
Type String - Type of package (DOCKER, HELM, HELM_HTTP, MAVEN, PYTHON, GENERIC, NUGET, NPM, RPM, CARGO, RAW, PUPPET, GO, CONDA, DEBIAN, CONAN, RUBY, TERRAFORM, CRAN, ALPINE, WOLFI)
- parent
Ref String - Parent reference for the registry (required for creation)
- space
Ref String - Space reference for the registry (required for creation)
- url String
- URL of the registry
- allowed
Patterns string[] - Allowed artifact patterns
- blocked
Patterns string[] - Blocked artifact patterns
- configs
Har
Registry Config[] - Configuration for the registry
- created
At string - Creation timestamp
- description string
- Description of the registry
- identifier string
- Unique identifier of the registry
- is
Public boolean - Whether the registry is public. When set to true, the registry is publicly accessible without authentication. Defaults to false (private).
- metadata {[key: string]: string}
- Custom metadata key-value pairs attached to the registry. Keys and values must match the pattern letters, numbers, _ . / = + - @. Keys are case-sensitive. Maximum 49 entries allowed.
- package
Type string - Type of package (DOCKER, HELM, HELM_HTTP, MAVEN, PYTHON, GENERIC, NUGET, NPM, RPM, CARGO, RAW, PUPPET, GO, CONDA, DEBIAN, CONAN, RUBY, TERRAFORM, CRAN, ALPINE, WOLFI)
- parent
Ref string - Parent reference for the registry (required for creation)
- space
Ref string - Space reference for the registry (required for creation)
- url string
- URL of the registry
- allowed_
patterns Sequence[str] - Allowed artifact patterns
- blocked_
patterns Sequence[str] - Blocked artifact patterns
- configs
Sequence[Har
Registry Config Args] - Configuration for the registry
- created_
at str - Creation timestamp
- description str
- Description of the registry
- identifier str
- Unique identifier of the registry
- is_
public bool - Whether the registry is public. When set to true, the registry is publicly accessible without authentication. Defaults to false (private).
- metadata Mapping[str, str]
- Custom metadata key-value pairs attached to the registry. Keys and values must match the pattern letters, numbers, _ . / = + - @. Keys are case-sensitive. Maximum 49 entries allowed.
- package_
type str - Type of package (DOCKER, HELM, HELM_HTTP, MAVEN, PYTHON, GENERIC, NUGET, NPM, RPM, CARGO, RAW, PUPPET, GO, CONDA, DEBIAN, CONAN, RUBY, TERRAFORM, CRAN, ALPINE, WOLFI)
- parent_
ref str - Parent reference for the registry (required for creation)
- space_
ref str - Space reference for the registry (required for creation)
- url str
- URL of the registry
- allowed
Patterns List<String> - Allowed artifact patterns
- blocked
Patterns List<String> - Blocked artifact patterns
- configs List<Property Map>
- Configuration for the registry
- created
At String - Creation timestamp
- description String
- Description of the registry
- identifier String
- Unique identifier of the registry
- is
Public Boolean - Whether the registry is public. When set to true, the registry is publicly accessible without authentication. Defaults to false (private).
- metadata Map<String>
- Custom metadata key-value pairs attached to the registry. Keys and values must match the pattern letters, numbers, _ . / = + - @. Keys are case-sensitive. Maximum 49 entries allowed.
- package
Type String - Type of package (DOCKER, HELM, HELM_HTTP, MAVEN, PYTHON, GENERIC, NUGET, NPM, RPM, CARGO, RAW, PUPPET, GO, CONDA, DEBIAN, CONAN, RUBY, TERRAFORM, CRAN, ALPINE, WOLFI)
- parent
Ref String - Parent reference for the registry (required for creation)
- space
Ref String - Space reference for the registry (required for creation)
- url String
- URL of the registry
Supporting Types
HarRegistryConfig, HarRegistryConfigArgs
- Type string
- Type of registry (VIRTUAL or UPSTREAM)
- Auth
Type string - Type of authentication for UPSTREAM registry type (UserPassword, Anonymous, AccessKeySecretKey)
- Auths
List<Har
Registry Config Auth> - Authentication configuration for UPSTREAM registry type
- Debian
Config HarRegistry Config Debian Config - Debian-specific configuration, applicable only when package*type is DEBIAN and config.type is VIRTUAL
- Firewall
Mode string - Dependency firewall mode for UPSTREAM registry type. Valid values:
ALLOW(default - no policy evaluation),ENABLED(firewall active, artifacts scanned against policies),QUARANTINE(artifacts that fail policy evaluation are blocked). Not supported for DOCKER or HELM package types. - Metadata
Cache intTtl - Time-to-live in seconds for cached FOUND metadata entries in UPSTREAM registry type. Honored only for UPSTREAM registries of package types that support the resource cache (currently Maven). Must be between 0 and 604800 (7 days). Rejected for unsupported package types.
- Negative
Cache intTtl - Time-to-live in seconds for cached NOT_FOUND entries in UPSTREAM registry type. Honored only for UPSTREAM registries of package types that support the resource cache (currently Maven). Must be between 0 and 604800 (7 days). Rejected for unsupported package types.
- Remote
Url stringSuffix - Optional path suffix for Python UPSTREAM registries with Custom source. Overrides the default
simplepath used for PyPI-compatible indexes. Requiresconfig.urlwhen source is Custom. Not supported for non-PYTHON package types. Leading and trailing slashes are normalized. - Source string
- Upstream source
- Upstream
Proxies List<string> - List of upstream proxies for VIRTUAL registry type
- Url string
- URL of the upstream (required if type=UPSTREAM & package_type=HELM)
- Type string
- Type of registry (VIRTUAL or UPSTREAM)
- Auth
Type string - Type of authentication for UPSTREAM registry type (UserPassword, Anonymous, AccessKeySecretKey)
- Auths
[]Har
Registry Config Auth - Authentication configuration for UPSTREAM registry type
- Debian
Config HarRegistry Config Debian Config - Debian-specific configuration, applicable only when package*type is DEBIAN and config.type is VIRTUAL
- Firewall
Mode string - Dependency firewall mode for UPSTREAM registry type. Valid values:
ALLOW(default - no policy evaluation),ENABLED(firewall active, artifacts scanned against policies),QUARANTINE(artifacts that fail policy evaluation are blocked). Not supported for DOCKER or HELM package types. - Metadata
Cache intTtl - Time-to-live in seconds for cached FOUND metadata entries in UPSTREAM registry type. Honored only for UPSTREAM registries of package types that support the resource cache (currently Maven). Must be between 0 and 604800 (7 days). Rejected for unsupported package types.
- Negative
Cache intTtl - Time-to-live in seconds for cached NOT_FOUND entries in UPSTREAM registry type. Honored only for UPSTREAM registries of package types that support the resource cache (currently Maven). Must be between 0 and 604800 (7 days). Rejected for unsupported package types.
- Remote
Url stringSuffix - Optional path suffix for Python UPSTREAM registries with Custom source. Overrides the default
simplepath used for PyPI-compatible indexes. Requiresconfig.urlwhen source is Custom. Not supported for non-PYTHON package types. Leading and trailing slashes are normalized. - Source string
- Upstream source
- Upstream
Proxies []string - List of upstream proxies for VIRTUAL registry type
- Url string
- URL of the upstream (required if type=UPSTREAM & package_type=HELM)
- type string
- Type of registry (VIRTUAL or UPSTREAM)
- auth_
type string - Type of authentication for UPSTREAM registry type (UserPassword, Anonymous, AccessKeySecretKey)
- auths list(object)
- Authentication configuration for UPSTREAM registry type
- debian_
config object - Debian-specific configuration, applicable only when package*type is DEBIAN and config.type is VIRTUAL
- firewall_
mode string - Dependency firewall mode for UPSTREAM registry type. Valid values:
ALLOW(default - no policy evaluation),ENABLED(firewall active, artifacts scanned against policies),QUARANTINE(artifacts that fail policy evaluation are blocked). Not supported for DOCKER or HELM package types. - metadata_
cache_ numberttl - Time-to-live in seconds for cached FOUND metadata entries in UPSTREAM registry type. Honored only for UPSTREAM registries of package types that support the resource cache (currently Maven). Must be between 0 and 604800 (7 days). Rejected for unsupported package types.
- negative_
cache_ numberttl - Time-to-live in seconds for cached NOT_FOUND entries in UPSTREAM registry type. Honored only for UPSTREAM registries of package types that support the resource cache (currently Maven). Must be between 0 and 604800 (7 days). Rejected for unsupported package types.
- remote_
url_ stringsuffix - Optional path suffix for Python UPSTREAM registries with Custom source. Overrides the default
simplepath used for PyPI-compatible indexes. Requiresconfig.urlwhen source is Custom. Not supported for non-PYTHON package types. Leading and trailing slashes are normalized. - source string
- Upstream source
- upstream_
proxies list(string) - List of upstream proxies for VIRTUAL registry type
- url string
- URL of the upstream (required if type=UPSTREAM & package_type=HELM)
- type String
- Type of registry (VIRTUAL or UPSTREAM)
- auth
Type String - Type of authentication for UPSTREAM registry type (UserPassword, Anonymous, AccessKeySecretKey)
- auths
List<Har
Registry Config Auth> - Authentication configuration for UPSTREAM registry type
- debian
Config HarRegistry Config Debian Config - Debian-specific configuration, applicable only when package*type is DEBIAN and config.type is VIRTUAL
- firewall
Mode String - Dependency firewall mode for UPSTREAM registry type. Valid values:
ALLOW(default - no policy evaluation),ENABLED(firewall active, artifacts scanned against policies),QUARANTINE(artifacts that fail policy evaluation are blocked). Not supported for DOCKER or HELM package types. - metadata
Cache IntegerTtl - Time-to-live in seconds for cached FOUND metadata entries in UPSTREAM registry type. Honored only for UPSTREAM registries of package types that support the resource cache (currently Maven). Must be between 0 and 604800 (7 days). Rejected for unsupported package types.
- negative
Cache IntegerTtl - Time-to-live in seconds for cached NOT_FOUND entries in UPSTREAM registry type. Honored only for UPSTREAM registries of package types that support the resource cache (currently Maven). Must be between 0 and 604800 (7 days). Rejected for unsupported package types.
- remote
Url StringSuffix - Optional path suffix for Python UPSTREAM registries with Custom source. Overrides the default
simplepath used for PyPI-compatible indexes. Requiresconfig.urlwhen source is Custom. Not supported for non-PYTHON package types. Leading and trailing slashes are normalized. - source String
- Upstream source
- upstream
Proxies List<String> - List of upstream proxies for VIRTUAL registry type
- url String
- URL of the upstream (required if type=UPSTREAM & package_type=HELM)
- type string
- Type of registry (VIRTUAL or UPSTREAM)
- auth
Type string - Type of authentication for UPSTREAM registry type (UserPassword, Anonymous, AccessKeySecretKey)
- auths
Har
Registry Config Auth[] - Authentication configuration for UPSTREAM registry type
- debian
Config HarRegistry Config Debian Config - Debian-specific configuration, applicable only when package*type is DEBIAN and config.type is VIRTUAL
- firewall
Mode string - Dependency firewall mode for UPSTREAM registry type. Valid values:
ALLOW(default - no policy evaluation),ENABLED(firewall active, artifacts scanned against policies),QUARANTINE(artifacts that fail policy evaluation are blocked). Not supported for DOCKER or HELM package types. - metadata
Cache numberTtl - Time-to-live in seconds for cached FOUND metadata entries in UPSTREAM registry type. Honored only for UPSTREAM registries of package types that support the resource cache (currently Maven). Must be between 0 and 604800 (7 days). Rejected for unsupported package types.
- negative
Cache numberTtl - Time-to-live in seconds for cached NOT_FOUND entries in UPSTREAM registry type. Honored only for UPSTREAM registries of package types that support the resource cache (currently Maven). Must be between 0 and 604800 (7 days). Rejected for unsupported package types.
- remote
Url stringSuffix - Optional path suffix for Python UPSTREAM registries with Custom source. Overrides the default
simplepath used for PyPI-compatible indexes. Requiresconfig.urlwhen source is Custom. Not supported for non-PYTHON package types. Leading and trailing slashes are normalized. - source string
- Upstream source
- upstream
Proxies string[] - List of upstream proxies for VIRTUAL registry type
- url string
- URL of the upstream (required if type=UPSTREAM & package_type=HELM)
- type str
- Type of registry (VIRTUAL or UPSTREAM)
- auth_
type str - Type of authentication for UPSTREAM registry type (UserPassword, Anonymous, AccessKeySecretKey)
- auths
Sequence[Har
Registry Config Auth] - Authentication configuration for UPSTREAM registry type
- debian_
config HarRegistry Config Debian Config - Debian-specific configuration, applicable only when package*type is DEBIAN and config.type is VIRTUAL
- firewall_
mode str - Dependency firewall mode for UPSTREAM registry type. Valid values:
ALLOW(default - no policy evaluation),ENABLED(firewall active, artifacts scanned against policies),QUARANTINE(artifacts that fail policy evaluation are blocked). Not supported for DOCKER or HELM package types. - metadata_
cache_ intttl - Time-to-live in seconds for cached FOUND metadata entries in UPSTREAM registry type. Honored only for UPSTREAM registries of package types that support the resource cache (currently Maven). Must be between 0 and 604800 (7 days). Rejected for unsupported package types.
- negative_
cache_ intttl - Time-to-live in seconds for cached NOT_FOUND entries in UPSTREAM registry type. Honored only for UPSTREAM registries of package types that support the resource cache (currently Maven). Must be between 0 and 604800 (7 days). Rejected for unsupported package types.
- remote_
url_ strsuffix - Optional path suffix for Python UPSTREAM registries with Custom source. Overrides the default
simplepath used for PyPI-compatible indexes. Requiresconfig.urlwhen source is Custom. Not supported for non-PYTHON package types. Leading and trailing slashes are normalized. - source str
- Upstream source
- upstream_
proxies Sequence[str] - List of upstream proxies for VIRTUAL registry type
- url str
- URL of the upstream (required if type=UPSTREAM & package_type=HELM)
- type String
- Type of registry (VIRTUAL or UPSTREAM)
- auth
Type String - Type of authentication for UPSTREAM registry type (UserPassword, Anonymous, AccessKeySecretKey)
- auths List<Property Map>
- Authentication configuration for UPSTREAM registry type
- debian
Config Property Map - Debian-specific configuration, applicable only when package*type is DEBIAN and config.type is VIRTUAL
- firewall
Mode String - Dependency firewall mode for UPSTREAM registry type. Valid values:
ALLOW(default - no policy evaluation),ENABLED(firewall active, artifacts scanned against policies),QUARANTINE(artifacts that fail policy evaluation are blocked). Not supported for DOCKER or HELM package types. - metadata
Cache NumberTtl - Time-to-live in seconds for cached FOUND metadata entries in UPSTREAM registry type. Honored only for UPSTREAM registries of package types that support the resource cache (currently Maven). Must be between 0 and 604800 (7 days). Rejected for unsupported package types.
- negative
Cache NumberTtl - Time-to-live in seconds for cached NOT_FOUND entries in UPSTREAM registry type. Honored only for UPSTREAM registries of package types that support the resource cache (currently Maven). Must be between 0 and 604800 (7 days). Rejected for unsupported package types.
- remote
Url StringSuffix - Optional path suffix for Python UPSTREAM registries with Custom source. Overrides the default
simplepath used for PyPI-compatible indexes. Requiresconfig.urlwhen source is Custom. Not supported for non-PYTHON package types. Leading and trailing slashes are normalized. - source String
- Upstream source
- upstream
Proxies List<String> - List of upstream proxies for VIRTUAL registry type
- url String
- URL of the upstream (required if type=UPSTREAM & package_type=HELM)
HarRegistryConfigAuth, HarRegistryConfigAuthArgs
- Auth
Type string - Type of authentication (UserPassword, Anonymous)
- Access
Key string - Access
Key stringIdentifier - Access
Key stringSecret Path - Secret
Identifier string - Secret identifier for UserPassword auth type
- Secret
Key stringIdentifier - Secret
Key stringSecret Path - Secret
Space stringPath - Secret space path for UserPassword auth type
- User
Name string - Username for UserPassword auth type
- Auth
Type string - Type of authentication (UserPassword, Anonymous)
- Access
Key string - Access
Key stringIdentifier - Access
Key stringSecret Path - Secret
Identifier string - Secret identifier for UserPassword auth type
- Secret
Key stringIdentifier - Secret
Key stringSecret Path - Secret
Space stringPath - Secret space path for UserPassword auth type
- User
Name string - Username for UserPassword auth type
- auth_
type string - Type of authentication (UserPassword, Anonymous)
- access_
key string - access_
key_ stringidentifier - access_
key_ stringsecret_ path - secret_
identifier string - Secret identifier for UserPassword auth type
- secret_
key_ stringidentifier - secret_
key_ stringsecret_ path - secret_
space_ stringpath - Secret space path for UserPassword auth type
- user_
name string - Username for UserPassword auth type
- auth
Type String - Type of authentication (UserPassword, Anonymous)
- access
Key String - access
Key StringIdentifier - access
Key StringSecret Path - secret
Identifier String - Secret identifier for UserPassword auth type
- secret
Key StringIdentifier - secret
Key StringSecret Path - secret
Space StringPath - Secret space path for UserPassword auth type
- user
Name String - Username for UserPassword auth type
- auth
Type string - Type of authentication (UserPassword, Anonymous)
- access
Key string - access
Key stringIdentifier - access
Key stringSecret Path - secret
Identifier string - Secret identifier for UserPassword auth type
- secret
Key stringIdentifier - secret
Key stringSecret Path - secret
Space stringPath - Secret space path for UserPassword auth type
- user
Name string - Username for UserPassword auth type
- auth_
type str - Type of authentication (UserPassword, Anonymous)
- access_
key str - access_
key_ stridentifier - access_
key_ strsecret_ path - secret_
identifier str - Secret identifier for UserPassword auth type
- secret_
key_ stridentifier - secret_
key_ strsecret_ path - secret_
space_ strpath - Secret space path for UserPassword auth type
- user_
name str - Username for UserPassword auth type
- auth
Type String - Type of authentication (UserPassword, Anonymous)
- access
Key String - access
Key StringIdentifier - access
Key StringSecret Path - secret
Identifier String - Secret identifier for UserPassword auth type
- secret
Key StringIdentifier - secret
Key StringSecret Path - secret
Space StringPath - Secret space path for UserPassword auth type
- user
Name String - Username for UserPassword auth type
HarRegistryConfigDebianConfig, HarRegistryConfigDebianConfigArgs
- Optional
Index List<string>Compression Formats - Optional additional compression formats to generate for index/metadata files
- Remote
Indexed List<string>Architectures - Architectures to index when building metadata from linked remote (upstream) registries. Defaults to amd64, i386, arm64
- Optional
Index []stringCompression Formats - Optional additional compression formats to generate for index/metadata files
- Remote
Indexed []stringArchitectures - Architectures to index when building metadata from linked remote (upstream) registries. Defaults to amd64, i386, arm64
- optional_
index_ list(string)compression_ formats - Optional additional compression formats to generate for index/metadata files
- remote_
indexed_ list(string)architectures - Architectures to index when building metadata from linked remote (upstream) registries. Defaults to amd64, i386, arm64
- optional
Index List<String>Compression Formats - Optional additional compression formats to generate for index/metadata files
- remote
Indexed List<String>Architectures - Architectures to index when building metadata from linked remote (upstream) registries. Defaults to amd64, i386, arm64
- optional
Index string[]Compression Formats - Optional additional compression formats to generate for index/metadata files
- remote
Indexed string[]Architectures - Architectures to index when building metadata from linked remote (upstream) registries. Defaults to amd64, i386, arm64
- optional_
index_ Sequence[str]compression_ formats - Optional additional compression formats to generate for index/metadata files
- remote_
indexed_ Sequence[str]architectures - Architectures to index when building metadata from linked remote (upstream) registries. Defaults to amd64, i386, arm64
- optional
Index List<String>Compression Formats - Optional additional compression formats to generate for index/metadata files
- remote
Indexed List<String>Architectures - Architectures to index when building metadata from linked remote (upstream) registries. Defaults to amd64, i386, arm64
Import
Import Format
The import ID format is: <space_ref>/<identifier>
Where:
spaceRefdefines the scope: account, org, or project levelidentifieris the unique registry identifier
Import Examples
Account level: <account_id>/<registry_identifier> Org level: <account_id>/<org_id>/<registry_identifier> Project level: <account_id>/<org_id>/<project_id>/<registry_identifier>
$ pulumi import harness:platform/harRegistry:HarRegistry example <space_ref>/<registry_identifier>
After Import
pulumi preview
pulumi up
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- harness pulumi/pulumi-harness
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
harnessTerraform Provider.
published on Saturday, Sep 12, 2026 by Pulumi