Package com.pulumi.aws.codeartifact
Class RepositoryPermissionsPolicy
- java.lang.Object
-
- com.pulumi.resources.Resource
-
- com.pulumi.resources.CustomResource
-
- com.pulumi.aws.codeartifact.RepositoryPermissionsPolicy
-
public class RepositoryPermissionsPolicy extends com.pulumi.resources.CustomResourceProvides a CodeArtifact Repository Permissions Policy Resource. ## Example Usage
## Import ### Identity Schema #### Required - `resourceArn` (String) ARN of the CodeArtifact repository. Using `pulumi import`, import CodeArtifact Repository Permissions Policies using the CodeArtifact Repository ARN. For example: ```sh $ pulumi import aws:codeartifact/repositoryPermissionsPolicy:RepositoryPermissionsPolicy example arn:aws:codeartifact:us-west-2:012345678912:repository/tf-acc-test-6968272603913957763/tf-acc-test-6968272603913957763 ```package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.aws.kms.Key; import com.pulumi.aws.kms.KeyArgs; import com.pulumi.aws.codeartifact.Domain; import com.pulumi.aws.codeartifact.DomainArgs; import com.pulumi.aws.codeartifact.Repository; import com.pulumi.aws.codeartifact.RepositoryArgs; import com.pulumi.aws.iam.IamFunctions; import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementArgs; import com.pulumi.aws.iam.inputs.GetPolicyDocumentStatementPrincipalArgs; import com.pulumi.aws.codeartifact.RepositoryPermissionsPolicy; import com.pulumi.aws.codeartifact.RepositoryPermissionsPolicyArgs; import java.util.ArrayList; import java.util.Arrays; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var exampleKey = new Key("exampleKey", KeyArgs.builder() .description("domain key") .build()); var exampleDomain = new Domain("exampleDomain", DomainArgs.builder() .domain("example") .encryptionKey(exampleKey.arn()) .build()); var exampleRepository = new Repository("exampleRepository", RepositoryArgs.builder() .repository("example") .domain(exampleDomain.domain()) .build()); final var example = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder() .statements(GetPolicyDocumentStatementArgs.builder() .principals(GetPolicyDocumentStatementPrincipalArgs.builder() .type("*") .identifiers("*") .build()) .effect("Allow") .actions("codeartifact:ReadFromRepository") .resources(exampleRepository.arn()) .build()) .build()); var exampleRepositoryPermissionsPolicy = new RepositoryPermissionsPolicy("exampleRepositoryPermissionsPolicy", RepositoryPermissionsPolicyArgs.builder() .repository(exampleRepository.repository()) .domain(exampleDomain.domain()) .policyDocument(example.applyValue(_example -> _example.json())) .build()); } }
-
-
Constructor Summary
Constructors Constructor Description RepositoryPermissionsPolicy(java.lang.String name)RepositoryPermissionsPolicy(java.lang.String name, RepositoryPermissionsPolicyArgs args)RepositoryPermissionsPolicy(java.lang.String name, RepositoryPermissionsPolicyArgs args, com.pulumi.resources.CustomResourceOptions options)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description com.pulumi.core.Output<java.lang.String>domain()com.pulumi.core.Output<java.lang.String>domainOwner()static RepositoryPermissionsPolicyget(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, RepositoryPermissionsPolicyState state, com.pulumi.resources.CustomResourceOptions options)Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.com.pulumi.core.Output<java.lang.String>policyDocument()com.pulumi.core.Output<java.lang.String>policyRevision()com.pulumi.core.Output<java.lang.String>region()com.pulumi.core.Output<java.lang.String>repository()com.pulumi.core.Output<java.lang.String>resourceArn()
-
-
-
Constructor Detail
-
RepositoryPermissionsPolicy
public RepositoryPermissionsPolicy(java.lang.String name)
- Parameters:
name- The _unique_ name of the resulting resource.
-
RepositoryPermissionsPolicy
public RepositoryPermissionsPolicy(java.lang.String name, RepositoryPermissionsPolicyArgs args)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.
-
RepositoryPermissionsPolicy
public RepositoryPermissionsPolicy(java.lang.String name, RepositoryPermissionsPolicyArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options)- Parameters:
name- The _unique_ name of the resulting resource.args- The arguments to use to populate this resource's properties.options- A bag of options that control this resource's behavior.
-
-
Method Detail
-
domain
public com.pulumi.core.Output<java.lang.String> domain()
- Returns:
- The name of the domain on which to set the resource policy.
-
domainOwner
public com.pulumi.core.Output<java.lang.String> domainOwner()
- Returns:
- The account number of the AWS account that owns the domain.
-
policyDocument
public com.pulumi.core.Output<java.lang.String> policyDocument()
- Returns:
- A JSON policy string to be set as the access control resource policy on the provided domain.
-
policyRevision
public com.pulumi.core.Output<java.lang.String> policyRevision()
- Returns:
- The current revision of the resource policy to be set. This revision is used for optimistic locking, which prevents others from overwriting your changes to the domain's resource policy.
-
region
public com.pulumi.core.Output<java.lang.String> region()
- Returns:
- Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
-
repository
public com.pulumi.core.Output<java.lang.String> repository()
- Returns:
- The name of the repository to set the resource policy on.
-
resourceArn
public com.pulumi.core.Output<java.lang.String> resourceArn()
- Returns:
- The ARN of the resource associated with the resource policy.
-
get
public static RepositoryPermissionsPolicy get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, @Nullable RepositoryPermissionsPolicyState state, @Nullable com.pulumi.resources.CustomResourceOptions options)
Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.- Parameters:
name- The _unique_ name of the resulting resource.id- The _unique_ provider ID of the resource to lookup.state-options- Optional settings to control the behavior of the CustomResource.
-
-