Google Cloud Native is in preview. Google Cloud Classic is fully supported.
google-native.artifactregistry/v1beta2.Repository
Explore with Pulumi AI
Google Cloud Native is in preview. Google Cloud Classic is fully supported.
Creates a repository. The returned Operation will finish once the repository has been created. Its response will be the created Repository.
Create Repository Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Repository(name: string, args: RepositoryArgs, opts?: CustomResourceOptions);
@overload
def Repository(resource_name: str,
args: RepositoryArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Repository(resource_name: str,
opts: Optional[ResourceOptions] = None,
repository_id: Optional[str] = None,
description: Optional[str] = None,
format: Optional[RepositoryFormat] = None,
kms_key_name: Optional[str] = None,
labels: Optional[Mapping[str, str]] = None,
location: Optional[str] = None,
maven_config: Optional[MavenRepositoryConfigArgs] = None,
name: Optional[str] = None,
project: Optional[str] = None)
func NewRepository(ctx *Context, name string, args RepositoryArgs, opts ...ResourceOption) (*Repository, error)
public Repository(string name, RepositoryArgs args, CustomResourceOptions? opts = null)
public Repository(String name, RepositoryArgs args)
public Repository(String name, RepositoryArgs args, CustomResourceOptions options)
type: google-native:artifactregistry/v1beta2:Repository
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 RepositoryArgs
- 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 RepositoryArgs
- 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 RepositoryArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args RepositoryArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args RepositoryArgs
- 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 examplerepositoryResourceResourceFromArtifactregistryv1beta2 = new GoogleNative.ArtifactRegistry.V1Beta2.Repository("examplerepositoryResourceResourceFromArtifactregistryv1beta2", new()
{
RepositoryId = "string",
Description = "string",
Format = GoogleNative.ArtifactRegistry.V1Beta2.RepositoryFormat.FormatUnspecified,
KmsKeyName = "string",
Labels =
{
{ "string", "string" },
},
Location = "string",
MavenConfig = new GoogleNative.ArtifactRegistry.V1Beta2.Inputs.MavenRepositoryConfigArgs
{
AllowSnapshotOverwrites = false,
VersionPolicy = GoogleNative.ArtifactRegistry.V1Beta2.MavenRepositoryConfigVersionPolicy.VersionPolicyUnspecified,
},
Name = "string",
Project = "string",
});
example, err := artifactregistryv1beta2.NewRepository(ctx, "examplerepositoryResourceResourceFromArtifactregistryv1beta2", &artifactregistryv1beta2.RepositoryArgs{
RepositoryId: pulumi.String("string"),
Description: pulumi.String("string"),
Format: artifactregistryv1beta2.RepositoryFormatFormatUnspecified,
KmsKeyName: pulumi.String("string"),
Labels: pulumi.StringMap{
"string": pulumi.String("string"),
},
Location: pulumi.String("string"),
MavenConfig: &artifactregistry.MavenRepositoryConfigArgs{
AllowSnapshotOverwrites: pulumi.Bool(false),
VersionPolicy: artifactregistryv1beta2.MavenRepositoryConfigVersionPolicyVersionPolicyUnspecified,
},
Name: pulumi.String("string"),
Project: pulumi.String("string"),
})
var examplerepositoryResourceResourceFromArtifactregistryv1beta2 = new Repository("examplerepositoryResourceResourceFromArtifactregistryv1beta2", RepositoryArgs.builder()
.repositoryId("string")
.description("string")
.format("FORMAT_UNSPECIFIED")
.kmsKeyName("string")
.labels(Map.of("string", "string"))
.location("string")
.mavenConfig(MavenRepositoryConfigArgs.builder()
.allowSnapshotOverwrites(false)
.versionPolicy("VERSION_POLICY_UNSPECIFIED")
.build())
.name("string")
.project("string")
.build());
examplerepository_resource_resource_from_artifactregistryv1beta2 = google_native.artifactregistry.v1beta2.Repository("examplerepositoryResourceResourceFromArtifactregistryv1beta2",
repository_id="string",
description="string",
format=google_native.artifactregistry.v1beta2.RepositoryFormat.FORMAT_UNSPECIFIED,
kms_key_name="string",
labels={
"string": "string",
},
location="string",
maven_config=google_native.artifactregistry.v1beta2.MavenRepositoryConfigArgs(
allow_snapshot_overwrites=False,
version_policy=google_native.artifactregistry.v1beta2.MavenRepositoryConfigVersionPolicy.VERSION_POLICY_UNSPECIFIED,
),
name="string",
project="string")
const examplerepositoryResourceResourceFromArtifactregistryv1beta2 = new google_native.artifactregistry.v1beta2.Repository("examplerepositoryResourceResourceFromArtifactregistryv1beta2", {
repositoryId: "string",
description: "string",
format: google_native.artifactregistry.v1beta2.RepositoryFormat.FormatUnspecified,
kmsKeyName: "string",
labels: {
string: "string",
},
location: "string",
mavenConfig: {
allowSnapshotOverwrites: false,
versionPolicy: google_native.artifactregistry.v1beta2.MavenRepositoryConfigVersionPolicy.VersionPolicyUnspecified,
},
name: "string",
project: "string",
});
type: google-native:artifactregistry/v1beta2:Repository
properties:
description: string
format: FORMAT_UNSPECIFIED
kmsKeyName: string
labels:
string: string
location: string
mavenConfig:
allowSnapshotOverwrites: false
versionPolicy: VERSION_POLICY_UNSPECIFIED
name: string
project: string
repositoryId: string
Repository Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The Repository resource accepts the following input properties:
- Repository
Id string - Required. The repository id to use for this repository.
- Description string
- The user-provided description of the repository.
- Format
Pulumi.
Google Native. Artifact Registry. V1Beta2. Repository Format - Optional. The format of packages that are stored in the repository.
- Kms
Key stringName - The Cloud KMS resource name of the customer managed encryption key that's used to encrypt the contents of the Repository. Has the form:
projects/my-project/locations/my-region/keyRings/my-kr/cryptoKeys/my-key
. This value may not be changed after the Repository has been created. - Labels Dictionary<string, string>
- Labels with user-defined metadata. This field may contain up to 64 entries. Label keys and values may be no longer than 63 characters. Label keys must begin with a lowercase letter and may only contain lowercase letters, numeric characters, underscores, and dashes.
- Location string
- Maven
Config Pulumi.Google Native. Artifact Registry. V1Beta2. Inputs. Maven Repository Config - Maven repository config contains repository level configuration for the repositories of maven type.
- Name string
- The name of the repository, for example:
projects/p1/locations/us-central1/repositories/repo1
. - Project string
- Repository
Id string - Required. The repository id to use for this repository.
- Description string
- The user-provided description of the repository.
- Format
Repository
Format - Optional. The format of packages that are stored in the repository.
- Kms
Key stringName - The Cloud KMS resource name of the customer managed encryption key that's used to encrypt the contents of the Repository. Has the form:
projects/my-project/locations/my-region/keyRings/my-kr/cryptoKeys/my-key
. This value may not be changed after the Repository has been created. - Labels map[string]string
- Labels with user-defined metadata. This field may contain up to 64 entries. Label keys and values may be no longer than 63 characters. Label keys must begin with a lowercase letter and may only contain lowercase letters, numeric characters, underscores, and dashes.
- Location string
- Maven
Config MavenRepository Config Args - Maven repository config contains repository level configuration for the repositories of maven type.
- Name string
- The name of the repository, for example:
projects/p1/locations/us-central1/repositories/repo1
. - Project string
- repository
Id String - Required. The repository id to use for this repository.
- description String
- The user-provided description of the repository.
- format
Repository
Format - Optional. The format of packages that are stored in the repository.
- kms
Key StringName - The Cloud KMS resource name of the customer managed encryption key that's used to encrypt the contents of the Repository. Has the form:
projects/my-project/locations/my-region/keyRings/my-kr/cryptoKeys/my-key
. This value may not be changed after the Repository has been created. - labels Map<String,String>
- Labels with user-defined metadata. This field may contain up to 64 entries. Label keys and values may be no longer than 63 characters. Label keys must begin with a lowercase letter and may only contain lowercase letters, numeric characters, underscores, and dashes.
- location String
- maven
Config MavenRepository Config - Maven repository config contains repository level configuration for the repositories of maven type.
- name String
- The name of the repository, for example:
projects/p1/locations/us-central1/repositories/repo1
. - project String
- repository
Id string - Required. The repository id to use for this repository.
- description string
- The user-provided description of the repository.
- format
Repository
Format - Optional. The format of packages that are stored in the repository.
- kms
Key stringName - The Cloud KMS resource name of the customer managed encryption key that's used to encrypt the contents of the Repository. Has the form:
projects/my-project/locations/my-region/keyRings/my-kr/cryptoKeys/my-key
. This value may not be changed after the Repository has been created. - labels {[key: string]: string}
- Labels with user-defined metadata. This field may contain up to 64 entries. Label keys and values may be no longer than 63 characters. Label keys must begin with a lowercase letter and may only contain lowercase letters, numeric characters, underscores, and dashes.
- location string
- maven
Config MavenRepository Config - Maven repository config contains repository level configuration for the repositories of maven type.
- name string
- The name of the repository, for example:
projects/p1/locations/us-central1/repositories/repo1
. - project string
- repository_
id str - Required. The repository id to use for this repository.
- description str
- The user-provided description of the repository.
- format
Repository
Format - Optional. The format of packages that are stored in the repository.
- kms_
key_ strname - The Cloud KMS resource name of the customer managed encryption key that's used to encrypt the contents of the Repository. Has the form:
projects/my-project/locations/my-region/keyRings/my-kr/cryptoKeys/my-key
. This value may not be changed after the Repository has been created. - labels Mapping[str, str]
- Labels with user-defined metadata. This field may contain up to 64 entries. Label keys and values may be no longer than 63 characters. Label keys must begin with a lowercase letter and may only contain lowercase letters, numeric characters, underscores, and dashes.
- location str
- maven_
config MavenRepository Config Args - Maven repository config contains repository level configuration for the repositories of maven type.
- name str
- The name of the repository, for example:
projects/p1/locations/us-central1/repositories/repo1
. - project str
- repository
Id String - Required. The repository id to use for this repository.
- description String
- The user-provided description of the repository.
- format "FORMAT_UNSPECIFIED" | "DOCKER" | "MAVEN" | "NPM" | "APT" | "YUM" | "GOOGET" | "PYTHON"
- Optional. The format of packages that are stored in the repository.
- kms
Key StringName - The Cloud KMS resource name of the customer managed encryption key that's used to encrypt the contents of the Repository. Has the form:
projects/my-project/locations/my-region/keyRings/my-kr/cryptoKeys/my-key
. This value may not be changed after the Repository has been created. - labels Map<String>
- Labels with user-defined metadata. This field may contain up to 64 entries. Label keys and values may be no longer than 63 characters. Label keys must begin with a lowercase letter and may only contain lowercase letters, numeric characters, underscores, and dashes.
- location String
- maven
Config Property Map - Maven repository config contains repository level configuration for the repositories of maven type.
- name String
- The name of the repository, for example:
projects/p1/locations/us-central1/repositories/repo1
. - project String
Outputs
All input properties are implicitly available as output properties. Additionally, the Repository resource produces the following output properties:
- Create
Time string - The time when the repository was created.
- Id string
- The provider-assigned unique ID for this managed resource.
- Satisfies
Pzs bool - If set, the repository satisfies physical zone separation.
- Size
Bytes string - The size, in bytes, of all artifact storage in this repository. Repositories that are generally available or in public preview use this to calculate storage costs.
- Update
Time string - The time when the repository was last updated.
- Create
Time string - The time when the repository was created.
- Id string
- The provider-assigned unique ID for this managed resource.
- Satisfies
Pzs bool - If set, the repository satisfies physical zone separation.
- Size
Bytes string - The size, in bytes, of all artifact storage in this repository. Repositories that are generally available or in public preview use this to calculate storage costs.
- Update
Time string - The time when the repository was last updated.
- create
Time String - The time when the repository was created.
- id String
- The provider-assigned unique ID for this managed resource.
- satisfies
Pzs Boolean - If set, the repository satisfies physical zone separation.
- size
Bytes String - The size, in bytes, of all artifact storage in this repository. Repositories that are generally available or in public preview use this to calculate storage costs.
- update
Time String - The time when the repository was last updated.
- create
Time string - The time when the repository was created.
- id string
- The provider-assigned unique ID for this managed resource.
- satisfies
Pzs boolean - If set, the repository satisfies physical zone separation.
- size
Bytes string - The size, in bytes, of all artifact storage in this repository. Repositories that are generally available or in public preview use this to calculate storage costs.
- update
Time string - The time when the repository was last updated.
- create_
time str - The time when the repository was created.
- id str
- The provider-assigned unique ID for this managed resource.
- satisfies_
pzs bool - If set, the repository satisfies physical zone separation.
- size_
bytes str - The size, in bytes, of all artifact storage in this repository. Repositories that are generally available or in public preview use this to calculate storage costs.
- update_
time str - The time when the repository was last updated.
- create
Time String - The time when the repository was created.
- id String
- The provider-assigned unique ID for this managed resource.
- satisfies
Pzs Boolean - If set, the repository satisfies physical zone separation.
- size
Bytes String - The size, in bytes, of all artifact storage in this repository. Repositories that are generally available or in public preview use this to calculate storage costs.
- update
Time String - The time when the repository was last updated.
Supporting Types
MavenRepositoryConfig, MavenRepositoryConfigArgs
- Allow
Snapshot boolOverwrites - The repository with this flag will allow publishing the same snapshot versions.
- Version
Policy Pulumi.Google Native. Artifact Registry. V1Beta2. Maven Repository Config Version Policy - Version policy defines the versions that the registry will accept.
- Allow
Snapshot boolOverwrites - The repository with this flag will allow publishing the same snapshot versions.
- Version
Policy MavenRepository Config Version Policy - Version policy defines the versions that the registry will accept.
- allow
Snapshot BooleanOverwrites - The repository with this flag will allow publishing the same snapshot versions.
- version
Policy MavenRepository Config Version Policy - Version policy defines the versions that the registry will accept.
- allow
Snapshot booleanOverwrites - The repository with this flag will allow publishing the same snapshot versions.
- version
Policy MavenRepository Config Version Policy - Version policy defines the versions that the registry will accept.
- allow_
snapshot_ booloverwrites - The repository with this flag will allow publishing the same snapshot versions.
- version_
policy MavenRepository Config Version Policy - Version policy defines the versions that the registry will accept.
- allow
Snapshot BooleanOverwrites - The repository with this flag will allow publishing the same snapshot versions.
- version
Policy "VERSION_POLICY_UNSPECIFIED" | "RELEASE" | "SNAPSHOT" - Version policy defines the versions that the registry will accept.
MavenRepositoryConfigResponse, MavenRepositoryConfigResponseArgs
- Allow
Snapshot boolOverwrites - The repository with this flag will allow publishing the same snapshot versions.
- Version
Policy string - Version policy defines the versions that the registry will accept.
- Allow
Snapshot boolOverwrites - The repository with this flag will allow publishing the same snapshot versions.
- Version
Policy string - Version policy defines the versions that the registry will accept.
- allow
Snapshot BooleanOverwrites - The repository with this flag will allow publishing the same snapshot versions.
- version
Policy String - Version policy defines the versions that the registry will accept.
- allow
Snapshot booleanOverwrites - The repository with this flag will allow publishing the same snapshot versions.
- version
Policy string - Version policy defines the versions that the registry will accept.
- allow_
snapshot_ booloverwrites - The repository with this flag will allow publishing the same snapshot versions.
- version_
policy str - Version policy defines the versions that the registry will accept.
- allow
Snapshot BooleanOverwrites - The repository with this flag will allow publishing the same snapshot versions.
- version
Policy String - Version policy defines the versions that the registry will accept.
MavenRepositoryConfigVersionPolicy, MavenRepositoryConfigVersionPolicyArgs
- Version
Policy Unspecified - VERSION_POLICY_UNSPECIFIEDVERSION_POLICY_UNSPECIFIED - the version policy is not defined. When the version policy is not defined, no validation is performed for the versions.
- Release
- RELEASERELEASE - repository will accept only Release versions.
- Snapshot
- SNAPSHOTSNAPSHOT - repository will accept only Snapshot versions.
- Maven
Repository Config Version Policy Version Policy Unspecified - VERSION_POLICY_UNSPECIFIEDVERSION_POLICY_UNSPECIFIED - the version policy is not defined. When the version policy is not defined, no validation is performed for the versions.
- Maven
Repository Config Version Policy Release - RELEASERELEASE - repository will accept only Release versions.
- Maven
Repository Config Version Policy Snapshot - SNAPSHOTSNAPSHOT - repository will accept only Snapshot versions.
- Version
Policy Unspecified - VERSION_POLICY_UNSPECIFIEDVERSION_POLICY_UNSPECIFIED - the version policy is not defined. When the version policy is not defined, no validation is performed for the versions.
- Release
- RELEASERELEASE - repository will accept only Release versions.
- Snapshot
- SNAPSHOTSNAPSHOT - repository will accept only Snapshot versions.
- Version
Policy Unspecified - VERSION_POLICY_UNSPECIFIEDVERSION_POLICY_UNSPECIFIED - the version policy is not defined. When the version policy is not defined, no validation is performed for the versions.
- Release
- RELEASERELEASE - repository will accept only Release versions.
- Snapshot
- SNAPSHOTSNAPSHOT - repository will accept only Snapshot versions.
- VERSION_POLICY_UNSPECIFIED
- VERSION_POLICY_UNSPECIFIEDVERSION_POLICY_UNSPECIFIED - the version policy is not defined. When the version policy is not defined, no validation is performed for the versions.
- RELEASE
- RELEASERELEASE - repository will accept only Release versions.
- SNAPSHOT
- SNAPSHOTSNAPSHOT - repository will accept only Snapshot versions.
- "VERSION_POLICY_UNSPECIFIED"
- VERSION_POLICY_UNSPECIFIEDVERSION_POLICY_UNSPECIFIED - the version policy is not defined. When the version policy is not defined, no validation is performed for the versions.
- "RELEASE"
- RELEASERELEASE - repository will accept only Release versions.
- "SNAPSHOT"
- SNAPSHOTSNAPSHOT - repository will accept only Snapshot versions.
RepositoryFormat, RepositoryFormatArgs
- Format
Unspecified - FORMAT_UNSPECIFIEDUnspecified package format.
- Docker
- DOCKERDocker package format.
- Maven
- MAVENMaven package format.
- Npm
- NPMNPM package format.
- Apt
- APTAPT package format.
- Yum
- YUMYUM package format.
- Googet
- GOOGETGooGet package format.
- Python
- PYTHONPython package format.
- Repository
Format Format Unspecified - FORMAT_UNSPECIFIEDUnspecified package format.
- Repository
Format Docker - DOCKERDocker package format.
- Repository
Format Maven - MAVENMaven package format.
- Repository
Format Npm - NPMNPM package format.
- Repository
Format Apt - APTAPT package format.
- Repository
Format Yum - YUMYUM package format.
- Repository
Format Googet - GOOGETGooGet package format.
- Repository
Format Python - PYTHONPython package format.
- Format
Unspecified - FORMAT_UNSPECIFIEDUnspecified package format.
- Docker
- DOCKERDocker package format.
- Maven
- MAVENMaven package format.
- Npm
- NPMNPM package format.
- Apt
- APTAPT package format.
- Yum
- YUMYUM package format.
- Googet
- GOOGETGooGet package format.
- Python
- PYTHONPython package format.
- Format
Unspecified - FORMAT_UNSPECIFIEDUnspecified package format.
- Docker
- DOCKERDocker package format.
- Maven
- MAVENMaven package format.
- Npm
- NPMNPM package format.
- Apt
- APTAPT package format.
- Yum
- YUMYUM package format.
- Googet
- GOOGETGooGet package format.
- Python
- PYTHONPython package format.
- FORMAT_UNSPECIFIED
- FORMAT_UNSPECIFIEDUnspecified package format.
- DOCKER
- DOCKERDocker package format.
- MAVEN
- MAVENMaven package format.
- NPM
- NPMNPM package format.
- APT
- APTAPT package format.
- YUM
- YUMYUM package format.
- GOOGET
- GOOGETGooGet package format.
- PYTHON
- PYTHONPython package format.
- "FORMAT_UNSPECIFIED"
- FORMAT_UNSPECIFIEDUnspecified package format.
- "DOCKER"
- DOCKERDocker package format.
- "MAVEN"
- MAVENMaven package format.
- "NPM"
- NPMNPM package format.
- "APT"
- APTAPT package format.
- "YUM"
- YUMYUM package format.
- "GOOGET"
- GOOGETGooGet package format.
- "PYTHON"
- PYTHONPython package format.
Package Details
- Repository
- Google Cloud Native pulumi/pulumi-google-native
- License
- Apache-2.0
Google Cloud Native is in preview. Google Cloud Classic is fully supported.