1. Packages
  2. Artifactory Provider
  3. API Docs
  4. RepositoryLayout
artifactory v8.8.1 published on Wednesday, Apr 9, 2025 by Pulumi

artifactory.RepositoryLayout

Explore with Pulumi AI

This resource can be used to manage Artifactory’s Repository Layout settings. See Repository Layouts in the Artifactory Wiki documentation for more details.

~>The artifactory.RepositoryLayout resource utilizes endpoints which are blocked/removed in SaaS environments (i.e. in Artifactory online), rendering this resource incompatible with Artifactory SaaS environments.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as artifactory from "@pulumi/artifactory";

const custom_layout = new artifactory.RepositoryLayout("custom-layout", {
    name: "custom-layout",
    artifactPathPattern: "[orgPath]/[module]/[baseRev](-[folderItegRev])/[module]-[baseRev](-[fileItegRev])(-[classifier]).[ext]",
    distinctiveDescriptorPathPattern: true,
    descriptorPathPattern: "[orgPath]/[module]/[baseRev](-[folderItegRev])/[module]-[baseRev](-[fileItegRev])(-[classifier]).pom",
    folderIntegrationRevisionRegexp: "Foo",
    fileIntegrationRevisionRegexp: "Foo|(?:(?:[0-9]{8}.[0-9]{6})-(?:[0-9]+))",
});
Copy
import pulumi
import pulumi_artifactory as artifactory

custom_layout = artifactory.RepositoryLayout("custom-layout",
    name="custom-layout",
    artifact_path_pattern="[orgPath]/[module]/[baseRev](-[folderItegRev])/[module]-[baseRev](-[fileItegRev])(-[classifier]).[ext]",
    distinctive_descriptor_path_pattern=True,
    descriptor_path_pattern="[orgPath]/[module]/[baseRev](-[folderItegRev])/[module]-[baseRev](-[fileItegRev])(-[classifier]).pom",
    folder_integration_revision_regexp="Foo",
    file_integration_revision_regexp="Foo|(?:(?:[0-9]{8}.[0-9]{6})-(?:[0-9]+))")
Copy
package main

