Create IAM policies to control who has access to DevOps resources, and to control the type of access for each group of users.
Before you can control access to DevOps resources such as code repositories, build pipelines, and deployment pipelines, you must create users and place them in appropriate groups (see Managing Users and Managing Groups). You can then create policies and policy statements to control the access (see Managing Policies).
By default, users in the Administrators
group have access to all the DevOps resources. If you're new to IAM policies, see Getting Started with Policies.
For a complete list of all policies in Oracle Cloud Infrastructure, see the Policy Reference and Common Policies.
Resource Types and PermissionsList of DevOps resource types and associated permissions.
To assign permissions to all DevOps resources, use the devops-family
aggregate type. For more information, see Permissions.
A policy that uses <verb> devops-family
is equal to writing a policy with a separate <verb> <resource-type>
statement for each of the individual resource types.
inspect, read, use, manage
are applicable for all the DevOps resource types permissions.
Verbs inspect
and read
are applicable for DEVOPS_WORK_REQUEST permission.
The verbs, inspect, read, use, manage
are applicable for the following permissions:
The verbs, inspect, read, use, manage
are applicable for the following permissions:
Verb manage
is applicable for DEVOPS_REPOSITORY_SETTINGS permission.
Given verbs, inspect, read, use, manage
are applicable for the following permissions:
Variables are used when adding conditions to a policy.
DevOps supports the following variables:
See General Variables for All Requests.
Variables are lowercase and hyphen-separated. For example, target.tag-namespace.name
, target.display-name
. Here name
must be unique, and display-name
is the description.
Required variables are supplied by the DevOps service for every request. Automatic variables are supplied by the authorization engine (either service-local with the SDK for a thick client, or on the Identity data plane for a thin client).
Required Variables Type Descriptiontarget.compartment.id
Entity (OCID) The OCID of the primary resource for the request. request.operation
String The operation ID (for example, GetUser
) for the request. target.resource.kind
String The resource kind name of the primary resource for the request. Automatic Variables Type Description request.user.id
Entity (OCID) The OCID of the requesting user. request.groups.id
List of entities (OCIDs) The OCIDs of the groups the requesting user is in. target.compartment.name
String The name of the compartment specified in target.compartment.id
. target.tenant.id
Entity (OCID) The OCID of the target tenant ID.
Here's a list of available sources for the variables:
devops-project
devops-deploy-artifact
devops-deploy-environment
devops-deploy-pipeline
devops-deploy-stage
devops-deployment
devops-repository
devops-pull-request
devops-connection
devops-trigger
devops-build-pipeline
devops-build-pipeline-stage
devops-build-run
devops-pull-request-comment
devops-protected-branch
target.project.id
Entry Stored Available for Get, Update, Delete, and Move operations on the Project resource.
devops-project
devops-deploy-artifact
devops-deploy-environment
devops-deploy-pipeline
devops-deploy-stage
devops-deployment
devops-repository
devops-pull-request
devops-connection
devops-trigger
devops-build-pipeline
devops-build-pipeline-stage
devops-build-run
devops-pull-request-comment
devops-protected-branch
target.project.name
String Stored Available for Get, Update, Delete, and Move operations on the Project resource. devops-deploy-artifact
target.artifact.id
Entity Stored Available for Get, Update, and Delete operations on the Artifact resource. devops-deploy-environment
target.environment.id
Entity Stored Available for Get, Update, and Delete operations on the Environment resource.
devops-deploy-pipeline
devops-deploy-stage
devops-deployment
target.pipeline.id
Entity Stored Available for Get, Update, and Delete operations on the Pipeline resource. devops-deploy-stage
target.stage.id
Entity Stored Available for Get, Update, and Delete operations on the Stage resource. devops-deployment
target.deployment.id
Entity Stored Available for Get, Update, and Delete operations on Deployment resource types. devops-repository
devops-pull-request
devops-pull-request-comment
devops-protected-branch
target.repository.id
Entity Stored Available for Get, Update, Delete, and Move operations on the Repository resource. devops-pull-request-comment
target.pull-request.id
Entity Stored Available for Get, Update, Delete operations on the Pull-Request resource. devops-repository
devops-pull-request
devops-pull-request-comment
devops-protected-branch
target.repository.name
Entity Stored Available for Get, Update, Delete, and Move operations on the Repository resource. devops-pull-request-comment
target.pull-request.display-name
String Stored Available for Get, Update, Delete operations on the Pull-Request resource. devops-repository
target.branch.name
Entity Stored Available for Git operations such as upload-pack, receive-pack on the Repository branch. devops-protected-branch
target.branch.name
String Stored Available for Get, Update, Delete and Move operations on the Protected Branch resource. devops-repository
target.tag.name
Entity Stored Available for Git operations like upload-pack, receive-pack on the Repository branch. devops-pull-request
target.pull-request.id
Entity Stored Available for Get, Update, Delete operations on the Pull-Request resource. devops-pull-request
target.pull-request.display-name
String Stored Available for Get, Update, Delete operations on the Pull-Request resource. devops-connection
target.connection.id
Entity Stored Available for Get, Update, and Delete operations on the Connection resource. devops-trigger
target.trigger.id
Entity Stored Available for Get, Update, and Delete operations on the Trigger resource.
devops-build-pipeline
devops-build-pipeline-stage
devops-build-run
target.build-pipeline.id
Entity Stored Available for Get, Update, and Delete operations on the Build Pipeline resource. devops-build-pipeline-stage
target.build-pipeline-stage.id
Entity Stored Available for Get, Update, and Delete operations on the Build Pipeline Stage resource. devops-build-run
target.build-run.id
Entity Stored Available for Get, Update, Delete, and Cancel operations on the Build Run resource. Details for Verb + Resource Type Combinations
Identify the permissions and API operations covered by each verb for DevOps resources.
The level of access is cumulative as you go from inspect
to read
to use
to manage
. A plus sign (+)
in a table cell indicates incremental access when compared to the preceding cell. All permissions (inspect, read, use, and manage) are applicable for the devops-family
resource type, which includes all the DevOps resources.
For information about granting access, see Permissions.
devops-projectThis table lists the permissions and the APIs that are fully covered by the permissions, for the devops-project
resource.
inspect
DEVOPS_PROJECT_INSPECT
ListProjects
List all the project resources in a compartment. read
inspect+
DEVOPS_PROJECT_READ
inspect+
GetProject
use
read+
DEVOPS_PROJECT_UPDATE
read+
UpdateProject
manage
use+
DEVOPS_PROJECT_CREATE
use+
CreateProject
manage
use+
DEVOPS_PROJECT_DELETE
use+
DeleteProject
manage
use+
DEVOPS_PROJECT_MOVE
use+
ChangeProjectCompartment
This table lists the permissions and the APIs that are fully covered by the permissions, for the devops-deploy-family
resource.
inspect
DEVOPS_DEPLOY_ARTIFACT_INSPECT
DEVOPS_DEPLOY_ENVIRONMENT_INSPECT
DEVOPS_DEPLOY_PIPELINE_INSPECT
DEVOPS_DEPLOY_STAGE_INSPECT
DEVOPS_DEPLOYMENT_INSPECT
ListDeployArtifacts
ListDeployEnvironments
ListDeployPipelines
ListDeployStages
ListDeployments
read
inspect+
DEVOPS_DEPLOY_ARTIFACT_READ
DEVOPS_DEPLOY_ENVIRONMENT_READ
DEVOPS_DEPLOY_PIPELINE_READ
DEVOPS_DEPLOY_STAGE_READ
DEVOPS_DEPLOYMENT_READ
inspect+
GetDeployArtifact
GetDeployEnvironment
GetDeployPipeline
GetDeployStage
GetDeployment
use
read+
DEVOPS_DEPLOY_ARTIFACT_UPDATE
DEVOPS_DEPLOY_ENVIRONMENT_UPDATE
DEVOPS_DEPLOY_PIPELINE_UPDATE
DEVOPS_DEPLOY_STAGE_UPDATE
DEVOPS_DEPLOYMENT_UPDATE
DEVOPS_DEPLOYMENT_APPROVE
DEVOPS_DEPLOYMENT_CANCEL
read+
UpdateDeployArtifact
UpdateDeployEnvironment
UpdateDeployPipeline
UpdateDeployStage
UpdateDeployment
ApproveDeployment
CancelDeployment
manage
use+
DEVOPS_DEPLOY_ARTIFACT_CREATE
DEVOPS_DEPLOY_ARTIFACT_DELETE
DEVOPS_DEPLOY_ENVIRONMENT_CREATE
DEVOPS_DEPLOY_ENVIRONMENT_DELETE
DEVOPS_DEPLOY_PIPELINE_CREATE
DEVOPS_DEPLOY_PIPELINE_DELETE
DEVOPS_DEPLOY_STAGE_CREATE
DEVOPS_DEPLOY_STAGE_DELETE
DEVOPS_DEPLOYMENT_CREATE
DEVOPS_DEPLOYMENT_DELETE
use+
CreateDeployArtifact
DeleteDeployArtifact
CreateDeployEnvironment
DeleteDeployEnvironment
CreateDeployPipeline
DeleteDeployPipeline
CreateDeployStage
DeleteDeployStage
CreateDeployment
DeleteDeployment
This table lists the permissions and the APIs that are fully covered by the permissions, for the devops-deploy-artifact
resource.
inspect
DEVOPS_DEPLOY_ARTIFACT_INSPECT
ListDeployArtifacts
List all the artifacts in a project or compartment. read
inspect+
DEVOPS_DEPLOY_ARTIFACT_READ
inspect+
GetDeployArtifact
use
read+
DEVOPS_DEPLOY_ARTIFACT_UPDATE
read+
UpdateDeployArtifact
manage
use+
DEVOPS_DEPLOY_ARTIFACT_CREATE
use+
CreateDeployArtifact
Create an artifact resource within a project.
manage
use+
DEVOPS_DEPLOY_ARTIFACT_DELETE
use+
DeleteDeployArtifact
Delete a specific artifact by ID.
devops-deploy-environmentThis table lists the permissions and the APIs that are fully covered by the permissions, for the devops-deploy-environment
resource.
inspect
DEVOPS_DEPLOY_ENVIRONMENT_INSPECT
ListDeployEnvironments
List all the environments in an application or compartment. read
inspect+
DEVOPS_DEPLOY_ENVIRONMENT_READ
inspect+
GetDeployEnvironment
use
read+
DEVOPS_DEPLOY_ENVIRONMENT_UPDATE
read+
UpdateDeployEnvironment
manage
use+
DEVOPS_DEPLOY_ENVIRONMENT_CREATE
use+
CreateDeployEnvironment
Create an environment for a deployment target within an application.
manage
use+
DEVOPS_DEPLOY_ENVIRONMENT_DELETE
use+
DeleteDeployEnvironment
Delete a specific environment by ID.
devops-deploy-pipelineThis table lists the permissions and the APIs that are fully covered by the permissions, for the devops-deploy-pipeline
resource.
inspect
DEVOPS_DEPLOY_PIPELINE_INSPECT
ListDeployPipelines
List all the pipeline resources in a compartment. read
inspect+
DEVOPS_DEPLOY_PIPELINE_READ
inspect+
GetDeployPipeline
use
read+
DEVOPS_DEPLOY_PIPELINE_UPDATE
read+
UpdateDeployPipeline
manage
use+
DEVOPS_DEPLOY_PIPELINE_CREATE
use+
CreateDeployPipeline
Create a pipeline resource.
manage
use+
DEVOPS_DEPLOY_PIPELINE_DELETE
use+
DeleteDeployPipeline
Delete a specific pipeline.
devops-deploy-stageThis table lists the permissions and the APIs that are fully covered by the permissions, for the devops-deploy-stage
resource.
inspect
DEVOPS_DEPLOY_STAGE_INSPECT
ListDeployStages
List all the stages in a pipeline or compartment. read
inspect+
DEVOPS_DEPLOY_STAGE_READ
inspect+
GetDeployStage
use
read+
DEVOPS_DEPLOY_STAGE_UPDATE
read+
UpdateDeployStage
manage
use+
DEVOPS_DEPLOY_STAGE_CREATE
use+
CreateDeployStage
Create a stage within a pipeline.
manage
use+
DEVOPS_DEPLOY_STAGE_DELETE
use+
DeleteDeployStage
Delete a specific stage by ID.
devops-deploymentThis table lists the permissions and the APIs that are fully covered by the permissions, for the devops-deployment
resource.
inspect
DEVOPS_DEPLOYMENT_INSPECT
ListDeployments
List all the deployments in a compartment. read
inspect+
DEVOPS_DEPLOYMENT_READ
inspect+
GetDeployment
use
read+
DEVOPS_DEPLOYMENT_UPDATE
read+
UpdateDeployStage
Update a specific stage by ID.
use
read+
DEVOPS_DEPLOYMENT_APPROVE
read+
ApproveDeployment
use
read+
DEVOPS_DEPLOYMENT_CANCEL
read+
CancelDeployment
Cancel a running deployment.
manage
use+
DEVOPS_DEPLOYMENT_CREATE
use+
CreateDeployment
Create a deployment for a specific pipeline.
manage
use+
DEVOPS_DEPLOYMENT_DELETE
use+
DeleteDeployment
Delete a specific deployment.
devops-work-requestsThis table lists the permissions and the APIs that are fully covered by the permissions, for the devops-work-requests
resource.
inspect
DEVOPS_WORK_REQUEST_INSPECT
ListWorkRequests
List all the work requests in a compartment. read
inspect+
DEVOPS_WORK_REQUEST_READ
inspect+
GetWorkRequest
This table lists the permissions and the APIs that are fully covered by the permissions, for the devops-repository-family
resource.
inspect
DEVOPS_REPOSITORY_INSPECT
DEVOPS_PULL_REQUEST_INSPECT
DEVOPS_PULL_REQUEST_COMMENT_INSPECT
DEVOPS_PROTECTED_BRANCH_INSPECT
ListRepositories
ListPullRequests
ListPullRequestAttachments
ListPullRequestComments
ListProtectedBranches
read
inspect+
DEVOPS_REPOSITORY_READ
DEVOPS_PULL_REQUEST_READ
DEVOPS_PULL_REQUEST_COMMENT_READ
DEVOPS_PROTECTED_BRANCH_READ
DEVOPS_PULL_REQUEST_REVIEW
DEVOPS_PULL_REQUEST_COMMENT_CREATE
DEVOPS_PULL_REQUEST_COMMENT_UPDATE
DEVOPS_PULL_REQUEST_COMMENT_DELETE
inspect+
GetRepository
GetPullRequest
GetPullRequestComment
GetPullRequestAttachmentContent
GetProtectedBranch
ReviewPullRequest
UpdatePullRequestComment
LikePullRequestComment
UnlikePullRequestComment
DeletePullRequestComment
use
read+
DEVOPS_REPOSITORY_UPDATE
DEVOPS_PULL_REQUEST_UPDATE
DEVOPS_PULL_REQUEST_CREATE
DEVOPS_PULL_REQUEST_DELETE
read+
UpdateRepository
UpdatePullRequest
DeclinePullRequest
ReopenPullRequest
MergePullRequest
DeletePullRequest
manage
use+
DEVOPS_REPOSITORY_CREATE
DEVOPS_REPOSITORY_DELETE
DEVOPS_PROTECTED_BRANCH_CREATE
DEVOPS_PROTECTED_BRANCH_UPDATE
DEVOPS_PROTECTED_BRANCH_DELETE
DEVOPS_REPOSITORY_SETTINGS_READ
DEVOPS_REPOSITORY_SETTINGS_UPDATE
DEVOPS_REPOSITORY_SETTINGS_DELETE
DEVOPS_PROTECTED_BRANCH_PUSH
use+
CreateRepository
DeleteRepository
CreateProtectedBranch
UpdateProtectedBranch
DeleteProtectedBranch
GetRepositorySettings
UpdateRepositorySettings
DeleteRepositorySettings
ProtectedBranchReceivePack
PULL_REQUEST_MERGE_ONLY
and READ_ONLY
.This table lists the permissions and the APIs that are fully covered by the permissions, for the devops-repository
resource.
inspect
DEVOPS_REPOSITORY_INSPECT
ListRepositories
List all the repository resources by compartment ID, project ID, or repository ID. read
inspect+
DEVOPS_REPOSITORY_READ
inspect+
GetRepository
use
read+
DEVOPS_REPOSITORY_UPDATE
read+
UpdateRepository
manage
use+
DEVOPS_REPOSITORY_CREATE
use+
CreateRepository
Create a repository.
manage
use+
DEVOPS_REPOSITORY_DELETE
use+
DeleteRepository
Delete a specific repository by ID.
devops-connectionThis table lists the permissions and the APIs that are fully covered by the permissions, for the devops-connection
resource.
inspect
DEVOPS_CONNECTION_INSPECT
ListConnections
List all the connections in a project or compartment. read
inspect+
DEVOPS_CONNECTION_READ
inspect+
GetConnection
use
read+
DEVOPS_CONNECTION_UPDATE
read+
UpdateConnection
use
read+
DEVOPS_CONNECTION_VALIDATE
read+
ValidateConnection
manage
use+
DEVOPS_CONNECTION_CREATE
use+
CreateConnection
Create a connection resource in a project.
manage
use+
DEVOPS_CONNECTION_DELETE
use+
DeleteConnection
Delete a specific connection by ID.
devops-triggerThis table lists the permissions and the APIs that are fully covered by the permissions, for the devops-trigger
resource.
inspect
DEVOPS_TRIGGER_INSPECT
ListTriggers
List all the triggers in a project or compartment. read
inspect+
DEVOPS_TRIGGER_READ
inspect+
GetTrigger
use
read+
DEVOPS_TRIGGER_UPDATE
read+
UpdateTrigger
manage
use+
DEVOPS_TRIGGER_CREATE
use+
CreateTrigger
Create a trigger resource in a project.
manage
use+
DEVOPS_TRIGGER_DELETE
use+
DeleteTrigger
Delete a specific trigger by ID.
devops-build-familyThis table lists the permissions and the APIs that are fully covered by the permissions, for the devops-build-family
resource.
inspect
DEVOPS_BUILD_PIPELINE_INSPECT
DEVOPS_BUILD_PIPELINE_STAGE_INSPECT
DEVOPS_BUILD_RUN_INSPECT
ListBuildPipelines
ListBuildPipelineStages
ListBuildRuns
read
inspect+
DEVOPS_BUILD_PIPELINE_READ
DEVOPS_BUILD_PIPELINE_STAGE_READ
DEVOPS_BUILD_RUN_READ
inspect+
GetBuildPipeline
GetBuildPipelineStage
GetBuildRun
use
read+
DEVOPS_BUILD_PIPELINE_UPDATE
DEVOPS_BUILD_PIPELINE_STAGE_UPDATE
DEVOPS_BUILD_RUN_UPDATE
DEVOPS_BUILD_RUN_CANCEL
read+
UpdateBuildPipeline
UpdateBuildPipelineStage
UpdateBuildRun
CancelBuildRun
manage
use+
DEVOPS_BUILD_PIPELINE_CREATE
DEVOPS_BUILD_PIPELINE_DELETE
DEVOPS_BUILD_PIPELINE_STAGE_CREATE
DEVOPS_BUILD_PIPELINE_STAGE_DELETE
DEVOPS_BUILD_RUN_CREATE
DEVOPS_BUILD_RUN_DELETE
use+
CreateBuildPipeline
DeleteBuildPipeline
CreateBuildPipelineStage
DeleteBuildPipelineStage
CreateBuildRun
DeleteBuildRun
This table lists the permissions and the APIs that are fully covered by the permissions, for the devops-build-pipeline
resource.
inspect
DEVOPS_BUILD_PIPELINE_INSPECT
ListBuildPipelines
List all the build pipeline resources in a compartment. read
inspect+
DEVOPS_BUILD_PIPELINE_READ
inspect+
GetBuildPipeline
use
read+
DEVOPS_BUILD_PIPELINE_UPDATE
read+
UpdateBuildPipeline
manage
use+
DEVOPS_BUILD_PIPELINE_CREATE
use+
CreateBuildPipeline
Create a build pipeline resource.
manage
use+
DEVOPS_BUILD_PIPELINE_DELETE
use+
DeleteBuildPipeline
Delete a specific build pipeline.
devops-build-pipeline-stageThis table lists the permissions and the APIs that are fully covered by the permissions, for the devops-build-pipeline-stage
resource.
inspect
DEVOPS_BUILD_PIPELINE_STAGE_INSPECT
ListBuildPipelineStages
List all the stages in a build pipeline or compartment. read
inspect+
DEVOPS_BUILD_PIPELINE_STAGE_READ
inspect+
GetBuildPipelineStage
use
read+
DEVOPS_BUILD_PIPELINE_STAGE_UPDATE
read+
UpdateBuildPipelineStage
manage
use+
DEVOPS_BUILD_PIPELINE_STAGE_CREATE
use+
CreateBuildPipelineStage
Create a stage in a build pipeline.
manage
use+
DEVOPS_BUILD_PIPELINE_STAGE_DELETE
use+
DeleteBuildPipelineStage
Delete specific build pipeline stage by ID.
devops-build-runThis table lists the permissions and the APIs that are fully covered by the permissions, for the devops-build-run
resource.
inspect
DEVOPS_BUILD_RUN_INSPECT
ListBuildRuns
List the build runs in a project or compartment. read
inspect+
DEVOPS_BUILD_RUN_READ
inspect+
GetBuildRun
use
read+
DEVOPS_BUILD_RUN_UPDATE
read+
UpdateBuildRun
use
read+
DEVOPS_BUILD_RUN_CANCEL
read+
CancelBuildRun
manage
use+
DEVOPS_BUILD_RUN_CREATE
use+
CreateBuildRun
Start a build run for a given build pipeline.
manage
use+
DEVOPS_BUILD_RUN_DELETE
use+
DeleteBuildRun
Delete an existing build run.
Creating a Policy and Dynamic GroupTo grant users permission to access the various DevOps resources such as build pipelines, deployment pipelines, artifacts, and code repositories you have to create groups, dynamic groups and IAM policies.
A policy allows a group to work in certain ways with specific types of resources in a particular compartment .
PolicyHere's how you create a policy in the Oracle Cloud Console:
Enter a policy rule in the following format:
Allow <group> to <verb> <resource_type> in <compartment or tenancy details>
For more information about creating policies, see How Policies Work and Policy Reference.
To create a group and add users to the group, see Managing Groups.
Dynamic GroupDynamic group is a special type of group that contains resources (such as compute instances) that match rules that you define.
Matching rules define the resources that belong to the dynamic group. In the Console, you can either enter the rule manually in the provided text box, or you can use the rule builder. For more details, see Writing Matching Rules to Define Dynamic Groups. Use the match-any
rule to match multiple conditions.
Create a dynamic group for your DevOps resources. You can name the dynamic group as, for example,
DevOpsDynamicGroup
and replace
compartmentOCID
with the OCID of your compartment:
ALL {resource.type = 'devopsdeploypipeline', resource.compartment.id = 'compartmentOCID'}
ALL {resource.type = 'devopsrepository', resource.compartment.id = 'compartmentOCID'}
ALL {resource.type = 'devopsbuildpipeline',resource.compartment.id = 'compartmentOCID'}
ALL {resource.type = 'devopsconnection',resource.compartment.id = 'compartmentOCID'}
For more information about dynamic groups, including the permissions required to create them, see Managing Dynamic Groups and Writing Policies for Dynamic Groups.
Required policy statement for
DevOpsDynamicGroup
:
Allow dynamic-group DevOpsDynamicGroup to manage devops-family in compartment <compartment_name>
Note
For tenancies that have identity domains, the domain name must precede the dynamic group name in the policy. For example, domain-name/{DevOpsDynamicGroup}
DevOps policies required for using various DevOps resources such as code repositories, build pipelines and deployment pipelines.
Following policy examples are provided:
Policy example for creating target environment that is used for deployment.
See the instructions for creating policies using the Console.
Create policy to allow users in a group to create, update or delete a private OKE environment:
Allow group <group-name> to manage virtual-network-family in compartment <compartment_name> where any {request.operation='CreatePrivateEndpoint', request.operation='UpdatePrivateEndpoint', request.operation='DeletePrivateEndpoint', request.operation='EnableReverseConnection', request.operation='ModifyReverseConnection', request.operation='DisableReverseConnection'}
Code Repository Policies
Policy examples for creating a code repository and connecting to external code repositories such as GitHub and GitLab.
See the instructions for creating policies, groups, and dynamic groups using the Console.
To
create a code repository, create following IAM policies:
Allow group <group-name> to read devops-project in compartment <compartment_name>
Allow group <group-name> to manage devops-repository in compartment <compartment_name>
To
clone a repository, create following IAM policies:
Allow group <group-name> to read devops-project in compartment <compartment_name>
Allow group <group-name> to use devops-repository in compartment <compartment_name>
To
integrate with external code repositories, create a policy in the root compartment. For example, to allow the dynamic group to read secrets:
Allow dynamic-group DevOpsDynamicGroup to read secret-family in compartment <compartment_name>
To
validate an external connection, create the following IAM policy along with the policy to read secrets:
Allow group <group-name> to use devops-connection in compartment <compartment_name>
To
receive email notificationsfor pull requests in code repositories, create the following IAM policy using dynamic group. Administrator must create this policy. For example, to allow the dynamic group DevOpsDynamicGroup comprising repository resource:
Allow dynamic-group DevOpsDynamicGroup to inspect users in tenancy
To create a pull request, you must define policies based on the actions that a user is allowed to perform. For more information and examples, see Managing Pull Requests.
Build Pipeline PoliciesPolicy examples for creating build pipelines and adding stages to the pipeline.
See the instructions for creating policies using the Console.
Allow dynamic-group DevOpsDynamicGroup to manage repos in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to read secret-family in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to manage devops-family in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to manage generic-artifacts in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to use ons-topics in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to use subnets in compartment <customer subnet compartment>
Allow dynamic-group DevOpsDynamicGroup to use vnics in compartment <customer subnet compartment>
If any network security groups (NSGs) are specified in the private access configuration, then the policy must allow access to the NSGs:
Allow dynamic-group DevOpsDynamicGroup to use network-security-groups in compartment <customer subnet compartment>
Allow dynamic-group DevOpsDynamicGroup to use cabundles in compartment <compartment_name>
Policy examples for accessing Application Dependency Management (ADM) service's resources from the build pipeline.
See the instructions for creating policies using the Console.
Create IAM policies to allow the dynamic group to access ADM resources in the tenancy:
Allow dynamic-group DevOpsDynamicGroup to use adm-knowledge-bases in tenancy
Allow dynamic-group DevOpsDynamicGroup to manage adm-vulnerability-audits in tenancy
Deployment Pipeline Policies
Policy examples for creating deployment pipelines and adding stages to the pipeline.
See the instructions for creating policies using the Console.
Create IAM policies to allow the deployment pipeline dynamic group to access your compartment resources:
Allow dynamic-group DevOpsDynamicGroup to read all-artifacts in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to manage cluster in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to manage fn-function in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to read fn-app in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to use fn-invocation in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to read all-artifacts in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to read instance-family in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to use instance-agent-command-family in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to use load-balancers in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to use vnics in compartment <compartment_name>
For an instance group deployment, you also need to create a dynamic group for the following instances and give the dynamic group certain permissions:
DeployComputeDynamicGroup
and replace compartmentOCID
with the OCID of your compartment:
All {instance.compartment.id = 'compartmentOCID'}
Allow dynamic-group DeployComputeDynamicGroup to use instance-agent-command-execution-family in compartment <compartment_name>
Allow dynamic-group DeployComputeDynamicGroup to read generic-artifacts in compartment <compartment_name>
Allow dynamic-group DeployComputeDynamicGroup to read secret-family in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to read all-artifacts in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to manage cluster in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to read repos in compartment <compartment_name>
Allow group pipeline1_approvers to use devops-family in compartment <compartment_name> where all {request.principal.id = 'ocid1.pipeline1'}
Allow group pipeline2_approvers to use devops-family in compartment <compartment_name> where all {request.principal.id = 'ocid1.pipeline2'}
Allow dynamic-group DevOpsDynamicGroup to manage compute-container-instances in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to manage compute-containers in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to use vnics in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to use subnets in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to use dhcp-options in compartment <compartment_name>
If you're using Network security group while creating Shell stage, then add the following policy:
Allow dynamic-group DevOpsDynamicGroup to use network-security-groups in compartment <compartment_name>
Policy examples for adding the Deliver Artifacts stage to the build pipeline.
The Deliver Artifacts stage maps the build outputs from the Managed Build stage with the version to deliver to a DevOps artifact resource, and then to the Oracle Cloud Infrastructure (OCI) code repository. DevOps supports artifacts stored in OCI Container Registry and Artifact Registry repositories. See Adding a Deliver Artifacts Stage.
See the instructions for creating policies using the Console.
Create following IAM policies:
Allow dynamic-group DevOpsDynamicGroup to inspect repos in tenancy
Allow dynamic-group DevOpsDynamicGroup to inspect repos in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to use repos in tenancy
Allow dynamic-group DevOpsDynamicGroup to use repos in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to inspect generic-artifacts in tenancy
Allow dynamic-group DevOpsDynamicGroup to inspect generic-artifacts in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to use generic-artifacts in tenancy
Allow dynamic-group DevOpsDynamicGroup to use generic-artifacts in compartment <compartment_name>
Allow dynamic-group DevOpsDynamicGroup to read generic-artifacts in tenancy
Allow dynamic-group DevOpsDynamicGroup to read generic-artifacts in compartment <compartment_name>
Oracle Cloud Infrastructure Artifact Registry is a repository service for storing, sharing, and managing software development packages.
You can access the artifacts that you store in Artifact Registry from the DevOps service. You can create a reference to three types of artifacts in Artifact Registry: instance group deployment configurations, general artifacts, and Kubernetes manifests. Your administrator must grant the read all-artifacts
permission to the pipeline resources.
See the instructions for creating policies using the console.
Create IAM policy to allow the dynamic group to access the artifacts from a specific compartment:
Allow dynamic-group DevOpsDynamicGroup to read all-artifacts in compartment <compartment_name>
For more information, see Artifact Registry Policies.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4