Resource Policy Args
data class ResourcePolicyArgs(val policy: Output<String>? = null, val resourceArn: Output<String>? = null) : ConvertibleToJava<ResourcePolicyArgs>
Provides a CodeBuild Resource Policy Resource.
Example Usage
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.codebuild.ReportGroup;
import com.pulumi.aws.codebuild.ReportGroupArgs;
import com.pulumi.aws.codebuild.inputs.ReportGroupExportConfigArgs;
import com.pulumi.aws.AwsFunctions;
import com.pulumi.aws.codebuild.ResourcePolicy;
import com.pulumi.aws.codebuild.ResourcePolicyArgs;
import static com.pulumi.codegen.internal.Serialization.*;
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 exampleReportGroup = new ReportGroup("exampleReportGroup", ReportGroupArgs.builder()
.type("TEST")
.exportConfig(ReportGroupExportConfigArgs.builder()
.type("NO_EXPORT")
.build())
.build());
final var currentPartition = AwsFunctions.getPartition();
final var currentCallerIdentity = AwsFunctions.getCallerIdentity();
var exampleResourcePolicy = new ResourcePolicy("exampleResourcePolicy", ResourcePolicyArgs.builder()
.resourceArn(exampleReportGroup.arn())
.policy(exampleReportGroup.arn().applyValue(arn -> serializeJson(
jsonObject(
jsonProperty("Version", "2012-10-17"),
jsonProperty("Id", "default"),
jsonProperty("Statement", jsonArray(jsonObject(
jsonProperty("Sid", "default"),
jsonProperty("Effect", "Allow"),
jsonProperty("Principal", jsonObject(
jsonProperty("AWS", String.format("arn:%s:iam::%s:root", currentPartition.applyValue(getPartitionResult -> getPartitionResult.partition()),currentCallerIdentity.applyValue(getCallerIdentityResult -> getCallerIdentityResult.accountId())))
)),
jsonProperty("Action", jsonArray(
"codebuild:BatchGetReportGroups",
"codebuild:BatchGetReports",
"codebuild:ListReportsForReportGroup",
"codebuild:DescribeTestCases"
)),
jsonProperty("Resource", arn)
)))
))))
.build());
}
}
Content copied to clipboard
Import
CodeBuild Resource Policy can be imported using the CodeBuild Resource Policy arn, e.g.,
$ pulumi import aws:codebuild/resourcePolicy:ResourcePolicy example arn:aws:codebuild:us-west-2:123456789:report-group/report-group-name
Content copied to clipboard
Properties
Link copied to clipboard
A JSON-formatted resource policy. For more information, see Sharing a Projec and Sharing a Report Group.
Link copied to clipboard
The ARN of the Project or ReportGroup resource you want to associate with a resource policy.