import (
	"github.com/pulumi/pulumi-artifactory/sdk/v8/go/artifactory"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := artifactory.NewRepositoryLayout(ctx, "custom-layout", &artifactory.RepositoryLayoutArgs{
			Name:                             pulumi.String("custom-layout"),
			ArtifactPathPattern:              pulumi.String("[orgPath]/[module]/[baseRev](-[folderItegRev])/[module]-[baseRev](-[fileItegRev])(-[classifier]).[ext]"),
			DistinctiveDescriptorPathPattern: pulumi.Bool(true),
			DescriptorPathPattern:            pulumi.String("[orgPath]/[module]/[baseRev](-[folderItegRev])/[module]-[baseRev](-[fileItegRev])(-[classifier]).pom"),
			FolderIntegrationRevisionRegexp:  pulumi.String("Foo"),
			FileIntegrationRevisionRegexp:    pulumi.String("Foo|(?:(?:[0-9]{8}.[0-9]{6})-(?:[0-9]+))"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Artifactory = Pulumi.Artifactory;

return await Deployment.RunAsync(() => 
{
    var custom_layout = new Artifactory.RepositoryLayout("custom-layout", new()
    {
        Name = "custom-layout",
        ArtifactPathPattern = "[orgPath]/[module]/[baseRev](-[folderItegRev])/[module]-[baseRev](-[fileItegRev])(-[classifier]).[ext]",
        DistinctiveDescriptorPathPattern = true,
        DescriptorPathPattern = "[orgPath]/[module]/[baseRev](-[folderItegRev])/[module]-[baseRev](-[fileItegRev])(-[classifier]).pom",
        FolderIntegrationRevisionRegexp = "Foo",
        FileIntegrationRevisionRegexp = "Foo|(?:(?:[0-9]{8}.[0-9]{6})-(?:[0-9]+))",
    });

});
Copy
package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.artifactory.RepositoryLayout;
import com.pulumi.artifactory.RepositoryLayoutArgs;
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 custom_layout = new RepositoryLayout("custom-layout", RepositoryLayoutArgs.builder()
            .name("custom-layout")
            .artifactPathPattern("[orgPath]/[module]/[baseRev](-[folderItegRev])/[module]-[baseRev](-[fileItegRev])(-[classifier]).[ext]")
            .distinctiveDescriptorPathPattern(true)
            .descriptorPathPattern("[orgPath]/[module]/[baseRev](-[folderItegRev])/[module]-[baseRev](-[fileItegRev])(-[classifier]).pom")
            .folderIntegrationRevisionRegexp("Foo")
            .fileIntegrationRevisionRegexp("Foo|(?:(?:[0-9]{8}.[0-9]{6})-(?:[0-9]+))")
            .build());

    }
}
Copy
resources:
  custom-layout:
    type: artifactory:RepositoryLayout
    properties:
      name: custom-layout
      artifactPathPattern: '[orgPath]/[module]/[baseRev](-[folderItegRev])/[module]-[baseRev](-[fileItegRev])(-[classifier]).[ext]'
      distinctiveDescriptorPathPattern: true
      descriptorPathPattern: '[orgPath]/[module]/[baseRev](-[folderItegRev])/[module]-[baseRev](-[fileItegRev])(-[classifier]).pom'
      folderIntegrationRevisionRegexp: Foo
      fileIntegrationRevisionRegexp: Foo|(?:(?:[0-9]{8}.[0-9]{6})-(?:[0-9]+))
Copy

Create RepositoryLayout Resource

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

Constructor syntax

new RepositoryLayout(name: string, args: RepositoryLayoutArgs, opts?: CustomResourceOptions);
@overload
def RepositoryLayout(resource_name: str,
                     args: RepositoryLayoutArgs,
                     opts: Optional[ResourceOptions] = None)

@overload
def RepositoryLayout(resource_name: str,
                     opts: Optional[ResourceOptions] = None,
                     artifact_path_pattern: Optional[str] = None,
                     file_integration_revision_regexp: Optional[str] = None,
                     folder_integration_revision_regexp: Optional[str] = None,
                     descriptor_path_pattern: Optional[str] = None,
                     distinctive_descriptor_path_pattern: Optional[bool] = None,
                     name: Optional[str] = None)
func NewRepositoryLayout(ctx *Context, name string, args RepositoryLayoutArgs, opts ...ResourceOption) (*RepositoryLayout, error)
public RepositoryLayout(string name, RepositoryLayoutArgs args, CustomResourceOptions? opts = null)
public RepositoryLayout(String name, RepositoryLayoutArgs args)
public RepositoryLayout(String name, RepositoryLayoutArgs args, CustomResourceOptions options)
type: artifactory:RepositoryLayout
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. RepositoryLayoutArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. RepositoryLayoutArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. RepositoryLayoutArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. RepositoryLayoutArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. RepositoryLayoutArgs
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 repositoryLayoutResource = new Artifactory.RepositoryLayout("repositoryLayoutResource", new()
{
    ArtifactPathPattern = "string",
    FileIntegrationRevisionRegexp = "string",
    FolderIntegrationRevisionRegexp = "string",
    DescriptorPathPattern = "string",
    DistinctiveDescriptorPathPattern = false,
    Name = "string",
});
Copy
example, err := artifactory.NewRepositoryLayout(ctx, "repositoryLayoutResource", &artifactory.RepositoryLayoutArgs{
	ArtifactPathPattern:              pulumi.String("string"),
	FileIntegrationRevisionRegexp:    pulumi.String("string"),
	FolderIntegrationRevisionRegexp:  pulumi.String("string"),
	DescriptorPathPattern:            pulumi.String("string"),
	DistinctiveDescriptorPathPattern: pulumi.Bool(false),
	Name:                             pulumi.String("string"),
})
Copy
var repositoryLayoutResource = new RepositoryLayout("repositoryLayoutResource", RepositoryLayoutArgs.builder()
    .artifactPathPattern("string")
    .fileIntegrationRevisionRegexp("string")
    .folderIntegrationRevisionRegexp("string")
    .descriptorPathPattern("string")
    .distinctiveDescriptorPathPattern(false)
    .name("string")
    .build());
Copy
repository_layout_resource = artifactory.RepositoryLayout("repositoryLayoutResource",
    artifact_path_pattern="string",
    file_integration_revision_regexp="string",
    folder_integration_revision_regexp="string",
    descriptor_path_pattern="string",
    distinctive_descriptor_path_pattern=False,
    name="string")
Copy
const repositoryLayoutResource = new artifactory.RepositoryLayout("repositoryLayoutResource", {
    artifactPathPattern: "string",
    fileIntegrationRevisionRegexp: "string",
    folderIntegrationRevisionRegexp: "string",
    descriptorPathPattern: "string",
    distinctiveDescriptorPathPattern: false,
    name: "string",
});
Copy
type: artifactory:RepositoryLayout
properties:
    artifactPathPattern: string
    descriptorPathPattern: string
    distinctiveDescriptorPathPattern: false
    fileIntegrationRevisionRegexp: string
    folderIntegrationRevisionRegexp: string
    name: string
Copy

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

ArtifactPathPattern This property is required. string
Please refer to: Path Patterns in the Artifactory Wiki documentation.
FileIntegrationRevisionRegexp This property is required. string
A regular expression matching the integration revision string appearing in a file name as part of the artifact's path. For example, SNAPSHOT|(?:(?:[0-9]{8}.[0-9]{6})-(?:[0-9]+)), in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
FolderIntegrationRevisionRegexp This property is required. string
A regular expression matching the integration revision string appearing in a folder name as part of the artifact's path. For example, SNAPSHOT, in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
DescriptorPathPattern string
Please refer to: Descriptor Path Patterns in the Artifactory Wiki documentation.
DistinctiveDescriptorPathPattern bool
When set, descriptor_path_pattern will be used. Default to false.
Name string
Layout name
ArtifactPathPattern This property is required. string
Please refer to: Path Patterns in the Artifactory Wiki documentation.
FileIntegrationRevisionRegexp This property is required. string
A regular expression matching the integration revision string appearing in a file name as part of the artifact's path. For example, SNAPSHOT|(?:(?:[0-9]{8}.[0-9]{6})-(?:[0-9]+)), in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
FolderIntegrationRevisionRegexp This property is required. string
A regular expression matching the integration revision string appearing in a folder name as part of the artifact's path. For example, SNAPSHOT, in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
DescriptorPathPattern string
Please refer to: Descriptor Path Patterns in the Artifactory Wiki documentation.
DistinctiveDescriptorPathPattern bool
When set, descriptor_path_pattern will be used. Default to false.
Name string
Layout name
artifactPathPattern This property is required. String
Please refer to: Path Patterns in the Artifactory Wiki documentation.
fileIntegrationRevisionRegexp This property is required. String
A regular expression matching the integration revision string appearing in a file name as part of the artifact's path. For example, SNAPSHOT|(?:(?:[0-9]{8}.[0-9]{6})-(?:[0-9]+)), in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
folderIntegrationRevisionRegexp This property is required. String
A regular expression matching the integration revision string appearing in a folder name as part of the artifact's path. For example, SNAPSHOT, in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
descriptorPathPattern String
Please refer to: Descriptor Path Patterns in the Artifactory Wiki documentation.
distinctiveDescriptorPathPattern Boolean
When set, descriptor_path_pattern will be used. Default to false.
name String
Layout name
artifactPathPattern This property is required. string
Please refer to: Path Patterns in the Artifactory Wiki documentation.
fileIntegrationRevisionRegexp This property is required. string
A regular expression matching the integration revision string appearing in a file name as part of the artifact's path. For example, SNAPSHOT|(?:(?:[0-9]{8}.[0-9]{6})-(?:[0-9]+)), in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
folderIntegrationRevisionRegexp This property is required. string
A regular expression matching the integration revision string appearing in a folder name as part of the artifact's path. For example, SNAPSHOT, in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
descriptorPathPattern string
Please refer to: Descriptor Path Patterns in the Artifactory Wiki documentation.
distinctiveDescriptorPathPattern boolean
When set, descriptor_path_pattern will be used. Default to false.
name string
Layout name
artifact_path_pattern This property is required. str
Please refer to: Path Patterns in the Artifactory Wiki documentation.
file_integration_revision_regexp This property is required. str
A regular expression matching the integration revision string appearing in a file name as part of the artifact's path. For example, SNAPSHOT|(?:(?:[0-9]{8}.[0-9]{6})-(?:[0-9]+)), in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
folder_integration_revision_regexp This property is required. str
A regular expression matching the integration revision string appearing in a folder name as part of the artifact's path. For example, SNAPSHOT, in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
descriptor_path_pattern str
Please refer to: Descriptor Path Patterns in the Artifactory Wiki documentation.
distinctive_descriptor_path_pattern bool
When set, descriptor_path_pattern will be used. Default to false.
name str
Layout name
artifactPathPattern This property is required. String
Please refer to: Path Patterns in the Artifactory Wiki documentation.
fileIntegrationRevisionRegexp This property is required. String
A regular expression matching the integration revision string appearing in a file name as part of the artifact's path. For example, SNAPSHOT|(?:(?:[0-9]{8}.[0-9]{6})-(?:[0-9]+)), in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
folderIntegrationRevisionRegexp This property is required. String
A regular expression matching the integration revision string appearing in a folder name as part of the artifact's path. For example, SNAPSHOT, in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
descriptorPathPattern String
Please refer to: Descriptor Path Patterns in the Artifactory Wiki documentation.
distinctiveDescriptorPathPattern Boolean
When set, descriptor_path_pattern will be used. Default to false.
name String
Layout name

Outputs

All input properties are implicitly available as output properties. Additionally, the RepositoryLayout 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 RepositoryLayout Resource

Get an existing RepositoryLayout 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?: RepositoryLayoutState, opts?: CustomResourceOptions): RepositoryLayout
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        artifact_path_pattern: Optional[str] = None,
        descriptor_path_pattern: Optional[str] = None,
        distinctive_descriptor_path_pattern: Optional[bool] = None,
        file_integration_revision_regexp: Optional[str] = None,
        folder_integration_revision_regexp: Optional[str] = None,
        name: Optional[str] = None) -> RepositoryLayout
