1. Packages
  2. Artifactory Provider
  3. API Docs
  4. VirtualHexRepository
artifactory v8.10.1 published on Saturday, Dec 20, 2025 by Pulumi
artifactory logo
artifactory v8.10.1 published on Saturday, Dec 20, 2025 by Pulumi

    Creates a virtual Hex repository that aggregates local and remote Hex repositories.

    Official documentation can be found here.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as artifactory from "@pulumi/artifactory";
    import * as std from "@pulumi/std";
    
    const some_keypairRSA = new artifactory.Keypair("some-keypairRSA", {
        pairName: `some-keypair${randid.id}`,
        pairType: "RSA",
        alias: "foo-alias",
        privateKey: std.file({
            input: "samples/rsa.priv",
        }).then(invoke => invoke.result),
        publicKey: std.file({
            input: "samples/rsa.pub",
        }).then(invoke => invoke.result),
    });
    const local_hex = new artifactory.LocalHexRepository("local-hex", {
        key: "local-hex",
        hexPrimaryKeypairRef: some_keypairRSA.pairName,
    });
    const remote_hex = new artifactory.RemoteHexRepository("remote-hex", {
        key: "remote-hex",
        url: "https://repo.hex.pm",
        hexPrimaryKeypairRef: some_keypairRSA.pairName,
        publicKey: std.file({
            input: "samples/rsa.pub",
        }).then(invoke => invoke.result),
    });
    const my_virtual_hex = new artifactory.VirtualHexRepository("my-virtual-hex", {
        key: "my-virtual-hex",
        hexPrimaryKeypairRef: some_keypairRSA.pairName,
        repositories: [
            local_hex.key,
            remote_hex.key,
        ],
        description: "Virtual Hex repository aggregating local and remote",
        notes: "Internal repository",
    }, {
        dependsOn: [
            some_keypairRSA,
            local_hex,
            remote_hex,
        ],
    });
    
    import pulumi
    import pulumi_artifactory as artifactory
    import pulumi_std as std
    
    some_keypair_rsa = artifactory.Keypair("some-keypairRSA",
        pair_name=f"some-keypair{randid['id']}",
        pair_type="RSA",
        alias="foo-alias",
        private_key=std.file(input="samples/rsa.priv").result,
        public_key=std.file(input="samples/rsa.pub").result)
    local_hex = artifactory.LocalHexRepository("local-hex",
        key="local-hex",
        hex_primary_keypair_ref=some_keypair_rsa.pair_name)
    remote_hex = artifactory.RemoteHexRepository("remote-hex",
        key="remote-hex",
        url="https://repo.hex.pm",
        hex_primary_keypair_ref=some_keypair_rsa.pair_name,
        public_key=std.file(input="samples/rsa.pub").result)
    my_virtual_hex = artifactory.VirtualHexRepository("my-virtual-hex",
        key="my-virtual-hex",
        hex_primary_keypair_ref=some_keypair_rsa.pair_name,
        repositories=[
            local_hex.key,
            remote_hex.key,
        ],
        description="Virtual Hex repository aggregating local and remote",
        notes="Internal repository",
        opts = pulumi.ResourceOptions(depends_on=[
                some_keypair_rsa,
                local_hex,
                remote_hex,
            ]))
    
    package main
    
    import (
    	"fmt"
    
    	"github.com/pulumi/pulumi-artifactory/sdk/v8/go/artifactory"
    	"github.com/pulumi/pulumi-std/sdk/go/std"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		invokeFile, err := std.File(ctx, &std.FileArgs{
    			Input: "samples/rsa.priv",
    		}, nil)
    		if err != nil {
    			return err
    		}
    		invokeFile1, err := std.File(ctx, &std.FileArgs{
    			Input: "samples/rsa.pub",
    		}, nil)
    		if err != nil {
    			return err
    		}
    		some_keypairRSA, err := artifactory.NewKeypair(ctx, "some-keypairRSA", &artifactory.KeypairArgs{
    			PairName:   pulumi.Sprintf("some-keypair%v", randid.Id),
    			PairType:   pulumi.String("RSA"),
    			Alias:      pulumi.String("foo-alias"),
    			PrivateKey: pulumi.String(invokeFile.Result),
    			PublicKey:  pulumi.String(invokeFile1.Result),
    		})
    		if err != nil {
    			return err
    		}
    		local_hex, err := artifactory.NewLocalHexRepository(ctx, "local-hex", &artifactory.LocalHexRepositoryArgs{
    			Key:                  pulumi.String("local-hex"),
    			HexPrimaryKeypairRef: some_keypairRSA.PairName,
    		})
    		if err != nil {
    			return err
    		}
    		invokeFile2, err := std.File(ctx, &std.FileArgs{
    			Input: "samples/rsa.pub",
    		}, nil)
    		if err != nil {
    			return err
    		}
    		remote_hex, err := artifactory.NewRemoteHexRepository(ctx, "remote-hex", &artifactory.RemoteHexRepositoryArgs{
    			Key:                  pulumi.String("remote-hex"),
    			Url:                  pulumi.String("https://repo.hex.pm"),
    			HexPrimaryKeypairRef: some_keypairRSA.PairName,
    			PublicKey:            pulumi.String(invokeFile2.Result),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = artifactory.NewVirtualHexRepository(ctx, "my-virtual-hex", &artifactory.VirtualHexRepositoryArgs{
    			Key:                  pulumi.String("my-virtual-hex"),
    			HexPrimaryKeypairRef: some_keypairRSA.PairName,
    			Repositories: pulumi.StringArray{
    				local_hex.Key,
    				remote_hex.Key,
    			},
    			Description: pulumi.String("Virtual Hex repository aggregating local and remote"),
    			Notes:       pulumi.String("Internal repository"),
    		}, pulumi.DependsOn([]pulumi.Resource{
    			some_keypairRSA,
    			local_hex,
    			remote_hex,
    		}))
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Artifactory = Pulumi.Artifactory;
    using Std = Pulumi.Std;
    
    return await Deployment.RunAsync(() => 
    {
        var some_keypairRSA = new Artifactory.Keypair("some-keypairRSA", new()
        {
            PairName = $"some-keypair{randid.Id}",
            PairType = "RSA",
            Alias = "foo-alias",
            PrivateKey = Std.File.Invoke(new()
            {
                Input = "samples/rsa.priv",
            }).Apply(invoke => invoke.Result),
            PublicKey = Std.File.Invoke(new()
            {
                Input = "samples/rsa.pub",
            }).Apply(invoke => invoke.Result),
        });
    
        var local_hex = new Artifactory.LocalHexRepository("local-hex", new()
        {
            Key = "local-hex",
            HexPrimaryKeypairRef = some_keypairRSA.PairName,
        });
    
        var remote_hex = new Artifactory.RemoteHexRepository("remote-hex", new()
        {
            Key = "remote-hex",
            Url = "https://repo.hex.pm",
            HexPrimaryKeypairRef = some_keypairRSA.PairName,
            PublicKey = Std.File.Invoke(new()
            {
                Input = "samples/rsa.pub",
            }).Apply(invoke => invoke.Result),
        });
    
        var my_virtual_hex = new Artifactory.VirtualHexRepository("my-virtual-hex", new()
        {
            Key = "my-virtual-hex",
            HexPrimaryKeypairRef = some_keypairRSA.PairName,
            Repositories = new[]
            {
                local_hex.Key,
                remote_hex.Key,
            },
            Description = "Virtual Hex repository aggregating local and remote",
            Notes = "Internal repository",
        }, new CustomResourceOptions
        {
            DependsOn =
            {
                some_keypairRSA,
                local_hex,
                remote_hex,
            },
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.artifactory.Keypair;
    import com.pulumi.artifactory.KeypairArgs;
    import com.pulumi.std.StdFunctions;
    import com.pulumi.std.inputs.FileArgs;
    import com.pulumi.artifactory.LocalHexRepository;
    import com.pulumi.artifactory.LocalHexRepositoryArgs;
    import com.pulumi.artifactory.RemoteHexRepository;
    import com.pulumi.artifactory.RemoteHexRepositoryArgs;
    import com.pulumi.artifactory.VirtualHexRepository;
    import com.pulumi.artifactory.VirtualHexRepositoryArgs;
    import com.pulumi.resources.CustomResourceOptions;
    import java.util.List;
    import java.util.ArrayList;
    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) {
            var some_keypairRSA = new Keypair("some-keypairRSA", KeypairArgs.builder()
                .pairName(String.format("some-keypair%s", randid.id()))
                .pairType("RSA")
                .alias("foo-alias")
                .privateKey(StdFunctions.file(FileArgs.builder()
                    .input("samples/rsa.priv")
                    .build()).result())
                .publicKey(StdFunctions.file(FileArgs.builder()
                    .input("samples/rsa.pub")
                    .build()).result())
                .build());
    
            var local_hex = new LocalHexRepository("local-hex", LocalHexRepositoryArgs.builder()
                .key("local-hex")
                .hexPrimaryKeypairRef(some_keypairRSA.pairName())
                .build());
    
            var remote_hex = new RemoteHexRepository("remote-hex", RemoteHexRepositoryArgs.builder()
                .key("remote-hex")
                .url("https://repo.hex.pm")
                .hexPrimaryKeypairRef(some_keypairRSA.pairName())
                .publicKey(StdFunctions.file(FileArgs.builder()
                    .input("samples/rsa.pub")
                    .build()).result())
                .build());
    
            var my_virtual_hex = new VirtualHexRepository("my-virtual-hex", VirtualHexRepositoryArgs.builder()
                .key("my-virtual-hex")
                .hexPrimaryKeypairRef(some_keypairRSA.pairName())
                .repositories(            
                    local_hex.key(),
                    remote_hex.key())
                .description("Virtual Hex repository aggregating local and remote")
                .notes("Internal repository")
                .build(), CustomResourceOptions.builder()
                    .dependsOn(                
                        some_keypairRSA,
                        local_hex,
                        remote_hex)
                    .build());
    
        }
    }
    
    resources:
      some-keypairRSA:
        type: artifactory:Keypair
        properties:
          pairName: some-keypair${randid.id}
          pairType: RSA
          alias: foo-alias
          privateKey:
            fn::invoke:
              function: std:file
              arguments:
                input: samples/rsa.priv
              return: result
          publicKey:
            fn::invoke:
              function: std:file
              arguments:
                input: samples/rsa.pub
              return: result
      local-hex:
        type: artifactory:LocalHexRepository
        properties:
          key: local-hex
          hexPrimaryKeypairRef: ${["some-keypairRSA"].pairName}
      remote-hex:
        type: artifactory:RemoteHexRepository
        properties:
          key: remote-hex
          url: https://repo.hex.pm
          hexPrimaryKeypairRef: ${["some-keypairRSA"].pairName}
          publicKey:
            fn::invoke:
              function: std:file
              arguments:
                input: samples/rsa.pub
              return: result
      my-virtual-hex:
        type: artifactory:VirtualHexRepository
        properties:
          key: my-virtual-hex
          hexPrimaryKeypairRef: ${["some-keypairRSA"].pairName}
          repositories:
            - ${["local-hex"].key}
            - ${["remote-hex"].key}
          description: Virtual Hex repository aggregating local and remote
          notes: Internal repository
        options:
          dependsOn:
            - ${["some-keypairRSA"]}
            - ${["local-hex"]}
            - ${["remote-hex"]}
    

    Create VirtualHexRepository Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new VirtualHexRepository(name: string, args: VirtualHexRepositoryArgs, opts?: CustomResourceOptions);
    @overload
    def VirtualHexRepository(resource_name: str,
                             args: VirtualHexRepositoryArgs,
                             opts: Optional[ResourceOptions] = None)
    
    @overload
    def VirtualHexRepository(resource_name: str,
                             opts: Optional[ResourceOptions] = None,
                             hex_primary_keypair_ref: Optional[str] = None,
                             key: Optional[str] = None,
                             artifactory_requests_can_retrieve_remote_artifacts: Optional[bool] = None,
                             default_deployment_repo: Optional[str] = None,
                             description: Optional[str] = None,
                             excludes_pattern: Optional[str] = None,
                             includes_pattern: Optional[str] = None,
                             notes: Optional[str] = None,
                             project_environments: Optional[Sequence[str]] = None,
                             project_key: Optional[str] = None,
                             repo_layout_ref: Optional[str] = None,
                             repositories: Optional[Sequence[str]] = None)
    func NewVirtualHexRepository(ctx *Context, name string, args VirtualHexRepositoryArgs, opts ...ResourceOption) (*VirtualHexRepository, error)
    public VirtualHexRepository(string name, VirtualHexRepositoryArgs args, CustomResourceOptions? opts = null)
    public VirtualHexRepository(String name, VirtualHexRepositoryArgs args)
    public VirtualHexRepository(String name, VirtualHexRepositoryArgs args, CustomResourceOptions options)
    
    type: artifactory:VirtualHexRepository
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args VirtualHexRepositoryArgs
    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 VirtualHexRepositoryArgs
    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 VirtualHexRepositoryArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args VirtualHexRepositoryArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args VirtualHexRepositoryArgs
    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 virtualHexRepositoryResource = new Artifactory.VirtualHexRepository("virtualHexRepositoryResource", new()
    {
        HexPrimaryKeypairRef = "string",
        Key = "string",
        ArtifactoryRequestsCanRetrieveRemoteArtifacts = false,
        DefaultDeploymentRepo = "string",
        Description = "string",
        ExcludesPattern = "string",
        IncludesPattern = "string",
        Notes = "string",
        ProjectEnvironments = new[]
        {
            "string",
        },
        ProjectKey = "string",
        RepoLayoutRef = "string",
        Repositories = new[]
        {
            "string",
        },
    });
    
    example, err := artifactory.NewVirtualHexRepository(ctx, "virtualHexRepositoryResource", &artifactory.VirtualHexRepositoryArgs{
    	HexPrimaryKeypairRef: pulumi.String("string"),
    	Key:                  pulumi.String("string"),
    	ArtifactoryRequestsCanRetrieveRemoteArtifacts: pulumi.Bool(false),
    	DefaultDeploymentRepo:                         pulumi.String("string"),
    	Description:                                   pulumi.String("string"),
    	ExcludesPattern:                               pulumi.String("string"),
    	IncludesPattern:                               pulumi.String("string"),
    	Notes:                                         pulumi.String("string"),
    	ProjectEnvironments: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	ProjectKey:    pulumi.String("string"),
    	RepoLayoutRef: pulumi.String("string"),
    	Repositories: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    })
    
    var virtualHexRepositoryResource = new VirtualHexRepository("virtualHexRepositoryResource", VirtualHexRepositoryArgs.builder()
        .hexPrimaryKeypairRef("string")
        .key("string")
        .artifactoryRequestsCanRetrieveRemoteArtifacts(false)
        .defaultDeploymentRepo("string")
        .description("string")
        .excludesPattern("string")
        .includesPattern("string")
        .notes("string")
        .projectEnvironments("string")
        .projectKey("string")
        .repoLayoutRef("string")
        .repositories("string")
        .build());
    
    virtual_hex_repository_resource = artifactory.VirtualHexRepository("virtualHexRepositoryResource",
        hex_primary_keypair_ref="string",
        key="string",
        artifactory_requests_can_retrieve_remote_artifacts=False,
        default_deployment_repo="string",
        description="string",
        excludes_pattern="string",
        includes_pattern="string",
        notes="string",
        project_environments=["string"],
        project_key="string",
        repo_layout_ref="string",
        repositories=["string"])
    
    const virtualHexRepositoryResource = new artifactory.VirtualHexRepository("virtualHexRepositoryResource", {
        hexPrimaryKeypairRef: "string",
        key: "string",
        artifactoryRequestsCanRetrieveRemoteArtifacts: false,
        defaultDeploymentRepo: "string",
        description: "string",
        excludesPattern: "string",
        includesPattern: "string",
        notes: "string",
        projectEnvironments: ["string"],
        projectKey: "string",
        repoLayoutRef: "string",
        repositories: ["string"],
    });
    
    type: artifactory:VirtualHexRepository
    properties:
        artifactoryRequestsCanRetrieveRemoteArtifacts: false
        defaultDeploymentRepo: string
        description: string
        excludesPattern: string
        hexPrimaryKeypairRef: string
        includesPattern: string
        key: string
        notes: string
        projectEnvironments:
            - string
        projectKey: string
        repoLayoutRef: string
        repositories:
            - string
    

    VirtualHexRepository 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 VirtualHexRepository resource accepts the following input properties:

    HexPrimaryKeypairRef string
    Select the RSA key pair to sign and encrypt content for secure communication between Artifactory and the Mix client.
    Key string
    A mandatory identifier for the repository that must be unique. It cannot begin with a number or contain spaces or special characters.
    ArtifactoryRequestsCanRetrieveRemoteArtifacts bool
    Whether the virtual repository should search through remote repositories when trying to resolve an artifact requested by another Artifactory instance.
    DefaultDeploymentRepo string
    Default repository to deploy artifacts.
    Description string
    Public description.
    ExcludesPattern string
    List of artifact patterns to exclude when evaluating artifact requests, in the form of x/y/**/z/*.By default no artifacts are excluded.
    IncludesPattern string
    List of comma-separated artifact patterns to include when evaluating artifact requests in the form of x/y/**/z/*. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (**/*).
    Notes string
    Internal description.
    ProjectEnvironments List<string>
    ProjectKey string
    Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
    RepoLayoutRef string
    Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
    Repositories List<string>
    The effective list of actual repositories included in this virtual repository.
    HexPrimaryKeypairRef string
    Select the RSA key pair to sign and encrypt content for secure communication between Artifactory and the Mix client.
    Key string
    A mandatory identifier for the repository that must be unique. It cannot begin with a number or contain spaces or special characters.
    ArtifactoryRequestsCanRetrieveRemoteArtifacts bool
    Whether the virtual repository should search through remote repositories when trying to resolve an artifact requested by another Artifactory instance.
    DefaultDeploymentRepo string
    Default repository to deploy artifacts.
    Description string
    Public description.
    ExcludesPattern string
    List of artifact patterns to exclude when evaluating artifact requests, in the form of x/y/**/z/*.By default no artifacts are excluded.
    IncludesPattern string
    List of comma-separated artifact patterns to include when evaluating artifact requests in the form of x/y/**/z/*. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (**/*).
    Notes string
    Internal description.
    ProjectEnvironments []string
    ProjectKey string
    Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
    RepoLayoutRef string
    Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
    Repositories []string
    The effective list of actual repositories included in this virtual repository.
    hexPrimaryKeypairRef String
    Select the RSA key pair to sign and encrypt content for secure communication between Artifactory and the Mix client.
    key String
    A mandatory identifier for the repository that must be unique. It cannot begin with a number or contain spaces or special characters.
    artifactoryRequestsCanRetrieveRemoteArtifacts Boolean
    Whether the virtual repository should search through remote repositories when trying to resolve an artifact requested by another Artifactory instance.
    defaultDeploymentRepo String
    Default repository to deploy artifacts.
    description String
    Public description.
    excludesPattern String
    List of artifact patterns to exclude when evaluating artifact requests, in the form of x/y/**/z/*.By default no artifacts are excluded.
    includesPattern String
    List of comma-separated artifact patterns to include when evaluating artifact requests in the form of x/y/**/z/*. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (**/*).
    notes String
    Internal description.
    projectEnvironments List<String>
    projectKey String
    Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
    repoLayoutRef String
    Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
    repositories List<String>
    The effective list of actual repositories included in this virtual repository.
    hexPrimaryKeypairRef string
    Select the RSA key pair to sign and encrypt content for secure communication between Artifactory and the Mix client.
    key string
    A mandatory identifier for the repository that must be unique. It cannot begin with a number or contain spaces or special characters.
    artifactoryRequestsCanRetrieveRemoteArtifacts boolean
    Whether the virtual repository should search through remote repositories when trying to resolve an artifact requested by another Artifactory instance.
    defaultDeploymentRepo string
    Default repository to deploy artifacts.
    description string
    Public description.
    excludesPattern string
    List of artifact patterns to exclude when evaluating artifact requests, in the form of x/y/**/z/*.By default no artifacts are excluded.
    includesPattern string
    List of comma-separated artifact patterns to include when evaluating artifact requests in the form of x/y/**/z/*. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (**/*).
    notes string
    Internal description.
    projectEnvironments string[]
    projectKey string
    Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
    repoLayoutRef string
    Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
    repositories string[]
    The effective list of actual repositories included in this virtual repository.
    hex_primary_keypair_ref str
    Select the RSA key pair to sign and encrypt content for secure communication between Artifactory and the Mix client.
    key str
    A mandatory identifier for the repository that must be unique. It cannot begin with a number or contain spaces or special characters.
    artifactory_requests_can_retrieve_remote_artifacts bool
    Whether the virtual repository should search through remote repositories when trying to resolve an artifact requested by another Artifactory instance.
    default_deployment_repo str
    Default repository to deploy artifacts.
    description str
    Public description.
    excludes_pattern str
    List of artifact patterns to exclude when evaluating artifact requests, in the form of x/y/**/z/*.By default no artifacts are excluded.
    includes_pattern str
    List of comma-separated artifact patterns to include when evaluating artifact requests in the form of x/y/**/z/*. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (**/*).
    notes str
    Internal description.
    project_environments Sequence[str]
    project_key str
    Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
    repo_layout_ref str
    Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
    repositories Sequence[str]
    The effective list of actual repositories included in this virtual repository.
    hexPrimaryKeypairRef String
    Select the RSA key pair to sign and encrypt content for secure communication between Artifactory and the Mix client.
    key String
    A mandatory identifier for the repository that must be unique. It cannot begin with a number or contain spaces or special characters.
    artifactoryRequestsCanRetrieveRemoteArtifacts Boolean
    Whether the virtual repository should search through remote repositories when trying to resolve an artifact requested by another Artifactory instance.
    defaultDeploymentRepo String
    Default repository to deploy artifacts.
    description String
    Public description.
    excludesPattern String
    List of artifact patterns to exclude when evaluating artifact requests, in the form of x/y/**/z/*.By default no artifacts are excluded.
    includesPattern String
    List of comma-separated artifact patterns to include when evaluating artifact requests in the form of x/y/**/z/*. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (**/*).
    notes String
    Internal description.
    projectEnvironments List<String>
    projectKey String
    Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
    repoLayoutRef String
    Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
    repositories List<String>
    The effective list of actual repositories included in this virtual repository.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the VirtualHexRepository resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing VirtualHexRepository Resource

    Get an existing VirtualHexRepository 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?: VirtualHexRepositoryState, opts?: CustomResourceOptions): VirtualHexRepository
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            artifactory_requests_can_retrieve_remote_artifacts: Optional[bool] = None,
            default_deployment_repo: Optional[str] = None,
            description: Optional[str] = None,
            excludes_pattern: Optional[str] = None,
            hex_primary_keypair_ref: Optional[str] = None,
            includes_pattern: Optional[str] = None,
            key: Optional[str] = None,
            notes: Optional[str] = None,
            project_environments: Optional[Sequence[str]] = None,
            project_key: Optional[str] = None,
            repo_layout_ref: Optional[str] = None,
            repositories: Optional[Sequence[str]] = None) -> VirtualHexRepository
    func GetVirtualHexRepository(ctx *Context, name string, id IDInput, state *VirtualHexRepositoryState, opts ...ResourceOption) (*VirtualHexRepository, error)
    public static VirtualHexRepository Get(string name, Input<string> id, VirtualHexRepositoryState? state, CustomResourceOptions? opts = null)
    public static VirtualHexRepository get(String name, Output<String> id, VirtualHexRepositoryState state, CustomResourceOptions options)
    resources:  _:    type: artifactory:VirtualHexRepository    get:      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.
    The following state arguments are supported:
    ArtifactoryRequestsCanRetrieveRemoteArtifacts bool
    Whether the virtual repository should search through remote repositories when trying to resolve an artifact requested by another Artifactory instance.
    DefaultDeploymentRepo string
    Default repository to deploy artifacts.
    Description string
    Public description.
    ExcludesPattern string
    List of artifact patterns to exclude when evaluating artifact requests, in the form of x/y/**/z/*.By default no artifacts are excluded.
    HexPrimaryKeypairRef string
    Select the RSA key pair to sign and encrypt content for secure communication between Artifactory and the Mix client.
    IncludesPattern string
    List of comma-separated artifact patterns to include when evaluating artifact requests in the form of x/y/**/z/*. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (**/*).
    Key string
    A mandatory identifier for the repository that must be unique. It cannot begin with a number or contain spaces or special characters.
    Notes string
    Internal description.
    ProjectEnvironments List<string>
    ProjectKey string
    Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
    RepoLayoutRef string
    Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
    Repositories List<string>
    The effective list of actual repositories included in this virtual repository.
    ArtifactoryRequestsCanRetrieveRemoteArtifacts bool
    Whether the virtual repository should search through remote repositories when trying to resolve an artifact requested by another Artifactory instance.
    DefaultDeploymentRepo string
    Default repository to deploy artifacts.
    Description string
    Public description.
    ExcludesPattern string
    List of artifact patterns to exclude when evaluating artifact requests, in the form of x/y/**/z/*.By default no artifacts are excluded.
    HexPrimaryKeypairRef string
    Select the RSA key pair to sign and encrypt content for secure communication between Artifactory and the Mix client.
    IncludesPattern string
    List of comma-separated artifact patterns to include when evaluating artifact requests in the form of x/y/**/z/*. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (**/*).
    Key string
    A mandatory identifier for the repository that must be unique. It cannot begin with a number or contain spaces or special characters.
    Notes string
    Internal description.
    ProjectEnvironments []string
    ProjectKey string
    Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
    RepoLayoutRef string
    Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
    Repositories []string
    The effective list of actual repositories included in this virtual repository.
    artifactoryRequestsCanRetrieveRemoteArtifacts Boolean
    Whether the virtual repository should search through remote repositories when trying to resolve an artifact requested by another Artifactory instance.
    defaultDeploymentRepo String
    Default repository to deploy artifacts.
    description String
    Public description.
    excludesPattern String
    List of artifact patterns to exclude when evaluating artifact requests, in the form of x/y/**/z/*.By default no artifacts are excluded.
    hexPrimaryKeypairRef String
    Select the RSA key pair to sign and encrypt content for secure communication between Artifactory and the Mix client.
    includesPattern String
    List of comma-separated artifact patterns to include when evaluating artifact requests in the form of x/y/**/z/*. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (**/*).
    key String
    A mandatory identifier for the repository that must be unique. It cannot begin with a number or contain spaces or special characters.
    notes String
    Internal description.
    projectEnvironments List<String>
    projectKey String
    Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
    repoLayoutRef String
    Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
    repositories List<String>
    The effective list of actual repositories included in this virtual repository.
    artifactoryRequestsCanRetrieveRemoteArtifacts boolean
    Whether the virtual repository should search through remote repositories when trying to resolve an artifact requested by another Artifactory instance.
    defaultDeploymentRepo string
    Default repository to deploy artifacts.
    description string
    Public description.
    excludesPattern string
    List of artifact patterns to exclude when evaluating artifact requests, in the form of x/y/**/z/*.By default no artifacts are excluded.
    hexPrimaryKeypairRef string
    Select the RSA key pair to sign and encrypt content for secure communication between Artifactory and the Mix client.
    includesPattern string
    List of comma-separated artifact patterns to include when evaluating artifact requests in the form of x/y/**/z/*. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (**/*).
    key string
    A mandatory identifier for the repository that must be unique. It cannot begin with a number or contain spaces or special characters.
    notes string
    Internal description.
    projectEnvironments string[]
    projectKey string
    Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
    repoLayoutRef string
    Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
    repositories string[]
    The effective list of actual repositories included in this virtual repository.
    artifactory_requests_can_retrieve_remote_artifacts bool
    Whether the virtual repository should search through remote repositories when trying to resolve an artifact requested by another Artifactory instance.
    default_deployment_repo str
    Default repository to deploy artifacts.
    description str
    Public description.
    excludes_pattern str
    List of artifact patterns to exclude when evaluating artifact requests, in the form of x/y/**/z/*.By default no artifacts are excluded.
    hex_primary_keypair_ref str
    Select the RSA key pair to sign and encrypt content for secure communication between Artifactory and the Mix client.
    includes_pattern str
    List of comma-separated artifact patterns to include when evaluating artifact requests in the form of x/y/**/z/*. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (**/*).
    key str
    A mandatory identifier for the repository that must be unique. It cannot begin with a number or contain spaces or special characters.
    notes str
    Internal description.
    project_environments Sequence[str]
    project_key str
    Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
    repo_layout_ref str
    Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
    repositories Sequence[str]
    The effective list of actual repositories included in this virtual repository.
    artifactoryRequestsCanRetrieveRemoteArtifacts Boolean
    Whether the virtual repository should search through remote repositories when trying to resolve an artifact requested by another Artifactory instance.
    defaultDeploymentRepo String
    Default repository to deploy artifacts.
    description String
    Public description.
    excludesPattern String
    List of artifact patterns to exclude when evaluating artifact requests, in the form of x/y/**/z/*.By default no artifacts are excluded.
    hexPrimaryKeypairRef String
    Select the RSA key pair to sign and encrypt content for secure communication between Artifactory and the Mix client.
    includesPattern String
    List of comma-separated artifact patterns to include when evaluating artifact requests in the form of x/y/**/z/*. When used, only artifacts matching one of the include patterns are served. By default, all artifacts are included (**/*).
    key String
    A mandatory identifier for the repository that must be unique. It cannot begin with a number or contain spaces or special characters.
    notes String
    Internal description.
    projectEnvironments List<String>
    projectKey String
    Project key for assigning this repository to. Must be 2 - 32 lowercase alphanumeric and hyphen characters. When assigning repository to a project, repository key must be prefixed with project key, separated by a dash.
    repoLayoutRef String
    Sets the layout that the repository should use for storing and identifying modules. A recommended layout that corresponds to the package type defined is suggested, and index packages uploaded and calculate metadata accordingly.
    repositories List<String>
    The effective list of actual repositories included in this virtual repository.

    Import

    Virtual repositories can be imported using their name, e.g.

    $ pulumi import artifactory:index/virtualHexRepository:VirtualHexRepository my-virtual-hex my-virtual-hex
    

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    artifactory pulumi/pulumi-artifactory
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the artifactory Terraform Provider.
    artifactory logo
    artifactory v8.10.1 published on Saturday, Dec 20, 2025 by Pulumi
      Meet Neo: Your AI Platform Teammate