func GetRepositoryLayout(ctx *Context, name string, id IDInput, state *RepositoryLayoutState, opts ...ResourceOption) (*RepositoryLayout, error)
public static RepositoryLayout Get(string name, Input<string> id, RepositoryLayoutState? state, CustomResourceOptions? opts = null)
public static RepositoryLayout get(String name, Output<String> id, RepositoryLayoutState state, CustomResourceOptions options)
resources:  _:    type: artifactory:RepositoryLayout    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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:
ArtifactPathPattern string
Please refer to: Path Patterns in the Artifactory Wiki documentation.
DescriptorPathPattern string
Please refer to: Descriptor Path Patterns in the Artifactory Wiki documentation.
DistinctiveDescriptorPathPattern bool
When set, descriptor_path_pattern will be used. Default to false.
FileIntegrationRevisionRegexp string
A regular expression matching the integration revision string appearing in a file name as part of the artifact's path. For example, SNAPSHOT|(?:(?:[0-9]{8}.[0-9]{6})-(?:[0-9]+)), in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
FolderIntegrationRevisionRegexp string
A regular expression matching the integration revision string appearing in a folder name as part of the artifact's path. For example, SNAPSHOT, in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
Name string
Layout name
ArtifactPathPattern string
Please refer to: Path Patterns in the Artifactory Wiki documentation.
DescriptorPathPattern string
Please refer to: Descriptor Path Patterns in the Artifactory Wiki documentation.
DistinctiveDescriptorPathPattern bool
When set, descriptor_path_pattern will be used. Default to false.
FileIntegrationRevisionRegexp string
A regular expression matching the integration revision string appearing in a file name as part of the artifact's path. For example, SNAPSHOT|(?:(?:[0-9]{8}.[0-9]{6})-(?:[0-9]+)), in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
FolderIntegrationRevisionRegexp string
A regular expression matching the integration revision string appearing in a folder name as part of the artifact's path. For example, SNAPSHOT, in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
Name string
Layout name
artifactPathPattern String
Please refer to: Path Patterns in the Artifactory Wiki documentation.
descriptorPathPattern String
Please refer to: Descriptor Path Patterns in the Artifactory Wiki documentation.
distinctiveDescriptorPathPattern Boolean
When set, descriptor_path_pattern will be used. Default to false.
fileIntegrationRevisionRegexp String
A regular expression matching the integration revision string appearing in a file name as part of the artifact's path. For example, SNAPSHOT|(?:(?:[0-9]{8}.[0-9]{6})-(?:[0-9]+)), in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
folderIntegrationRevisionRegexp String
A regular expression matching the integration revision string appearing in a folder name as part of the artifact's path. For example, SNAPSHOT, in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
name String
Layout name
artifactPathPattern string
Please refer to: Path Patterns in the Artifactory Wiki documentation.
descriptorPathPattern string
Please refer to: Descriptor Path Patterns in the Artifactory Wiki documentation.
distinctiveDescriptorPathPattern boolean
When set, descriptor_path_pattern will be used. Default to false.
fileIntegrationRevisionRegexp string
A regular expression matching the integration revision string appearing in a file name as part of the artifact's path. For example, SNAPSHOT|(?:(?:[0-9]{8}.[0-9]{6})-(?:[0-9]+)), in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
folderIntegrationRevisionRegexp string
A regular expression matching the integration revision string appearing in a folder name as part of the artifact's path. For example, SNAPSHOT, in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
name string
Layout name
artifact_path_pattern str
Please refer to: Path Patterns in the Artifactory Wiki documentation.
descriptor_path_pattern str
Please refer to: Descriptor Path Patterns in the Artifactory Wiki documentation.
distinctive_descriptor_path_pattern bool
When set, descriptor_path_pattern will be used. Default to false.
file_integration_revision_regexp str
A regular expression matching the integration revision string appearing in a file name as part of the artifact's path. For example, SNAPSHOT|(?:(?:[0-9]{8}.[0-9]{6})-(?:[0-9]+)), in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
folder_integration_revision_regexp str
A regular expression matching the integration revision string appearing in a folder name as part of the artifact's path. For example, SNAPSHOT, in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
name str
Layout name
artifactPathPattern String
Please refer to: Path Patterns in the Artifactory Wiki documentation.
descriptorPathPattern String
Please refer to: Descriptor Path Patterns in the Artifactory Wiki documentation.
distinctiveDescriptorPathPattern Boolean
When set, descriptor_path_pattern will be used. Default to false.
fileIntegrationRevisionRegexp String
A regular expression matching the integration revision string appearing in a file name as part of the artifact's path. For example, SNAPSHOT|(?:(?:[0-9]{8}.[0-9]{6})-(?:[0-9]+)), in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
folderIntegrationRevisionRegexp String
A regular expression matching the integration revision string appearing in a folder name as part of the artifact's path. For example, SNAPSHOT, in Maven. Note! Take care not to introduce any regexp capturing groups within this expression. If not applicable use .*
name String
Layout name

Import

Repository layout can be imported using its name, e.g.

$ pulumi import artifactory:index/repositoryLayout:RepositoryLayout custom-layout custom-layout
Copy

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.