o
    ɶd!                    @   s   d dl mZ d dlmZ d dlmZ d dlmZmZ d dlm	Z	 d dl
mZmZ d dlmZ d dlmZmZmZ d	d
lmZ edZG dd deZdS )    )absolute_import)requests)six)retrycircuit_breaker)
BaseClient)get_config_value_or_defaultvalidate_config)Signer)Sentinel#get_signer_from_authentication_typeAUTHENTICATION_TYPE_FIELD_NAME   )devops_type_mappingZMissingc                   @   s  e Zd ZdZdd Zdd Zdd Zdd	 Zd
d Zdd Z	dd Z
dd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zd d! Zd"d# Zd$d% Zd&d' Zd(d) Zd*d+ Zd,d- Zd.d/ Zd0d1 Zd2d3 Zd4d5 Zd6d7 Zd8d9 Zd:d; Z d<d= Z!d>d? Z"d@dA Z#dBdC Z$dDdE Z%dFdG Z&dHdI Z'dJdK Z(dLdM Z)dNdO Z*dPdQ Z+dRdS Z,dTdU Z-dVdW Z.dXdY Z/dZd[ Z0d\d] Z1d^d_ Z2d`da Z3dbdc Z4ddde Z5dfdg Z6dhdi Z7djdk Z8dldm Z9dndo Z:dpdq Z;drds Z<dtdu Z=dvdw Z>dxdy Z?dzd{ Z@d|d} ZAd~d ZBdd ZCdd ZDdd ZEdd ZFdd ZGdd ZHdd ZIdd ZJdd ZKdd ZLdd ZMdd ZNdd ZOdd ZPdd ZQdd ZRdd ZSdd ZTdd ZUdd ZVdd ZWdd ZXdd ZYdd ZZdd Z[dd Z\dd Z]dS )DevopsClienta&  
    Use the DevOps API to create DevOps projects, configure code repositories,  add artifacts to deploy, build and test software applications, configure  target deployment environments, and deploy software applications.  For more information, see [DevOps](/Content/devops/using/home.htm).
    c              
   K   s  t ||dd d|v r|d }n"t|v rt|}nt|d |d |d |dt|d|dd	}d
|dddi |dd|dtj|dd}d|v rY|d|d< |ddu retj|d< d|v rp|d|d< t	d||t
fi || _|d| _|d| _dS )a  
        Creates a new service client

        :param dict config:
            Configuration keys and values as per `SDK and Tool Configuration <https://docs.cloud.oracle.com/Content/API/Concepts/sdkconfig.htm>`__.
            The :py:meth:`~oci.config.from_file` method can be used to load configuration from a file. Alternatively, a ``dict`` can be passed. You can validate_config
            the dict using :py:meth:`~oci.config.validate_config`

        :param str service_endpoint: (optional)
            The endpoint of the service to call using this client. For example ``https://iaas.us-ashburn-1.oraclecloud.com``. If this keyword argument is
            not provided then it will be derived using the region in the config parameter. You should only provide this keyword argument if you have an explicit
            need to specify a service endpoint.

        :param timeout: (optional)
            The connection and read timeouts for the client. The default values are connection timeout 10 seconds and read timeout 60 seconds. This keyword argument can be provided
            as a single float, in which case the value provided is used for both the read and connection timeouts, or as a tuple of two floats. If
            a tuple is provided then the first value is used as the connection timeout and the second value as the read timeout.
        :type timeout: float or tuple(float, float)

        :param signer: (optional)
            The signer to use when signing requests made by the service client. The default is to use a :py:class:`~oci.signer.Signer` based on the values
            provided in the config parameter.

            One use case for this parameter is for `Instance Principals authentication <https://docs.cloud.oracle.com/Content/Identity/Tasks/callingservicesfrominstances.htm>`__
            by passing an instance of :py:class:`~oci.auth.signers.InstancePrincipalsSecurityTokenSigner` as the value for this keyword argument
        :type signer: :py:class:`~oci.signer.AbstractBaseSigner`

        :param obj retry_strategy: (optional)
            A retry strategy to apply to all calls made by this service client (i.e. at the client level). There is no retry strategy applied by default.
            Retry strategies can also be applied at the operation level by passing a ``retry_strategy`` keyword argument as part of calling the operation.
            Any value provided at the operation level will override whatever is specified at the client level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY`
            is also available. The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

        :param obj circuit_breaker_strategy: (optional)
            A circuit breaker strategy to apply to all calls made by this service client (i.e. at the client level).
            This client uses :py:data:`~oci.circuit_breaker.DEFAULT_CIRCUIT_BREAKER_STRATEGY` as default if no circuit breaker strategy is provided.
            The specifics of circuit breaker strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/circuit_breakers.html>`__.

        :param function circuit_breaker_callback: (optional)
            Callback function to receive any exceptions triggerred by the circuit breaker.

        :param bool client_level_realm_specific_endpoint_template_enabled: (optional)
            A boolean flag to indicate whether or not this client should be created with realm specific endpoint template enabled or disable. By default, this will be set as None.

        :param allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this client should allow control characters in the response object. By default, the client will not
            allow control characters to be in the response object.
        signer)r   tenancyuserfingerprintZkey_filepass_phraseZkey_content)r   r   r   Zprivate_key_file_locationr   Zprivate_key_contentTservice_endpointz	/20210630z/https://devops.{region}.oci.{secondLevelDomain}skip_deserializationFcircuit_breaker_strategy5client_level_realm_specific_endpoint_template_enabled)Zregional_clientr   	base_pathZservice_endpoint_templateZ#service_endpoint_template_per_realmr   r   r   timeoutNallow_control_charsZdevopsretry_strategycircuit_breaker_callback)r	   getr   r   r
   r   r   ZGLOBAL_CIRCUIT_BREAKER_STRATEGYZ DEFAULT_CIRCUIT_BREAKER_STRATEGYr   r   base_clientr   r   )selfconfigkwargsr   Zbase_client_init_kwargs r$   <usr/lib/python3.10/site-packages/oci/devops/devops_client.py__init__   s>   3





zDevopsClient.__init__c                      dg}d}d}d}d}g d  fddt |D }	|	r$td	|	d|i}
d
d t |
D }
t |
D ]\}}|du sMt|t jrTt| dkrTtd|q7dd|	dt
|	dt
|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| | j| || j |j| jj|||
||d|	d|||dS | jj|||
||d|	d|||d
S )a(
  
        Submit stage approval.


        :param str deployment_id: (required)
            Unique deployment identifier.

        :param oci.devops.models.ApproveDeploymentDetails approve_deployment_details: (required)
            The stage information for approval.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.Deployment`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/approve_deployment.py.html>`__ to see an example of how to use approve_deployment API.
        deploymentIdz+/deployments/{deploymentId}/actions/approvePOSTapprove_deploymentzRhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Deployment/ApproveDeploymentr   r   if_matchopc_request_idopc_retry_tokenc                       g | ]}| vr|qS r$   r$   .0_keyZexpected_kwargsr$   r%   
<listcomp>       z3DevopsClient.approve_deployment.<locals>.<listcomp>z+approve_deployment got unknown kwargs: {!r}c                 S      i | ]\}}|t ur||qS r$   missingr1   kvr$   r$   r%   
<dictcomp>       z3DevopsClient.approve_deployment.<locals>.<dictcomp>Nr   7Parameter {} cannot be None, whitespace or empty stringapplication/jsonr,   r-   r.   acceptcontent-typeif-matchopc-request-idopc-retry-tokenc                 S   &   i | ]\}}|t ur|d ur||qS Nr7   r9   r$   r$   r%   r<         & r   Zoperation_retry_strategyZclient_retry_strategy
Deploymentr   
resource_pathmethodpath_paramsheader_paramsbodyresponse_typer   operation_nameapi_reference_linkrequired_argumentsr   iterkeys
ValueErrorformat	iteritems
isinstancestring_typeslenstripr   r8   r    get_preferred_retry_strategyr   r   DEFAULT_RETRY_STRATEGYNoneRetryStrategyadd_opc_retry_token_if_neededadd_opc_client_retries_headeradd_circuit_breaker_callbackr   make_retrying_callcall_api)r!   deployment_idZapprove_deployment_detailsr#   rT   rL   rM   rR   rS   extra_kwargsrN   r:   r;   rO   r   r$   r3   r%   r*   r   z   '$


zDevopsClient.approve_deploymentc                    s  dg}d}d}d}d}g d  fddt |D }	|	r$td	|	d|i}
d
d t |
D }
t |
D ]\}}|du sMt|t jrTt| dkrTtd|q7dd|	dt
|	dt
|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| | j| || j |j| jj|||
||d|	d|||dS | jj|||
||d|	d|||d
S )a[
  
        Cancels the build run based on the build run ID provided in the request.


        :param oci.devops.models.CancelBuildRunDetails cancel_build_run_details: (required)
            Parameter details required to cancel a build run.

        :param str build_run_id: (required)
            Unique build run identifier.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.BuildRun`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/cancel_build_run.py.html>`__ to see an example of how to use cancel_build_run API.
        
buildRunIdz&/buildRuns/{buildRunId}/actions/cancelr)   cancel_build_runzMhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/BuildRun/CancelBuildRunr+   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z1DevopsClient.cancel_build_run.<locals>.<listcomp>z)cancel_build_run got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   "  r=   z1DevopsClient.cancel_build_run.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r.   r@   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   /  rH   r   rI   BuildRunr   rK   rU   )r!   Zcancel_build_run_detailsbuild_run_idr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   rj      rh   zDevopsClient.cancel_build_runc                    r'   )aO
  
        Cancels a deployment resource by identifier.


        :param str deployment_id: (required)
            Unique deployment identifier.

        :param oci.devops.models.CancelDeploymentDetails cancel_deployment_details: (required)
            The information regarding the deployment to be canceled.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.Deployment`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/cancel_deployment.py.html>`__ to see an example of how to use cancel_deployment API.
        r(   z*/deployments/{deploymentId}/actions/cancelr)   cancel_deploymentzQhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Deployment/CancelDeploymentr+   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z2DevopsClient.cancel_deployment.<locals>.<listcomp>z*cancel_deployment got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z2DevopsClient.cancel_deployment.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r.   r@   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   rJ   r   rK   rU   )r!   rf   Zcancel_deployment_detailsr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   rm   V  rh   zDevopsClient.cancel_deploymentc                      dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7dd|	dt
|	dt
|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| | j| || j |j| jj|||	||	d|||d	S | jj|||	||	d|||dS )a	  
        Cascading operation that restores Project and child resources from a DELETING state to an active state


        :param str project_id: (required)
            Unique project identifier.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/cancel_scheduled_cascading_project_deletion.py.html>`__ to see an example of how to use cancel_scheduled_cascading_project_deletion API.
        	projectIdzE/projects/{projectId}/actions/cancelScheduledCascadingProjectDeletionr)   +cancel_scheduled_cascading_project_deletionzehttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Project/CancelScheduledCascadingProjectDeletionr+   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   zLDevopsClient.cancel_scheduled_cascading_project_deletion.<locals>.<listcomp>zDcancel_scheduled_cascading_project_deletion got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   zLDevopsClient.cancel_scheduled_cascading_project_deletion.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r.   r@   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   r   rL   rM   rN   rO   r   rR   rS   rT   rU   r!   
project_idr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   rp     r   $$


z8DevopsClient.cancel_scheduled_cascading_project_deletionc                    s  dg}d}d}d}d}g d  fddt |D }	|	r$td	|	d|i}
d
d t |
D }
t |
D ]\}}|du sMt|t jrTt| dkrTtd|q7dd|	dt
|	dt
|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| | j| || j |j| jj|||
|||	d|||d
S | jj|||
|||	d|||d	S )aB
  
        Moves a project resource from one compartment OCID to another.


        :param str project_id: (required)
            Unique project identifier.

        :param oci.devops.models.ChangeProjectCompartmentDetails change_project_compartment_details: (required)
            The information to be updated.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/change_project_compartment.py.html>`__ to see an example of how to use change_project_compartment API.
        ro   z//projects/{projectId}/actions/changeCompartmentr)   change_project_compartmentzVhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Project/ChangeProjectCompartmentr+   c                    r/   r$   r$   r0   r3   r$   r%   r4   h  r5   z;DevopsClient.change_project_compartment.<locals>.<listcomp>z3change_project_compartment got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   q  r=   z;DevopsClient.change_project_compartment.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r.   r@   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   ~  rH   r   rI   r   )	rL   rM   rN   rO   rP   r   rR   rS   rT   rU   )r!   rs   Z"change_project_compartment_detailsr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   ru   3  sv   '$


z'DevopsClient.change_project_compartmentc                      g }d}d}d}d}g d  fddt |D }|r#td|d	d	|d
t|dtd}	dd t |	D }	| jj|d| j	d}
|
du rOt
j}
|
r}t|
t
jsi| j|	 | j|	 |
| j |
j| jj|||	|d|d|||d
S | jj|||	|d|d|||d	S )a  
        Creates a new build pipeline.


        :param oci.devops.models.CreateBuildPipelineDetails create_build_pipeline_details: (required)
            Details for the new build pipeline.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.BuildPipeline`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/create_build_pipeline.py.html>`__ to see an example of how to use create_build_pipeline API.
        /buildPipelinesr)   create_build_pipelinezWhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/BuildPipeline/CreateBuildPipeliner   r   r.   r-   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z6DevopsClient.create_build_pipeline.<locals>.<listcomp>z.create_build_pipeline got unknown kwargs: {!r}r?   r.   r-   rA   rB   rE   rD   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   z6DevopsClient.create_build_pipeline.<locals>.<dictcomp>r   rI   NBuildPipeliner   	rL   rM   rO   rP   rQ   r   rR   rS   rT   r   rV   rW   rX   r   r8   rY   r    r^   r   r   r_   rZ   r`   ra   rb   rc   r   rd   re   )r!   Zcreate_build_pipeline_detailsr#   rT   rL   rM   rR   rS   rg   rO   r   r$   r3   r%   rx     f   !

z"DevopsClient.create_build_pipelinec                    rv   )a  
        Creates a new stage.


        :param oci.devops.models.CreateBuildPipelineStageDetails create_build_pipeline_stage_details: (required)
            Details for the new stage.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.BuildPipelineStage`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/create_build_pipeline_stage.py.html>`__ to see an example of how to use create_build_pipeline_stage API.
        /buildPipelineStagesr)   create_build_pipeline_stagezahttps://docs.oracle.com/iaas/api/#/en/devops/20210630/BuildPipelineStage/CreateBuildPipelineStagery   c                    r/   r$   r$   r0   r3   r$   r%   r4   /  r5   z<DevopsClient.create_build_pipeline_stage.<locals>.<listcomp>z4create_build_pipeline_stage got unknown kwargs: {!r}r?   r.   r-   rz   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   :  rH   z<DevopsClient.create_build_pipeline_stage.<locals>.<dictcomp>r   rI   NBuildPipelineStager   r|   r}   )r!   Z#create_build_pipeline_stage_detailsr#   rT   rL   rM   rR   rS   rg   rO   r   r$   r3   r%   r     r~   z(DevopsClient.create_build_pipeline_stagec                    s(  g }d}d}d}d}g d  fddt |D }|r#td|d	d	|d
t|dt|dtd}	dd t |	D }	| jj|d| j	d}
|
du rTt
j}
|
rt|
t
jsn| j|	 | j|	 |
| j |
j| jj|||	|d|d|||d
S | jj|||	|d|d|||d	S )as
  
        Starts a build pipeline run for a predefined build pipeline. Please ensure the completion of any work request for creation/updation of Build Pipeline before starting a Build Run.


        :param oci.devops.models.CreateBuildRunDetails create_build_run_details: (required)
            Parameter details required to create a new build run.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.BuildRun`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/create_build_run.py.html>`__ to see an example of how to use create_build_run API.
        
/buildRunsr)   create_build_runzMhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/BuildRun/CreateBuildRun)r   r   r.   r-   r,   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z1DevopsClient.create_build_run.<locals>.<listcomp>z)create_build_run got unknown kwargs: {!r}r?   r.   r-   r,   )rA   rB   rE   rD   rC   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   z1DevopsClient.create_build_run.<locals>.<dictcomp>r   rI   Nrk   r   r|   r}   )r!   Zcreate_build_run_detailsr#   rT   rL   rM   rR   rS   rg   rO   r   r$   r3   r%   r   _  sh   $


zDevopsClient.create_build_runc                    rv   )aj  
        Creates a new connection.


        :param oci.devops.models.CreateConnectionDetails create_connection_details: (required)
            Details for the new connection.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.Connection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/create_connection.py.html>`__ to see an example of how to use create_connection API.
        /connectionsr)   create_connectionzQhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Connection/CreateConnectionry   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z2DevopsClient.create_connection.<locals>.<listcomp>z*create_connection got unknown kwargs: {!r}r?   r.   r-   rz   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   z2DevopsClient.create_connection.<locals>.<dictcomp>r   rI   N
Connectionr   r|   r}   )r!   Zcreate_connection_detailsr#   rT   rL   rM   rR   rS   rg   rO   r   r$   r3   r%   r     r~   zDevopsClient.create_connectionc                    rv   )a  
        Creates a new deployment artifact.


        :param oci.devops.models.CreateDeployArtifactDetails create_deploy_artifact_details: (required)
            Details for the new deployment artifact.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DeployArtifact`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/create_deploy_artifact.py.html>`__ to see an example of how to use create_deploy_artifact API.
        /deployArtifactsr)   create_deploy_artifactzYhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployArtifact/CreateDeployArtifactry   c                    r/   r$   r$   r0   r3   r$   r%   r4   N  r5   z7DevopsClient.create_deploy_artifact.<locals>.<listcomp>z/create_deploy_artifact got unknown kwargs: {!r}r?   r.   r-   rz   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   Y  rH   z7DevopsClient.create_deploy_artifact.<locals>.<dictcomp>r   rI   NDeployArtifactr   r|   r}   )r!   Zcreate_deploy_artifact_detailsr#   rT   rL   rM   rR   rS   rg   rO   r   r$   r3   r%   r      r~   z#DevopsClient.create_deploy_artifactc                    rv   )a  
        Creates a new deployment environment.


        :param oci.devops.models.CreateDeployEnvironmentDetails create_deploy_environment_details: (required)
            Details for the new deployment environment.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DeployEnvironment`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/create_deploy_environment.py.html>`__ to see an example of how to use create_deploy_environment API.
        /deployEnvironmentsr)   create_deploy_environmentz_https://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployEnvironment/CreateDeployEnvironmentry   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z:DevopsClient.create_deploy_environment.<locals>.<listcomp>z2create_deploy_environment got unknown kwargs: {!r}r?   r.   r-   rz   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   z:DevopsClient.create_deploy_environment.<locals>.<dictcomp>r   rI   NDeployEnvironmentr   r|   r}   )r!   Z!create_deploy_environment_detailsr#   rT   rL   rM   rR   rS   rg   rO   r   r$   r3   r%   r   ~  r~   z&DevopsClient.create_deploy_environmentc                    rv   )a  
        Creates a new deployment pipeline.


        :param oci.devops.models.CreateDeployPipelineDetails create_deploy_pipeline_details: (required)
            Details for the new deployment pipeline.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DeployPipeline`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/create_deploy_pipeline.py.html>`__ to see an example of how to use create_deploy_pipeline API.
        /deployPipelinesr)   create_deploy_pipelinezYhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployPipeline/CreateDeployPipelinery   c                    r/   r$   r$   r0   r3   r$   r%   r4   
  r5   z7DevopsClient.create_deploy_pipeline.<locals>.<listcomp>z/create_deploy_pipeline got unknown kwargs: {!r}r?   r.   r-   rz   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   z7DevopsClient.create_deploy_pipeline.<locals>.<dictcomp>r   rI   NDeployPipeliner   r|   r}   )r!   Zcreate_deploy_pipeline_detailsr#   rT   rL   rM   rR   rS   rg   rO   r   r$   r3   r%   r     r~   z#DevopsClient.create_deploy_pipelinec                    rv   )a~  
        Creates a new deployment stage.


        :param oci.devops.models.CreateDeployStageDetails create_deploy_stage_details: (required)
            Details for the new deployment stage.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DeployStage`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/create_deploy_stage.py.html>`__ to see an example of how to use create_deploy_stage API.
        /deployStagesr)   create_deploy_stagezShttps://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployStage/CreateDeployStagery   c                    r/   r$   r$   r0   r3   r$   r%   r4   h  r5   z4DevopsClient.create_deploy_stage.<locals>.<listcomp>z,create_deploy_stage got unknown kwargs: {!r}r?   r.   r-   rz   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   s  rH   z4DevopsClient.create_deploy_stage.<locals>.<dictcomp>r   rI   NDeployStager   r|   r}   )r!   Zcreate_deploy_stage_detailsr#   rT   rL   rM   rR   rS   rg   rO   r   r$   r3   r%   r   :  r~   z DevopsClient.create_deploy_stagec                    rv   )aj  
        Creates a new deployment.


        :param oci.devops.models.CreateDeploymentDetails create_deployment_details: (required)
            Details for the new deployment.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.Deployment`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/create_deployment.py.html>`__ to see an example of how to use create_deployment API.
        /deploymentsr)   create_deploymentzQhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Deployment/CreateDeploymentry   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z2DevopsClient.create_deployment.<locals>.<listcomp>z*create_deployment got unknown kwargs: {!r}r?   r.   r-   rz   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   z2DevopsClient.create_deployment.<locals>.<dictcomp>r   rI   NrJ   r   r|   r}   )r!   Zcreate_deployment_detailsr#   rT   rL   rM   rR   rS   rg   rO   r   r$   r3   r%   r     r~   zDevopsClient.create_deploymentc                    rv   )aU  
        Creates a new project.


        :param oci.devops.models.CreateProjectDetails create_project_details: (required)
            Details for the new project.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.Project`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/create_project.py.html>`__ to see an example of how to use create_project API.
        	/projectsr)   create_projectzKhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Project/CreateProjectry   c                    r/   r$   r$   r0   r3   r$   r%   r4   $  r5   z/DevopsClient.create_project.<locals>.<listcomp>z'create_project got unknown kwargs: {!r}r?   r.   r-   rz   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   /  rH   z/DevopsClient.create_project.<locals>.<dictcomp>r   rI   NProjectr   r|   r}   )r!   Zcreate_project_detailsr#   rT   rL   rM   rR   rS   rg   rO   r   r$   r3   r%   r     r~   zDevopsClient.create_projectc                    rv   )aj  
        Creates a new repository.


        :param oci.devops.models.CreateRepositoryDetails create_repository_details: (required)
            Details for the new repository.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.Repository`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/create_repository.py.html>`__ to see an example of how to use create_repository API.
        /repositoriesr)   create_repositoryzQhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/CreateRepositoryry   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z2DevopsClient.create_repository.<locals>.<listcomp>z*create_repository got unknown kwargs: {!r}r?   r.   r-   rz   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   z2DevopsClient.create_repository.<locals>.<dictcomp>r   rI   N
Repositoryr   r|   r}   )r!   Zcreate_repository_detailsr#   rT   rL   rM   rR   rS   rg   rO   r   r$   r3   r%   r   T  r~   zDevopsClient.create_repositoryc                    rv   )aa  
        Creates a new trigger.


        :param oci.devops.models.CreateTriggerDetails create_trigger_details: (required)
            Details for the new trigger.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.TriggerCreateResult`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/create_trigger.py.html>`__ to see an example of how to use create_trigger API.
        	/triggersr)   create_triggerzKhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Trigger/CreateTriggerry   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z/DevopsClient.create_trigger.<locals>.<listcomp>z'create_trigger got unknown kwargs: {!r}r?   r.   r-   rz   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   z/DevopsClient.create_trigger.<locals>.<dictcomp>r   rI   NZTriggerCreateResultr   r|   r}   )r!   Zcreate_trigger_detailsr#   rT   rL   rM   rR   rS   rg   rO   r   r$   r3   r%   r     r~   zDevopsClient.create_triggerc                    r  dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7dd|	dt
|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| || j |j| jj|||	||	d|||d	S | jj|||	||	d|||dS )a  
        Deletes a build pipeline resource by identifier.


        :param str build_pipeline_id: (required)
            Unique build pipeline identifier.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/delete_build_pipeline.py.html>`__ to see an example of how to use delete_build_pipeline API.
        buildPipelineId!/buildPipelines/{buildPipelineId}DELETEdelete_build_pipelinezWhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/BuildPipeline/DeleteBuildPipeliner   r   r,   r-   c                    r/   r$   r$   r0   r3   r$   r%   r4   >  r5   z6DevopsClient.delete_build_pipeline.<locals>.<listcomp>z.delete_build_pipeline got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   G  r=   z6DevopsClient.delete_build_pipeline.<locals>.<dictcomp>Nr   r>   r?   r,   r-   rA   rB   rC   rD   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   S  rH   r   rI   r   rq   r   rV   rW   rX   rY   rZ   r[   r\   r]   r   r8   r    r^   r   r   r_   r`   rb   rc   r   rd   re   r!   build_pipeline_idr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r     n   !$

z"DevopsClient.delete_build_pipelinec                    r   )a  
        Deletes a stage based on the stage ID provided in the request.


        :param str build_pipeline_stage_id: (required)
            Unique stage identifier.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/delete_build_pipeline_stage.py.html>`__ to see an example of how to use delete_build_pipeline_stage API.
        buildPipelineStageId+/buildPipelineStages/{buildPipelineStageId}r   delete_build_pipeline_stagezahttps://docs.oracle.com/iaas/api/#/en/devops/20210630/BuildPipelineStage/DeleteBuildPipelineStager   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z<DevopsClient.delete_build_pipeline_stage.<locals>.<listcomp>z4delete_build_pipeline_stage got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z<DevopsClient.delete_build_pipeline_stage.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   r   rq   r   r!   build_pipeline_stage_idr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r   u  r   z(DevopsClient.delete_build_pipeline_stagec                    r   )a  
        Deletes a connection resource by identifier.


        :param str connection_id: (required)
            Unique connection identifier.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/delete_connection.py.html>`__ to see an example of how to use delete_connection API.
        connectionId/connections/{connectionId}r   delete_connectionzQhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Connection/DeleteConnectionr   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z2DevopsClient.delete_connection.<locals>.<listcomp>z*delete_connection got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z2DevopsClient.delete_connection.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   r   rq   r   r!   connection_idr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r     r   zDevopsClient.delete_connectionc                    r   )a  
        Deletes a deployment artifact resource by identifier.


        :param str deploy_artifact_id: (required)
            Unique artifact identifier.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/delete_deploy_artifact.py.html>`__ to see an example of how to use delete_deploy_artifact API.
        deployArtifactId#/deployArtifacts/{deployArtifactId}r   delete_deploy_artifactzYhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployArtifact/DeleteDeployArtifactr   c                    r/   r$   r$   r0   r3   r$   r%   r4   m  r5   z7DevopsClient.delete_deploy_artifact.<locals>.<listcomp>z/delete_deploy_artifact got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   v  r=   z7DevopsClient.delete_deploy_artifact.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   r   rq   r   r!   deploy_artifact_idr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r   ?  r   z#DevopsClient.delete_deploy_artifactc                    r   )a  
        Deletes a deployment environment resource by identifier.


        :param str deploy_environment_id: (required)
            Unique environment identifier.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/delete_deploy_environment.py.html>`__ to see an example of how to use delete_deploy_environment API.
        deployEnvironmentId)/deployEnvironments/{deployEnvironmentId}r   delete_deploy_environmentz_https://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployEnvironment/DeleteDeployEnvironmentr   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z:DevopsClient.delete_deploy_environment.<locals>.<listcomp>z2delete_deploy_environment got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z:DevopsClient.delete_deploy_environment.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   r   rq   r   r!   deploy_environment_idr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r     r   z&DevopsClient.delete_deploy_environmentc                    r   )a  
        Deletes a deployment pipeline resource by identifier.


        :param str deploy_pipeline_id: (required)
            Unique pipeline identifier.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/delete_deploy_pipeline.py.html>`__ to see an example of how to use delete_deploy_pipeline API.
        deployPipelineId#/deployPipelines/{deployPipelineId}r   delete_deploy_pipelinezYhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployPipeline/DeleteDeployPipeliner   c                    r/   r$   r$   r0   r3   r$   r%   r4   7	  r5   z7DevopsClient.delete_deploy_pipeline.<locals>.<listcomp>z/delete_deploy_pipeline got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   @	  r=   z7DevopsClient.delete_deploy_pipeline.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   L	  rH   r   rI   r   rq   r   r!   deploy_pipeline_idr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r   		  r   z#DevopsClient.delete_deploy_pipelinec                    r   )a  
        Deletes a deployment stage resource by identifier.


        :param str deploy_stage_id: (required)
            Unique stage identifier.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/delete_deploy_stage.py.html>`__ to see an example of how to use delete_deploy_stage API.
        deployStageId/deployStages/{deployStageId}r   delete_deploy_stagezShttps://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployStage/DeleteDeployStager   c                    r/   r$   r$   r0   r3   r$   r%   r4   	  r5   z4DevopsClient.delete_deploy_stage.<locals>.<listcomp>z,delete_deploy_stage got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   	  r=   z4DevopsClient.delete_deploy_stage.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   	  rH   r   rI   r   rq   r   r!   deploy_stage_idr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r   n	  r   z DevopsClient.delete_deploy_stagec                    r   )a  
        Deletes a project resource by identifier


        :param str project_id: (required)
            Unique project identifier.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/delete_project.py.html>`__ to see an example of how to use delete_project API.
        ro   /projects/{projectId}r   delete_projectzKhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Project/DeleteProjectr   c                    r/   r$   r$   r0   r3   r$   r%   r4   
  r5   z/DevopsClient.delete_project.<locals>.<listcomp>z'delete_project got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   

  r=   z/DevopsClient.delete_project.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   
  rH   r   rI   r   rq   r   rr   r$   r3   r%   r   	  r   zDevopsClient.delete_projectc                    s  ddg}d}d}d}d}g d  fdd	t |D }	|	r%td
|	||d}
dd t |
D }
t |
D ]\}}|du sOt|t jrVt| dkrVtd|q9dd|	dt
|	dt
|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| | j| || j |j| jj|||
||	d|||d	S | jj|||
||	d|||dS )ak
  
        Deletes a Repository's Ref by its name. Returns an error if the name is ambiguous. Can be disambiguated by using full names like "heads/<name>" or "tags/<name>".


        :param str repository_id: (required)
            Unique repository identifier.

        :param str ref_name: (required)
            A filter to return only resources that match the given reference name.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/delete_ref.py.html>`__ to see an example of how to use delete_ref API.
        repositoryIdrefName+/repositories/{repositoryId}/refs/{refName}r   
delete_refzJhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/DeleteRefr   r   r,   r.   r-   c                    r/   r$   r$   r0   r3   r$   r%   r4   m
  r5   z+DevopsClient.delete_ref.<locals>.<listcomp>z#delete_ref got unknown kwargs: {!r}r   r   c                 S   r6   r$   r7   r9   r$   r$   r%   r<   w
  r=   z+DevopsClient.delete_ref.<locals>.<dictcomp>Nr   r>   r?   r,   r.   r-   rA   rB   rC   rE   rD   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   
  rH   r   rI   r   rq   rU   r!   repository_idref_namer#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r   8
  st   '$


zDevopsClient.delete_refc                    r   )a  
        Deletes a repository resource by identifier.


        :param str repository_id: (required)
            Unique repository identifier.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/delete_repository.py.html>`__ to see an example of how to use delete_repository API.
        r   /repositories/{repositoryId}r   delete_repositoryzQhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/DeleteRepositoryr   c                    r/   r$   r$   r0   r3   r$   r%   r4   
  r5   z2DevopsClient.delete_repository.<locals>.<listcomp>z*delete_repository got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   
  r=   z2DevopsClient.delete_repository.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   
  rH   r   rI   r   rq   r   r!   r   r#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r   
  r   zDevopsClient.delete_repositoryc                    r   )a  
        Deletes a trigger resource by identifier.


        :param str trigger_id: (required)
            Unique trigger identifier.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/delete_trigger.py.html>`__ to see an example of how to use delete_trigger API.
        	triggerId/triggers/{triggerId}r   delete_triggerzKhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Trigger/DeleteTriggerr   c                    r/   r$   r$   r0   r3   r$   r%   r4   :  r5   z/DevopsClient.delete_trigger.<locals>.<listcomp>z'delete_trigger got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   C  r=   z/DevopsClient.delete_trigger.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   O  rH   r   rI   r   rq   r   r!   
trigger_idr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r     r   zDevopsClient.delete_triggerc                    l  dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7dd|	dt
d}dd t |D }| jj|	d| jd}|du r|tj}|rt|tjs| j| || j |j| jj|||	|d|	d|||d
S | jj|||	|d|	d|||d	S )a  
        Retrieves a build pipeline by identifier.


        :param str build_pipeline_id: (required)
            Unique build pipeline identifier.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.BuildPipeline`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_build_pipeline.py.html>`__ to see an example of how to use get_build_pipeline API.
        r   r   GETget_build_pipelinezThttps://docs.oracle.com/iaas/api/#/en/devops/20210630/BuildPipeline/GetBuildPipeliner   r   r-   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z3DevopsClient.get_build_pipeline.<locals>.<listcomp>z+get_build_pipeline got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z3DevopsClient.get_build_pipeline.<locals>.<dictcomp>Nr   r>   r?   r-   rA   rB   rD   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   r{   r   	rL   rM   rN   rO   rQ   r   rR   rS   rT   r   r   r$   r3   r%   r   q  p   $
zDevopsClient.get_build_pipelinec                    r   )a  
        Retrieves a stage based on the stage ID provided in the request.


        :param str build_pipeline_stage_id: (required)
            Unique stage identifier.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.BuildPipelineStage`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_build_pipeline_stage.py.html>`__ to see an example of how to use get_build_pipeline_stage API.
        r   r   r   get_build_pipeline_stagez^https://docs.oracle.com/iaas/api/#/en/devops/20210630/BuildPipelineStage/GetBuildPipelineStager   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z9DevopsClient.get_build_pipeline_stage.<locals>.<listcomp>z1get_build_pipeline_stage got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z9DevopsClient.get_build_pipeline_stage.<locals>.<dictcomp>Nr   r>   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   r   r   r   r   r   r$   r3   r%   r     r   z%DevopsClient.get_build_pipeline_stagec                    r   )a  
        Returns the details of a build run for a given build run ID.


        :param str build_run_id: (required)
            Unique build run identifier.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.BuildRun`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_build_run.py.html>`__ to see an example of how to use get_build_run API.
        ri   /buildRuns/{buildRunId}r   get_build_runzJhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/BuildRun/GetBuildRunr   c                    r/   r$   r$   r0   r3   r$   r%   r4   _  r5   z.DevopsClient.get_build_run.<locals>.<listcomp>z&get_build_run got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   h  r=   z.DevopsClient.get_build_run.<locals>.<dictcomp>Nr   r>   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   s  rH   r   rI   rk   r   r   r   )r!   rl   r#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r   5  r   zDevopsClient.get_build_runc                    p  ddg}d}d}d}d}g d  fdd	t |D }	|	r%td
|	||d}
dd t |
D }
t |
D ]\}}|du sOt|t jrVt| dkrVtd|q9dd|	dt
d}dd t |D }| jj|	d| jd}|du r~tj}|rt|tjs| j| || j |j| jj|||
|d|	d|||d
S | jj|||
|d|	d|||d	S )a  
        Retrieves a repository's commit by commit ID.


        :param str repository_id: (required)
            Unique repository identifier.

        :param str commit_id: (required)
            A filter to return only resources that match the given commit ID.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.RepositoryCommit`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_commit.py.html>`__ to see an example of how to use get_commit API.
        r   commitIdz//repositories/{repositoryId}/commits/{commitId}r   
get_commitzJhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/GetCommitr   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z+DevopsClient.get_commit.<locals>.<listcomp>z#get_commit got unknown kwargs: {!r})r   r   c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z+DevopsClient.get_commit.<locals>.<dictcomp>Nr   r>   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   ZRepositoryCommitr   r   r   )r!   r   	commit_idr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r     r   !$
zDevopsClient.get_commitc                    s  ddg}d}d}d}d}g d  fdd	t |D }	|	r%td
|	d|i}
dd t |
D }
t |
D ]\}}|du sNt|t jrUt| dkrUtd|q8|	dt
||	dt
d}dd t |D }dd|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| || j |j| jj|||
||d|	d|||dS | jj|||
||d|	d|||d
S )a  
        Compares two revisions for their differences. Supports comparison between two references or commits.


        :param str repository_id: (required)
            Unique repository identifier.

        :param str target_version: (required)
            The commit or reference name that represents the newer changes against the base version.

        :param str base_version: (optional)
            The commit or reference name to compare changes against. If base version is not provided, the difference goes against an empty tree.

        :param bool is_comparison_from_merge_base: (optional)
            Boolean value to indicate whether to use merge base or most recent revision.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DiffResponse`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_commit_diff.py.html>`__ to see an example of how to use get_commit_diff API.
        r   targetVersionz!/repositories/{repositoryId}/diffr   get_commit_diffzNhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/GetCommitDiff)r   r   base_versionis_comparison_from_merge_baser-   c                    r/   r$   r$   r0   r3   r$   r%   r4   2  r5   z0DevopsClient.get_commit_diff.<locals>.<listcomp>z(get_commit_diff got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   ;  r=   z0DevopsClient.get_commit_diff.<locals>.<dictcomp>Nr   r>   r   r   baseVersionr   isComparisonFromMergeBasec                 S   rF   rG   r7   r9   r$   r$   r%   r<   F  rH   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   M  rH   r   rI   ZDiffResponser   
rL   rM   rN   query_paramsrO   rQ   r   rR   rS   rT   r   )r!   r   target_versionr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   r   rO   r   r$   r3   r%   r     s~   '$


zDevopsClient.get_commit_diffc                    r   )a~  
        Retrieves a connection by identifier.


        :param str connection_id: (required)
            Unique connection identifier.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.Connection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_connection.py.html>`__ to see an example of how to use get_connection API.
        r   r   r   get_connectionzNhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Connection/GetConnectionr   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z/DevopsClient.get_connection.<locals>.<listcomp>z'get_connection got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z/DevopsClient.get_connection.<locals>.<dictcomp>Nr   r>   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   r   r   r   r   r   r$   r3   r%   r   s  r   zDevopsClient.get_connectionc                    r   )a  
        Retrieves a deployment artifact by identifier.


        :param str deploy_artifact_id: (required)
            Unique artifact identifier.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DeployArtifact`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_deploy_artifact.py.html>`__ to see an example of how to use get_deploy_artifact API.
        r   r   r   get_deploy_artifactzVhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployArtifact/GetDeployArtifactr   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z4DevopsClient.get_deploy_artifact.<locals>.<listcomp>z,get_deploy_artifact got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z4DevopsClient.get_deploy_artifact.<locals>.<dictcomp>Nr   r>   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   r   r   r   r   r   r$   r3   r%   r     r   z DevopsClient.get_deploy_artifactc                    r   )a  
        Retrieves a deployment environment by identifier.


        :param str deploy_environment_id: (required)
            Unique environment identifier.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DeployEnvironment`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_deploy_environment.py.html>`__ to see an example of how to use get_deploy_environment API.
        r   r   r   get_deploy_environmentz\https://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployEnvironment/GetDeployEnvironmentr   c                    r/   r$   r$   r0   r3   r$   r%   r4   a  r5   z7DevopsClient.get_deploy_environment.<locals>.<listcomp>z/get_deploy_environment got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   j  r=   z7DevopsClient.get_deploy_environment.<locals>.<dictcomp>Nr   r>   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   u  rH   r   rI   r   r   r   r   r   r$   r3   r%   r   7  r   z#DevopsClient.get_deploy_environmentc                    r   )a  
        Retrieves a deployment pipeline by identifier.


        :param str deploy_pipeline_id: (required)
            Unique pipeline identifier.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DeployPipeline`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_deploy_pipeline.py.html>`__ to see an example of how to use get_deploy_pipeline API.
        r   r   r   get_deploy_pipelinezVhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployPipeline/GetDeployPipeliner   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z4DevopsClient.get_deploy_pipeline.<locals>.<listcomp>z,get_deploy_pipeline got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z4DevopsClient.get_deploy_pipeline.<locals>.<dictcomp>Nr   r>   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   r   r   r   r   r   r$   r3   r%   r     r   z DevopsClient.get_deploy_pipelinec                    r   )a  
        Retrieves a deployment stage by identifier.


        :param str deploy_stage_id: (required)
            Unique stage identifier.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DeployStage`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_deploy_stage.py.html>`__ to see an example of how to use get_deploy_stage API.
        r   r   r   get_deploy_stagezPhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployStage/GetDeployStager   c                    r/   r$   r$   r0   r3   r$   r%   r4   %  r5   z1DevopsClient.get_deploy_stage.<locals>.<listcomp>z)get_deploy_stage got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   .  r=   z1DevopsClient.get_deploy_stage.<locals>.<dictcomp>Nr   r>   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   9  rH   r   rI   r   r   r   r   r   r$   r3   r%   r     r   zDevopsClient.get_deploy_stagec                    r   )a~  
        Retrieves a deployment by identifier.


        :param str deployment_id: (required)
            Unique deployment identifier.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.Deployment`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_deployment.py.html>`__ to see an example of how to use get_deployment API.
        r(   /deployments/{deploymentId}r   get_deploymentzNhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Deployment/GetDeploymentr   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z/DevopsClient.get_deployment.<locals>.<listcomp>z'get_deployment got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z/DevopsClient.get_deployment.<locals>.<dictcomp>Nr   r>   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   rJ   r   r   r   )r!   rf   r#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r   ]  r   zDevopsClient.get_deploymentc                    s  g d}d}d}d}	d}
g d  fddt |D }|r%td	|||d
}dd t |D }t |D ]\}}|du sOt|t jrVt| dkrVtd|q9|||	dt
d}dd t |D }dd|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| || j |j| jj|||||d|	d|	|
|dS | jj|||||d|	d|	|
|d
S )a	  
        Gets the line-by-line difference between file on different commits. This API will be deprecated on Wed, 29 Mar 2023 01:00:00 GMT as it does not get recognized when filePath has '/'. This will be replaced by "/repositories/{repositoryId}/file/diffs"


        :param str repository_id: (required)
            Unique repository identifier.

        :param str file_path: (required)
            Path to a file within a repository.

        :param str base_version: (required)
            The branch to compare changes against.

        :param str target_version: (required)
            The branch where changes are coming from.

        :param bool is_comparison_from_merge_base: (optional)
            Boolean to indicate whether to use merge base or most recent revision.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.FileDiffResponse`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_file_diff.py.html>`__ to see an example of how to use get_file_diff API.
        )r   filePathr   r   z-/repositories/{repositoryId}/diffs/{filePath}r   get_file_diffzLhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/GetFileDiff)r   r   r   r-   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z.DevopsClient.get_file_diff.<locals>.<listcomp>z&get_file_diff got unknown kwargs: {!r}r   r   c                 S   r6   r$   r7   r9   r$   r$   r%   r<      r=   z.DevopsClient.get_file_diff.<locals>.<dictcomp>Nr   r>   r   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   FileDiffResponser   r   r   )r!   r   	file_pathr   r   r#   rT   rL   rM   rR   rS   rg   rN   r:   r;   r   rO   r   r$   r3   r%   r     s   *$

zDevopsClient.get_file_diffc                    r   )a  
        Returns either current mirror record or last successful mirror record for a specific mirror repository.


        :param str repository_id: (required)
            Unique repository identifier.

        :param str mirror_record_type: (required)
            The field of mirror record type. Only one mirror record type can be provided:
            current - The current mirror record.
            lastSuccessful - The last successful mirror record.

            Allowed values are: "current", "lastSuccessful"

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.RepositoryMirrorRecord`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_mirror_record.py.html>`__ to see an example of how to use get_mirror_record API.
        r   mirrorRecordTypez=/repositories/{repositoryId}/mirrorRecords/{mirrorRecordType}r   get_mirror_recordzPhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/GetMirrorRecordr   c                    r/   r$   r$   r0   r3   r$   r%   r4   i  r5   z2DevopsClient.get_mirror_record.<locals>.<listcomp>z*get_mirror_record got unknown kwargs: {!r})r   r   c                 S   r6   r$   r7   r9   r$   r$   r%   r<   s  r=   z2DevopsClient.get_mirror_record.<locals>.<dictcomp>Nr   r>   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   ~  rH   r   rI   ZRepositoryMirrorRecordr   r   r   )r!   r   Zmirror_record_typer#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r   8  sr   %$
zDevopsClient.get_mirror_recordc                      dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7|	dt
|	dt
d}dd t |D }dd|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| || j |j| jj|||	||d|	d|||dS | jj|||	||d|	d|||d
S )a  
        Retrieves blob of specific branch name/commit ID and file path.


        :param str repository_id: (required)
            Unique repository identifier.

        :param str file_path: (optional)
            A filter to return only commits that affect any of the specified paths.

        :param str ref_name: (optional)
            A filter to return only resources that match the given reference name.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.RepositoryObject`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_object.py.html>`__ to see an example of how to use get_object API.
        r   z#/repositories/{repositoryId}/objectr   
get_objectzPhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/RepositoryObject/GetObject)r   r   r   r   r-   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z+DevopsClient.get_object.<locals>.<listcomp>z#get_object got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z+DevopsClient.get_object.<locals>.<dictcomp>Nr   r>   r   r   )r   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   ZRepositoryObjectr   r   r   r!   r   r#   rT   rL   rM   rR   rS   rg   rN   r:   r;   r   rO   r   r$   r3   r%   r    |   $$


zDevopsClient.get_objectc                    s  ddg}d}d}d}d}g d  fdd	t |D }	|	r%td
|	||d}
dd t |
D }
t |
D ]\}}|du sOt|t jrVt| dkrVtd|q9d|	dt
i}dd t |D }dd|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| || j |j| jj|||
||d|	d|||dS | jj|||
||d|	d|||d
S )a2  
        Retrieve contents of a specified object.


        :param str repository_id: (required)
            Unique repository identifier.

        :param str sha: (required)
            The SHA of a blob or tree.

        :param str file_path: (optional)
            A filter to return only commits that affect any of the specified paths.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type stream
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_object_content.py.html>`__ to see an example of how to use get_object_content API.
        r   shaz2/repositories/{repositoryId}/objects/{sha}/contentr   get_object_contentzQhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/GetObjectContent)r   r   r   r-   c                    r/   r$   r$   r0   r3   r$   r%   r4   E  r5   z3DevopsClient.get_object_content.<locals>.<listcomp>z+get_object_content got unknown kwargs: {!r})r   r  c                 S   r6   r$   r7   r9   r$   r$   r%   r<   O  r=   z3DevopsClient.get_object_content.<locals>.<dictcomp>Nr   r>   r   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   X  rH   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   _  rH   r   rI   streamr   r   r   )r!   r   r  r#   rT   rL   rM   rR   rS   rg   rN   r:   r;   r   rO   r   r$   r3   r%   r    s|   $$
zDevopsClient.get_object_contentc                    r   )al  
        Retrieves a project by identifier.


        :param str project_id: (required)
            Unique project identifier.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.Project`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_project.py.html>`__ to see an example of how to use get_project API.
        ro   r   r   get_projectzHhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Project/GetProjectr   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z,DevopsClient.get_project.<locals>.<listcomp>z$get_project got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z,DevopsClient.get_project.<locals>.<dictcomp>Nr   r>   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   r   r   r   r   rr   r$   r3   r%   r    r   zDevopsClient.get_projectc                    r   )a  
        Retrieves a repository's reference by its name with preference for branches over tags if the name is ambiguous. This can be disambiguated by using full names like "heads/<name>" or "tags/<name>".


        :param str repository_id: (required)
            Unique repository identifier.

        :param str ref_name: (required)
            A filter to return only resources that match the given reference name.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.RepositoryRef`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_ref.py.html>`__ to see an example of how to use get_ref API.
        r   r   r   r   get_refzGhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/GetRefr   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z(DevopsClient.get_ref.<locals>.<listcomp>z get_ref got unknown kwargs: {!r}r   c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z(DevopsClient.get_ref.<locals>.<dictcomp>Nr   r>   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   )  rH   r   rI   RepositoryRefr   r   r   r   r$   r3   r%   r	    r   zDevopsClient.get_refc                    s  g d}d}d}d}d}	g d  fddt |D }
|
r%td	|
d
|i}dd t |D }t |D ]\}}|du sNt|t jrUt| dkrUtd|q8|	dt
|||	dt
d}dd t |D }dd|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| || j |j| jj|||||d|	d||	|dS | jj|||||d|	d||	|d
S )a  
        Gets the line-by-line difference between file on different commits.


        :param str repository_id: (required)
            Unique repository identifier.

        :param str base_version: (required)
            The branch to compare changes against.

        :param str target_version: (required)
            The branch where changes are coming from.

        :param str file_path: (optional)
            A filter to return only commits that affect any of the specified paths.

        :param bool is_comparison_from_merge_base: (optional)
            Boolean to indicate whether to use merge base or most recent revision.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.FileDiffResponse`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_repo_file_diff.py.html>`__ to see an example of how to use get_repo_file_diff API.
        r   r   r   z'/repositories/{repositoryId}/file/diffsr   get_repo_file_diffzPhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/GetRepoFileDiff)r   r   r   r   r-   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z3DevopsClient.get_repo_file_diff.<locals>.<listcomp>z+get_repo_file_diff got unknown kwargs: {!r}r   c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z3DevopsClient.get_repo_file_diff.<locals>.<dictcomp>Nr   r>   r   r   )r   r   r   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   r   r   r   r   r!   r   r   r   r#   rT   rL   rM   rR   rS   rg   rN   r:   r;   r   rO   r   r$   r3   r%   r  M  s   *$


zDevopsClient.get_repo_file_diffc                    s  ddg}d}d}d}d}g d  fdd	t |D }	|	r%td
|	d|i}
dd t |
D }
t |
D ]\}}|du sNt|t jrUt| dkrUtd|q8|	dt
||	dt
|	dt
d}dd t |D }dd|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| || j |j| jj|||
||d|	d|||dS | jj|||
||d|	d|||d
S )ad  
        Retrieve lines of a specified file. Supports starting line number and limit.


        :param str repository_id: (required)
            Unique repository identifier.

        :param str revision: (required)
            Retrieve file lines from specific revision.

        :param str file_path: (optional)
            A filter to return only commits that affect any of the specified paths.

        :param int start_line_number: (optional)
            Line number from where to start returning file lines.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.RepositoryFileLines`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_repo_file_lines.py.html>`__ to see an example of how to use get_repo_file_lines API.
        r   revisionz'/repositories/{repositoryId}/file/linesr   get_repo_file_lineszQhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/GetRepoFileLines)r   r   r   start_line_numberlimitr-   c                    r/   r$   r$   r0   r3   r$   r%   r4      r5   z4DevopsClient.get_repo_file_lines.<locals>.<listcomp>z,get_repo_file_lines got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   	  r=   z4DevopsClient.get_repo_file_lines.<locals>.<dictcomp>Nr   r>   r   r  r  )r   r  startLineNumberr  c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   RepositoryFileLinesr   r   r   )r!   r   r  r#   rT   rL   rM   rR   rS   rg   rN   r:   r;   r   rO   r   r$   r3   r%   r    s   *$



z DevopsClient.get_repo_file_linesc                    s  dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7d|v rog d}|d D ]}||vrntd|qad| j	
|dtdi}dd t |D }dd|dtd}dd t |D }| j	j|d| jd}|du rtj}|rt|tjs| j	| || j |j| j	j|||	||d|d|||dS | j	j|||	||d|d|||d
S )aZ  
        Retrieves a repository by identifier.


        :param str repository_id: (required)
            Unique repository identifier.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param list[str] fields: (optional)
            Fields parameter can contain multiple flags useful in deciding the API functionality.

            Allowed values are: "branchCount", "commitCount", "sizeInBytes"

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.Repository`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_repository.py.html>`__ to see an example of how to use get_repository API.
        r   r   r   get_repositoryzNhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/GetRepository)r   r   r-   fieldsc                    r/   r$   r$   r0   r3   r$   r%   r4   r  r5   z/DevopsClient.get_repository.<locals>.<listcomp>z'get_repository got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   {  r=   z/DevopsClient.get_repository.<locals>.<dictcomp>Nr   r>   r  )ZbranchCountZcommitCountsizeInBytesz.Invalid value for `fields`, must be one of {0}multic                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   r   r   r   )r   rV   rW   rX   rY   rZ   r[   r\   r]   r     generate_collection_format_paramr   r8   r^   r   r   r_   r`   rb   rc   r   rd   re   )r!   r   r#   rT   rL   rM   rR   rS   rg   rN   r:   r;   Zfields_allowed_valuesZfields_itemr   rO   r   r$   r3   r%   r  B  s   #$
zDevopsClient.get_repositoryc                    r  )a|  
        Returns the archived repository information.


        :param str repository_id: (required)
            Unique repository identifier.

        :param str ref_name: (optional)
            A filter to return only resources that match the given reference name.

        :param str format: (optional)
            The archive format query parameter for downloading repository endpoint.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type stream
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_repository_archive_content.py.html>`__ to see an example of how to use get_repository_archive_content API.
        r   z,/repositories/{repositoryId}/archive/contentr   get_repository_archive_contentz\https://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/GetRepositoryArchiveContent)r   r   r   rX   r-   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z?DevopsClient.get_repository_archive_content.<locals>.<listcomp>z7get_repository_archive_content got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z?DevopsClient.get_repository_archive_content.<locals>.<dictcomp>Nr   r>   r   rX   )r   rX   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   r  r   r   r   r  r$   r3   r%   r    r  z+DevopsClient.get_repository_archive_contentc                    s  g d}d}d}d}d}	g d  fddt |D }
|
r%td	|
||d
}dd t |D }t |D ]\}}|du sOt|t jrVt| dkrVtd|q9||	dt
|	dt
d}dd t |D }dd|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| || j |j| jj|||||d|	d||	|dS | jj|||||d|	d||	|d
S )a	  
        Retrieve lines of a specified file. Supports starting line number and limit. This API will be deprecated on Wed, 29 Mar 2023 01:00:00 GMT as it does not get recognized when filePath has '/'. This will be replaced by "/repositories/{repositoryId}/file/lines"


        :param str repository_id: (required)
            Unique repository identifier.

        :param str file_path: (required)
            Path to a file within a repository.

        :param str revision: (required)
            Retrieve file lines from specific revision.

        :param int start_line_number: (optional)
            Line number from where to start returning file lines.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.RepositoryFileLines`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_repository_file_lines.py.html>`__ to see an example of how to use get_repository_file_lines API.
        )r   r   r  z3/repositories/{repositoryId}/files/{filePath}/linesr   get_repository_file_lineszWhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/GetRepositoryFileLines)r   r   r  r  r-   c                    r/   r$   r$   r0   r3   r$   r%   r4   c  r5   z:DevopsClient.get_repository_file_lines.<locals>.<listcomp>z2get_repository_file_lines got unknown kwargs: {!r}r   c                 S   r6   r$   r7   r9   r$   r$   r%   r<   m  r=   z:DevopsClient.get_repository_file_lines.<locals>.<dictcomp>Nr   r>   r  r  )r  r  r  c                 S   rF   rG   r7   r9   r$   r$   r%   r<   x  rH   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   r  r   r   r   )r!   r   r   r  r#   rT   rL   rM   rR   rS   rg   rN   r:   r;   r   rO   r   r$   r3   r%   r  +  s   *$


z&DevopsClient.get_repository_file_linesc                    r   )al  
        Retrieves a trigger by identifier.


        :param str trigger_id: (required)
            Unique trigger identifier.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.Trigger`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_trigger.py.html>`__ to see an example of how to use get_trigger API.
        r   r   r   get_triggerzHhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Trigger/GetTriggerr   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z,DevopsClient.get_trigger.<locals>.<listcomp>z$get_trigger got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z,DevopsClient.get_trigger.<locals>.<dictcomp>Nr   r>   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   Triggerr   r   r   r   r$   r3   r%   r    r   zDevopsClient.get_triggerc                    r   )a  
        Retrieves the status of the work request with the given ID.


        :param str work_request_id: (required)
            The ID of the asynchronous work request.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.WorkRequest`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/get_work_request.py.html>`__ to see an example of how to use get_work_request API.
        workRequestIdz/workRequests/{workRequestId}r   get_work_requestzPhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/WorkRequest/GetWorkRequestr   c                    r/   r$   r$   r0   r3   r$   r%   r4   1  r5   z1DevopsClient.get_work_request.<locals>.<listcomp>z)get_work_request got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   :  r=   z1DevopsClient.get_work_request.<locals>.<dictcomp>Nr   r>   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   E  rH   r   rI   ZWorkRequestr   r   r   )r!   work_request_idr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r    r   zDevopsClient.get_work_requestc                    s  dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7d|v rjddg}|d |vrjtd||	dt
|	dt
|	dt
|	dt
d}dd t |D }dd|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| || j |j| jj|||	||d|	d|||d S | jj|||	||d|	d|||d 
S )!a  
        Retrieve a list of all the authors.


        :param str repository_id: (required)
            Unique repository identifier.

        :param str ref_name: (optional)
            A filter to return only resources that match the given reference name.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.RepositoryAuthorCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_authors.py.html>`__ to see an example of how to use list_authors API.
        r   z$/repositories/{repositoryId}/authorsr   list_authorszLhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/ListAuthors)r   r   r   r  page
sort_orderr-   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z-DevopsClient.list_authors.<locals>.<listcomp>z%list_authors got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z-DevopsClient.list_authors.<locals>.<dictcomp>Nr   r>   r"  ASCDESC2Invalid value for `sort_order`, must be one of {0}r   r  r!  )r   r  r!  	sortOrderc                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   ZRepositoryAuthorCollectionr   r   r   r!   r   r#   rT   rL   rM   rR   rS   rg   rN   r:   r;   sort_order_allowed_valuesr   rO   r   r$   r3   r%   r   i  s   ,	$




zDevopsClient.list_authorsc                      g }d}d}d}d}g d  fddt |D }|r#td|d	|v r8g d
}|d	 |vr8td|d|v rMddg}	|d |	vrMtd|	d|v rbddg}
|d |
vrbtd|
|dt|dt|dt|d	t|dt|dt|dt|dt|dtd	}dd t |D }dd|dtd}d d t |D }| jj|d!| j	d"}|d#u rt
j}|rt|t
js| j| || j |j| jj||||d$|d%|||d&
S | jj||||d$|d%|||d&	S )'a  
        Returns a list of all stages in a compartment or build pipeline.


        :param str id: (optional)
            Unique identifier or OCID for listing a single resource by ID.

        :param str build_pipeline_id: (optional)
            The OCID of the parent build pipeline.

        :param str compartment_id: (optional)
            The OCID of the compartment in which to list resources.

        :param str lifecycle_state: (optional)
            A filter to return the stages that matches the given lifecycle state.

            Allowed values are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED"

        :param str display_name: (optional)
            A filter to return only resources that match the entire display name given.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str sort_by: (optional)
            The field to sort by. Only one sort order may be provided. Default order for time created is descending. Default order for display name is ascending. If no value is specified, then the default time created value is considered.

            Allowed values are: "timeCreated", "displayName"

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.BuildPipelineStageCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_build_pipeline_stages.py.html>`__ to see an example of how to use list_build_pipeline_stages API.
        r   r   list_build_pipeline_stageszghttps://docs.oracle.com/iaas/api/#/en/devops/20210630/BuildPipelineStageSummary/ListBuildPipelineStages)r   r   idr   compartment_idlifecycle_statedisplay_namer  r!  r"  sort_byr-   c                    r/   r$   r$   r0   r3   r$   r%   r4   ?  r5   z;DevopsClient.list_build_pipeline_stages.<locals>.<listcomp>z3list_build_pipeline_stages got unknown kwargs: {!r}r-  CREATINGUPDATINGACTIVEDELETINGDELETEDFAILED7Invalid value for `lifecycle_state`, must be one of {0}r"  r#  r$  r%  r/  timeCreateddisplayName/Invalid value for `sort_by`, must be one of {0}r+  r   r,  r.  r  r!  )	r+  r   compartmentIdlifecycleStater9  r  r!  r&  sortByc                 S   rF   rG   r7   r9   r$   r$   r%   r<   d  rH   z;DevopsClient.list_build_pipeline_stages.<locals>.<dictcomp>r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   k  rH   r   rI   NZBuildPipelineStageCollectionr   	rL   rM   r   rO   rQ   r   rR   rS   rT   r   rV   rW   rX   r   r8   rY   r    r^   r   r   r_   rZ   r`   rb   rc   r   rd   re   r!   r#   rT   rL   rM   rR   rS   rg   lifecycle_state_allowed_valuesr(  sort_by_allowed_valuesr   rO   r   r$   r3   r%   r*       <









z'DevopsClient.list_build_pipeline_stagesc                    r)  )'a  
        Returns a list of build pipelines.


        :param str id: (optional)
            Unique identifier or OCID for listing a single resource by ID.

        :param str project_id: (optional)
            unique project identifier

        :param str compartment_id: (optional)
            The OCID of the compartment in which to list resources.

        :param str lifecycle_state: (optional)
            A filter to return only build pipelines that matches the given lifecycle state.

            Allowed values are: "CREATING", "UPDATING", "ACTIVE", "INACTIVE", "DELETING", "DELETED", "FAILED"

        :param str display_name: (optional)
            A filter to return only resources that match the entire display name given.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str sort_by: (optional)
            The field to sort by. Only one sort order may be provided. Default order for time created is descending. Default order for display name is ascending. If no value is specified, then the default time created value is considered.

            Allowed values are: "timeCreated", "displayName"

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.BuildPipelineCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_build_pipelines.py.html>`__ to see an example of how to use list_build_pipelines API.
        rw   r   list_build_pipelinesz`https://docs.oracle.com/iaas/api/#/en/devops/20210630/BuildPipelineCollection/ListBuildPipelinesr   r   r+  rs   r,  r-  r.  r  r!  r"  r/  r-   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z5DevopsClient.list_build_pipelines.<locals>.<listcomp>z-list_build_pipelines got unknown kwargs: {!r}r-  r1  r2  r3  ZINACTIVEr4  r5  r6  r7  r"  r#  r$  r%  r/  r8  r9  r:  r+  rs   r,  r.  r  r!  	r+  ro   r;  r<  r9  r  r!  r&  r=  c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   z5DevopsClient.list_build_pipelines.<locals>.<dictcomp>r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   NZBuildPipelineCollectionr   r>  r?  r@  r$   r3   r%   rD    rC  z!DevopsClient.list_build_pipelinesc                    s  g }d}d}d}d}g d  fddt |D }|r#td|d	|v r8g d
}|d	 |vr8td|d|v rMddg}	|d |	vrMtd|	d|v rbddg}
|d |
vrbtd|
|dt|dt|dt|dt|dt|d	t|dt|dt|dt|dtd
}dd t |D }dd|dtd }d!d t |D }| jj|d"| j	d#}|d$u rt
j}|rt|t
js| j| || j |j| jj||||d%|d&|||d'
S | jj||||d%|d&|||d'	S )(aK  
        Returns a list of build run summary.


        :param str id: (optional)
            Unique identifier or OCID for listing a single resource by ID.

        :param str build_pipeline_id: (optional)
            Unique build pipeline identifier.

        :param str project_id: (optional)
            unique project identifier

        :param str compartment_id: (optional)
            The OCID of the compartment in which to list resources.

        :param str display_name: (optional)
            A filter to return only resources that match the entire display name given.

        :param str lifecycle_state: (optional)
            A filter to return only build runs that matches the given lifecycle state.

            Allowed values are: "ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", "DELETING"

        :param int limit: (optional)
            The maximum number of items to return.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str sort_by: (optional)
            The field to sort by. Only one sort order may be provided. Default order for time created is descending. Default order for display name is ascending. If no value is specified, then the default time created value is considered.

            Allowed values are: "timeCreated", "displayName"

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.BuildRunSummaryCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_build_runs.py.html>`__ to see an example of how to use list_build_runs API.
        r   r   list_build_runszShttps://docs.oracle.com/iaas/api/#/en/devops/20210630/BuildRunSummary/ListBuildRuns)r   r   r+  r   rs   r,  r.  r-  r  r!  r"  r/  r-   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z0DevopsClient.list_build_runs.<locals>.<listcomp>z(list_build_runs got unknown kwargs: {!r}r-  )ACCEPTEDIN_PROGRESSr6  	SUCCEEDED	CANCELINGCANCELEDr4  r7  r"  r#  r$  r%  r/  r8  r9  r:  r+  r   rs   r,  r.  r  r!  )
r+  r   ro   r;  r9  r<  r  r!  r&  r=  c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   z0DevopsClient.list_build_runs.<locals>.<dictcomp>r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   NZBuildRunSummaryCollectionr   r>  r?  r@  r$   r3   r%   rH  0  s   ?










zDevopsClient.list_build_runsc                    s  g d}d}d}d}d}	g d  fddt |D }
|
r%td	|
d
|i}dd t |D }t |D ]\}}|du sNt|t jrUt| dkrUtd|q8|||	dt
|	dt
|	dt
d}dd t |D }dd|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| || j |j| jj|||||d|	d||	|dS | jj|||||d|	d||	|d
S )aV	  
        Compares two revisions and lists the differences. Supports comparison between two references or commits.


        :param str repository_id: (required)
            Unique repository identifier.

        :param str base_version: (required)
            The commit or reference name to compare changes against.

        :param str target_version: (required)
            The commit or reference name where changes are coming from.

        :param bool is_comparison_from_merge_base: (optional)
            Boolean value to indicate whether to use merge base or most recent revision.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DiffCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_commit_diffs.py.html>`__ to see an example of how to use list_commit_diffs API.
        r  z"/repositories/{repositoryId}/diffsr   list_commit_diffszPhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/ListCommitDiffs)r   r   r   r  r!  r-   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z2DevopsClient.list_commit_diffs.<locals>.<listcomp>z*list_commit_diffs got unknown kwargs: {!r}r   c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z2DevopsClient.list_commit_diffs.<locals>.<dictcomp>Nr   r>   r   r  r!  )r   r   r   r  r!  c                 S   rF   rG   r7   r9   r$   r$   r%   r<   (  rH   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   /  rH   r   rI   ZDiffCollectionr   r   r   r  r$   r3   r%   rN    s   -$



zDevopsClient.list_commit_diffsc                    s  dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7|	dt
|	dt
|	dt
|	dt
|	dt
|	dt
|	dt
|	dt
|	dt
d	}dd t |D }dd|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| || j |j| jj|||	||d |	d!|||d"S | jj|||	||d |	d!|||d"
S )#a<  
        Returns a list of commits.


        :param str repository_id: (required)
            Unique repository identifier.

        :param str ref_name: (optional)
            A filter to return only resources that match the given reference name.

        :param str exclude_ref_name: (optional)
            A filter to exclude commits that match the given reference name.

        :param str file_path: (optional)
            A filter to return only commits that affect any of the specified paths.

        :param datetime timestamp_greater_than_or_equal_to: (optional)
            A filter to return commits only created after the specified timestamp value.

        :param datetime timestamp_less_than_or_equal_to: (optional)
            A filter to return commits only created before the specified timestamp value.

        :param str commit_message: (optional)
            A filter to return any commits that contains the given message.

        :param str author_name: (optional)
            A filter to return any commits that are pushed by the requested author.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.RepositoryCommitCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_commits.py.html>`__ to see an example of how to use list_commits API.
        r   z$/repositories/{repositoryId}/commitsr   list_commitszRhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/RepositoryCommit/ListCommits)r   r   r   exclude_ref_namer   "timestamp_greater_than_or_equal_totimestamp_less_than_or_equal_tocommit_messageauthor_namer  r!  r-   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z-DevopsClient.list_commits.<locals>.<listcomp>z%list_commits got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z-DevopsClient.list_commits.<locals>.<dictcomp>Nr   r>   r   rP  r   rQ  rR  rS  rT  r  r!  )	r   ZexcludeRefNamer   ZtimestampGreaterThanOrEqualToZtimestampLessThanOrEqualToZcommitMessageZ
authorNamer  r!  c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   ZRepositoryCommitCollectionr   r   r   r  r$   r3   r%   rO  U  s   9$









zDevopsClient.list_commitsc                    s0  g }d}d}d}d}g d  fddt |D }|r#td|d	|v r8d
dg}|d	 |vr8td|d|v rMg d}	|d |	vrMtd|	d|v rbddg}
|d |
vrbtd|
d|v rwddg}|d |vrwtd||dt|dt|dt|d	t|dt|dt|dt|dt|dt|dtd
}dd  t |D }d!d!|d"td#}d$d  t |D }| jj|d%| j	d&}|d'u rt
j}|rt|t
js| j| || j |j| jj||||d(|d)|||d*
S | jj||||d(|d)|||d*	S )+a  
        Returns a list of connections.


        :param str id: (optional)
            Unique identifier or OCID for listing a single resource by ID.

        :param str project_id: (optional)
            unique project identifier

        :param str compartment_id: (optional)
            The OCID of the compartment in which to list resources.

        :param str lifecycle_state: (optional)
            A filter to return only connections that matches the given lifecycle state.

            Allowed values are: "ACTIVE", "DELETING"

        :param str display_name: (optional)
            A filter to return only resources that match the entire display name given.

        :param str connection_type: (optional)
            A filter to return only resources that match the given connection type.

            Allowed values are: "GITHUB_ACCESS_TOKEN", "GITLAB_ACCESS_TOKEN", "GITLAB_SERVER_ACCESS_TOKEN", "BITBUCKET_SERVER_ACCESS_TOKEN", "BITBUCKET_CLOUD_APP_PASSWORD", "VBS_ACCESS_TOKEN"

        :param int limit: (optional)
            The maximum number of items to return.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str sort_by: (optional)
            The field to sort by. Only one sort order may be provided. Default order for time created is descending. Default order for display name is ascending. If no value is specified, then the default time created value is considered.

            Allowed values are: "timeCreated", "displayName"

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.ConnectionCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_connections.py.html>`__ to see an example of how to use list_connections API.
        r   r   list_connectionszZhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/ConnectionCollection/ListConnections)r   r   r+  rs   r,  r-  r.  connection_typer  r!  r"  r/  r-   c                    r/   r$   r$   r0   r3   r$   r%   r4   A  r5   z1DevopsClient.list_connections.<locals>.<listcomp>z)list_connections got unknown kwargs: {!r}r-  r3  r4  r7  rV  )ZGITHUB_ACCESS_TOKENZGITLAB_ACCESS_TOKENZGITLAB_SERVER_ACCESS_TOKENZBITBUCKET_SERVER_ACCESS_TOKENZBITBUCKET_CLOUD_APP_PASSWORDZVBS_ACCESS_TOKENz7Invalid value for `connection_type`, must be one of {0}r"  r#  r$  r%  r/  r8  r9  r:  r+  rs   r,  r.  r  r!  )
r+  ro   r;  r<  r9  ZconnectionTyper  r!  r&  r=  c                 S   rF   rG   r7   r9   r$   r$   r%   r<   n  rH   z1DevopsClient.list_connections.<locals>.<dictcomp>r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   u  rH   r   rI   NZConnectionCollectionr   r>  r?  )r!   r#   rT   rL   rM   rR   rS   rg   rA  Zconnection_type_allowed_valuesr(  rB  r   rO   r   r$   r3   r%   rU    s   A










zDevopsClient.list_connectionsc                    r)  )'a  
        Returns a list of deployment artifacts.


        :param str id: (optional)
            Unique identifier or OCID for listing a single resource by ID.

        :param str project_id: (optional)
            unique project identifier

        :param str compartment_id: (optional)
            The OCID of the compartment in which to list resources.

        :param str lifecycle_state: (optional)
            A filter to return only DeployArtifacts that matches the given lifecycleState.

            Allowed values are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED"

        :param str display_name: (optional)
            A filter to return only resources that match the entire display name given.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str sort_by: (optional)
            The field to sort by. Only one sort order may be provided. Default order for time created is descending. Default order for display name is ascending. If no value is specified, then the default time created value is considered.

            Allowed values are: "timeCreated", "displayName"

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DeployArtifactCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_deploy_artifacts.py.html>`__ to see an example of how to use list_deploy_artifacts API.
        r   r   list_deploy_artifactsz_https://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployArtifactSummary/ListDeployArtifactsrE  c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z6DevopsClient.list_deploy_artifacts.<locals>.<listcomp>z.list_deploy_artifacts got unknown kwargs: {!r}r-  r0  r7  r"  r#  r$  r%  r/  r8  r9  r:  r+  rs   r,  r.  r  r!  rG  c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   z6DevopsClient.list_deploy_artifacts.<locals>.<dictcomp>r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   NZDeployArtifactCollectionr   r>  r?  r@  r$   r3   r%   rW    rC  z"DevopsClient.list_deploy_artifactsc                    r)  )'a  
        Returns a list of deployment environments.


        :param str project_id: (optional)
            unique project identifier

        :param str compartment_id: (optional)
            The OCID of the compartment in which to list resources.

        :param str id: (optional)
            Unique identifier or OCID for listing a single resource by ID.

        :param str lifecycle_state: (optional)
            A filter to return only DeployEnvironments that matches the given lifecycleState.

            Allowed values are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION"

        :param str display_name: (optional)
            A filter to return only resources that match the entire display name given.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str sort_by: (optional)
            The field to sort by. Only one sort order may be provided. Default order for time created is descending. Default order for display name is ascending. If no value is specified, then the default time created value is considered.

            Allowed values are: "timeCreated", "displayName"

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DeployEnvironmentCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_deploy_environments.py.html>`__ to see an example of how to use list_deploy_environments API.
        r   r   list_deploy_environmentszehttps://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployEnvironmentSummary/ListDeployEnvironments)r   r   rs   r,  r+  r-  r.  r  r!  r"  r/  r-   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z9DevopsClient.list_deploy_environments.<locals>.<listcomp>z1list_deploy_environments got unknown kwargs: {!r}r-  r1  r2  r3  r4  r5  r6  NEEDS_ATTENTIONr7  r"  r#  r$  r%  r/  r8  r9  r:  rs   r,  r+  r.  r  r!  )	ro   r;  r+  r<  r9  r  r!  r&  r=  c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   z9DevopsClient.list_deploy_environments.<locals>.<dictcomp>r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   NZDeployEnvironmentCollectionr   r>  r?  r@  r$   r3   r%   rX  :  rC  z%DevopsClient.list_deploy_environmentsc                    r)  )'a  
        Returns a list of deployment pipelines.


        :param str id: (optional)
            Unique identifier or OCID for listing a single resource by ID.

        :param str project_id: (optional)
            unique project identifier

        :param str compartment_id: (optional)
            The OCID of the compartment in which to list resources.

        :param str lifecycle_state: (optional)
            A filter to return only DeployPipelines that matches the given lifecycleState.

            Allowed values are: "CREATING", "UPDATING", "ACTIVE", "INACTIVE", "DELETING", "DELETED", "FAILED"

        :param str display_name: (optional)
            A filter to return only resources that match the entire display name given.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str sort_by: (optional)
            The field to sort by. Only one sort order may be provided. Default order for time created is descending. Default order for display name is ascending. If no value is specified, then the default time created value is considered.

            Allowed values are: "timeCreated", "displayName"

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DeployPipelineCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_deploy_pipelines.py.html>`__ to see an example of how to use list_deploy_pipelines API.
        r   r   list_deploy_pipelinesz_https://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployPipelineSummary/ListDeployPipelinesrE  c                    r/   r$   r$   r0   r3   r$   r%   r4   ,  r5   z6DevopsClient.list_deploy_pipelines.<locals>.<listcomp>z.list_deploy_pipelines got unknown kwargs: {!r}r-  rF  r7  r"  r#  r$  r%  r/  r8  r9  r:  r+  rs   r,  r.  r  r!  rG  c                 S   rF   rG   r7   r9   r$   r$   r%   r<   Q  rH   z6DevopsClient.list_deploy_pipelines.<locals>.<dictcomp>r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   X  rH   r   rI   NZDeployPipelineCollectionr   r>  r?  r@  r$   r3   r%   r[    rC  z"DevopsClient.list_deploy_pipelinesc                    r)  )'a  
        Retrieves a list of deployment stages.


        :param str id: (optional)
            Unique identifier or OCID for listing a single resource by ID.

        :param str deploy_pipeline_id: (optional)
            The ID of the parent pipeline.

        :param str compartment_id: (optional)
            The OCID of the compartment in which to list resources.

        :param str lifecycle_state: (optional)
            A filter to return only deployment stages that matches the given lifecycle state.

            Allowed values are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED"

        :param str display_name: (optional)
            A filter to return only resources that match the entire display name given.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str sort_by: (optional)
            The field to sort by. Only one sort order may be provided. Default order for time created is descending. Default order for display name is ascending. If no value is specified, then the default time created value is considered.

            Allowed values are: "timeCreated", "displayName"

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DeployStageCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_deploy_stages.py.html>`__ to see an example of how to use list_deploy_stages API.
        r   r   list_deploy_stageszYhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployStageSummary/ListDeployStages)r   r   r+  r   r,  r-  r.  r  r!  r"  r/  r-   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z3DevopsClient.list_deploy_stages.<locals>.<listcomp>z+list_deploy_stages got unknown kwargs: {!r}r-  r0  r7  r"  r#  r$  r%  r/  r8  r9  r:  r+  r   r,  r.  r  r!  )	r+  r   r;  r<  r9  r  r!  r&  r=  c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   z3DevopsClient.list_deploy_stages.<locals>.<dictcomp>r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   NZDeployStageCollectionr   r>  r?  r@  r$   r3   r%   r\  |  rC  zDevopsClient.list_deploy_stagesc                    s  g }d}d}d}d}g d  fddt |D }|r#td|d	|v r8g d
}|d	 |vr8td|d|v rMddg}	|d |	vrMtd|	d|v rbddg}
|d |
vrbtd|
|dt|dt|dt|dt|d	t|dt|dt|dt|dt|dt|dt|dtd}dd t |D }d d |d!td"}d#d t |D }| jj|d$| j	d%}|d&u rt
j}|rt|t
js| j| || j |j| jj||||d'|d(|||d)
S | jj||||d'|d(|||d)	S )*a  
        Returns a list of deployments.


        :param str deploy_pipeline_id: (optional)
            The ID of the parent pipeline.

        :param str id: (optional)
            Unique identifier or OCID for listing a single resource by ID.

        :param str compartment_id: (optional)
            The OCID of the compartment in which to list resources.

        :param str project_id: (optional)
            unique project identifier

        :param str lifecycle_state: (optional)
            A filter to return only Deployments that matches the given lifecycleState.

            Allowed values are: "ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED"

        :param str display_name: (optional)
            A filter to return only resources that match the entire display name given.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str sort_by: (optional)
            The field to sort by. Only one sort order may be provided. Default order for time created is descending. Default order for display name is ascending. If no value is specified, then the default time created value is considered.

            Allowed values are: "timeCreated", "displayName"

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param datetime time_created_less_than: (optional)
            Search for DevOps resources that were created before a specific date. Specifying this parameter corresponding to `timeCreatedLessThan` parameter will retrieve all assessments created before the specified created date, in "YYYY-MM-ddThh:mmZ" format with a Z offset, as defined by `RFC3339`__.

            __ https://datatracker.ietf.org/doc/html/rfc3339

        :param datetime time_created_greater_than_or_equal_to: (optional)
            Search for DevOps resources that were created after a specific date. Specifying this parameter corresponding to `timeCreatedGreaterThanOrEqualTo` parameter will retrieve all security assessments created after the specified created date, in "YYYY-MM-ddThh:mmZ" format with a Z offset, as defined by `RFC3339`__.

            __ https://datatracker.ietf.org/doc/html/rfc3339

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DeploymentCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_deployments.py.html>`__ to see an example of how to use list_deployments API.
        r   r   list_deploymentszWhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/DeploymentSummary/ListDeployments)r   r   r   r+  r,  rs   r-  r.  r  r!  r"  r/  r-   time_created_less_than%time_created_greater_than_or_equal_toc                    r/   r$   r$   r0   r3   r$   r%   r4   ~  r5   z1DevopsClient.list_deployments.<locals>.<listcomp>z)list_deployments got unknown kwargs: {!r}r-  )rI  rJ  r6  rK  rL  rM  r7  r"  r#  r$  r%  r/  r8  r9  r:  r   r+  r,  rs   r.  r  r!  r^  r_  )r   r+  r;  ro   r<  r9  r  r!  r&  r=  ZtimeCreatedLessThanZtimeCreatedGreaterThanOrEqualToc                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   z1DevopsClient.list_deployments.<locals>.<dictcomp>r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   NZDeploymentCollectionr   r>  r?  r@  r$   r3   r%   r]    s   I












zDevopsClient.list_deploymentsc                    s  dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7d|v rjddg}|d |vrjtd||	dt
|	dt
|	dt
d}dd t |D }dd|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| || j |j| jj|||	||d|	d|||dS | jj|||	||d|	d|||d
S ) a]  
        Returns a list of mirror entry in history within 30 days.


        :param str repository_id: (required)
            Unique repository identifier.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.RepositoryMirrorRecordCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_mirror_records.py.html>`__ to see an example of how to use list_mirror_records API.
        r   z*/repositories/{repositoryId}/mirrorRecordsr   list_mirror_recordszRhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/ListMirrorRecords)r   r   r  r!  r"  r-   c                    r/   r$   r$   r0   r3   r$   r%   r4   	  r5   z4DevopsClient.list_mirror_records.<locals>.<listcomp>z,list_mirror_records got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z4DevopsClient.list_mirror_records.<locals>.<dictcomp>Nr   r>   r"  r#  r$  r%  r  r!  )r  r!  r&  c                 S   rF   rG   r7   r9   r$   r$   r%   r<   $  rH   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   +  rH   r   rI   Z RepositoryMirrorRecordCollectionr   r   r   r'  r$   r3   r%   r`    s   )$



z DevopsClient.list_mirror_recordsc                    s0  dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7d|v rjddg}|d |vrjtd|d|v rg d}|d |vrtd||	dt
|	dt
|	dt
|	dt
|	dt
|	dt
|	dt
|	dt
d}dd t |D }dd|	dt
d }d!d t |D }| jj|	d"| jd#}|du rtj}|rt|tjs| j| || j |j| jj|||	||d$|	d%|||d&S | jj|||	||d$|	d%|||d&
S )'a  
        Retrieves a list of files and directories in a repository.


        :param str repository_id: (required)
            Unique repository identifier.

        :param str ref: (optional)
            The name of branch/tag or commit hash it points to. If names conflict, order of preference is commit > branch > tag.
            You can disambiguate with "heads/foobar" and "tags/foobar". If left blank repository's default branch will be used.

        :param bool paths_in_subtree: (optional)
            Flag to determine if files must be retrived recursively. Flag is False by default.

        :param str folder_path: (optional)
            The fully qualified path to the folder whose contents are returned, including the folder name. For example, /examples is a fully-qualified path to a folder named examples that was created off of the root directory (/) of a repository.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param str display_name: (optional)
            A filter to return only resources that match the entire display name given.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str sort_by: (optional)
            The field to sort by. Only one sort order may be provided. Default order is ascending. If no value is specified name is default.

            Allowed values are: "type", "sizeInBytes", "name"

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.RepositoryPathCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_paths.py.html>`__ to see an example of how to use list_paths API.
        r   z"/repositories/{repositoryId}/pathsr   
list_pathszUhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/RepositoryPathSummary/ListPaths)r   r   refpaths_in_subtreefolder_pathr  r!  r.  r"  r/  r-   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z+DevopsClient.list_paths.<locals>.<listcomp>z#list_paths got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z+DevopsClient.list_paths.<locals>.<dictcomp>Nr   r>   r"  r#  r$  r%  r/  )typer  namer:  rb  rc  rd  r  r!  r.  )rb  ZpathsInSubtreeZ
folderPathr  r!  r9  r&  r=  c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   ZRepositoryPathCollectionr   r   r   )r!   r   r#   rT   rL   rM   rR   rS   rg   rN   r:   r;   r(  rB  r   rO   r   r$   r3   r%   ra  Q  s   ;$









zDevopsClient.list_pathsc                    s  dg}d}d}d}d}g d  fddt |D }|r$td	|d
|v r9g d}	|d
 |	vr9td|	d|v rNddg}
|d |
vrNtd|
d|v rcddg}|d |vrctd||dt||d
t|dt|dt|dt|dt|dtd}dd t |D }dd|dtd}dd t |D }| jj|d | j	d!}|d"u rt
j}|rt|t
js| j| || j |j| jj||||d#|d$|||d%
S | jj||||d#|d$|||d%	S )&aq  
        Returns a list of projects.


        :param str compartment_id: (required)
            The OCID of the compartment in which to list resources.

        :param str id: (optional)
            Unique identifier or OCID for listing a single resource by ID.

        :param str lifecycle_state: (optional)
            A filter to return only Projects that matches the given lifecycleState.

            Allowed values are: "CREATING", "UPDATING", "ACTIVE", "DELETING", "DELETED", "FAILED", "NEEDS_ATTENTION"

        :param str name: (optional)
            A filter to return only resources that match the entire name given.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str sort_by: (optional)
            The field to sort by. Only one sort order may be provided. Default order for time created is descending. Default order for display name is ascending. If no value is specified, then the default time created value is considered.

            Allowed values are: "timeCreated", "displayName"

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.ProjectCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_projects.py.html>`__ to see an example of how to use list_projects API.
        r;  r   r   list_projectszQhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/ProjectSummary/ListProjects)
r   r   r+  r-  rf  r  r!  r"  r/  r-   c                    r/   r$   r$   r0   r3   r$   r%   r4   @  r5   z.DevopsClient.list_projects.<locals>.<listcomp>z&list_projects got unknown kwargs: {!r}r-  rY  r7  r"  r#  r$  r%  r/  r8  r9  r:  r+  rf  r  r!  )r+  r;  r<  rf  r  r!  r&  r=  c                 S   rF   rG   r7   r9   r$   r$   r%   r<   d  rH   z.DevopsClient.list_projects.<locals>.<dictcomp>r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   k  rH   r   rI   NZProjectCollectionr   r>  r?  )r!   r,  r#   rT   rL   rM   rR   rS   rg   rA  r(  rB  r   rO   r   r$   r3   r%   rg    s   9








zDevopsClient.list_projectsc                    sR  dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7d|v rjddg}|d |vrjtd|d|v rddg}|d |vrtd|d|v rddg}|d |vrtd||	dt
|	dt
|	dt
|	dt
|	dt
|	dt
|	dt
d}d d t |D }d!d!|	d"t
d#}d$d t |D }| jj|	d%| jd&}|du rtj}|rt|tjs| j| || j |j| jj|||	||d'|	d(|||d)S | jj|||	||d'|	d(|||d)
S )*a
  
        Returns a list of references.


        :param str repository_id: (required)
            Unique repository identifier.

        :param str ref_type: (optional)
            Reference type to distinguish between branch and tag. If it is not specified, all references are returned.

            Allowed values are: "BRANCH", "TAG"

        :param str commit_id: (optional)
            Commit ID in a repository.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param str ref_name: (optional)
            A filter to return only resources that match the given reference name.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str sort_by: (optional)
            The field to sort by. Only one sort order may be provided. Default order for reference name is ascending. Default order for reference type is ascending. If no value is specified reference name is default.

            Allowed values are: "refType", "refName"

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.RepositoryRefCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_refs.py.html>`__ to see an example of how to use list_refs API.
        r   z!/repositories/{repositoryId}/refsr   	list_refszLhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/RepositoryRef/ListRefs)
r   r   ref_typer   r  r!  r   r"  r/  r-   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z*DevopsClient.list_refs.<locals>.<listcomp>z"list_refs got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<     r=   z*DevopsClient.list_refs.<locals>.<dictcomp>Nr   r>   ri  BRANCHZTAGz0Invalid value for `ref_type`, must be one of {0}r"  r#  r$  r%  r/  refTyper   r:  r   r  r!  r   )rk  r   r  r!  r   r&  r=  c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   ZRepositoryRefCollectionr   r   r   )r!   r   r#   rT   rL   rM   rR   rS   rg   rN   r:   r;   Zref_type_allowed_valuesr(  rB  r   rO   r   r$   r3   r%   rh    s   9$






	
zDevopsClient.list_refsc                    s  g }d}d}d}d}g d  fddt |D }|r#td|d	|v r8g d
}|d	 |vr8td|d|v rMddg}	|d |	vrMtd|	d|v rbddg}
|d |
vrbtd|
|dt|dt|dt|d	t|dt|dt|dt|dt|dtd	}dd t |D }dd|dtd}dd t |D }| jj|d | j	d!}|d"u rt
j}|rt|t
js| j| || j |j| jj||||d#|d$|||d%
S | jj||||d#|d$|||d%	S )&a  
        Returns a list of repositories given a compartment ID or a project ID.


        :param str compartment_id: (optional)
            The OCID of the compartment in which to list resources.

        :param str project_id: (optional)
            unique project identifier

        :param str repository_id: (optional)
            Unique repository identifier.

        :param str lifecycle_state: (optional)
            A filter to return only resources whose lifecycle state matches the given lifecycle state.

            Allowed values are: "ACTIVE", "CREATING", "DELETED", "DELETING"

        :param str name: (optional)
            A filter to return only resources that match the entire name given.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str sort_by: (optional)
            The field to sort by. Only one sort order may be provided. Default order for time created is descending. Default order for name is ascending. If no value is specified time created is default.

            Allowed values are: "timeCreated", "name"

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.RepositoryCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_repositories.py.html>`__ to see an example of how to use list_repositories API.
        r   r   list_repositorieszQhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/ListRepositories)r   r   r,  rs   r   r-  rf  r  r!  r"  r/  r-   c                    r/   r$   r$   r0   r3   r$   r%   r4     r5   z2DevopsClient.list_repositories.<locals>.<listcomp>z*list_repositories got unknown kwargs: {!r}r-  )r3  r1  r5  r4  r7  r"  r#  r$  r%  r/  r8  rf  r:  r,  rs   r   r  r!  )	r;  ro   r   r<  rf  r  r!  r&  r=  c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   z2DevopsClient.list_repositories.<locals>.<dictcomp>r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<     rH   r   rI   NZRepositoryCollectionr   r>  r?  r@  r$   r3   r%   rl  5  rC  zDevopsClient.list_repositoriesc                    s  g }d}d}d}d}g d  fddt |D }|r#td|d	|v r8d
dg}|d	 |vr8td|d|v rMddg}	|d |	vrMtd|	d|v rbddg}
|d |
vrbtd|
|dt|dt|d	t|dt|dt|dt|dt|dt|dtd	}dd t |D }dd|dtd }d!d t |D }| jj|d"| j	d#}|d$u rt
j}|rt|t
js| j| || j |j| jj||||d%|d&|||d'
S | jj||||d%|d&|||d'	S )(ao  
        Returns a list of triggers.


        :param str compartment_id: (optional)
            The OCID of the compartment in which to list resources.

        :param str project_id: (optional)
            unique project identifier

        :param str lifecycle_state: (optional)
            A filter to return only triggers that matches the given lifecycle state.

            Allowed values are: "ACTIVE", "DELETING"

        :param str display_name: (optional)
            A filter to return only resources that match the entire display name given.

        :param str id: (optional)
            Unique trigger identifier.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str sort_by: (optional)
            The field to sort by. Only one sort order may be provided. Default order for time created is descending. Default order for display name is ascending. If no value is specified, then the default time created value is considered.

            Allowed values are: "timeCreated", "displayName"

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.TriggerCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_triggers.py.html>`__ to see an example of how to use list_triggers API.
        r   r   list_triggerszThttps://docs.oracle.com/iaas/api/#/en/devops/20210630/TriggerCollection/ListTriggers)r   r   r,  rs   r-  r.  r+  r  r!  r"  r/  r-   c                    r/   r$   r$   r0   r3   r$   r%   r4   '   r5   z.DevopsClient.list_triggers.<locals>.<listcomp>z&list_triggers got unknown kwargs: {!r}r-  r3  r4  r7  r"  r#  r$  r%  r/  r8  r9  r:  r,  rs   r.  r+  r  r!  )	r;  ro   r<  r9  r+  r  r!  r&  r=  c                 S   rF   rG   r7   r9   r$   r$   r%   r<   L   rH   z.DevopsClient.list_triggers.<locals>.<dictcomp>r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   S   rH   r   rI   NZTriggerCollectionr   r>  r?  r@  r$   r3   r%   rm    rC  zDevopsClient.list_triggersc                      dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7d|v rjddg}|d |vrjtd|d|v r~dg}|d |vr~td||	dt
|	dt
|	dt
|	dt
d}dd t |D }dd|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| || j |j| jj|||	||d |	d!|||d"S | jj|||	||d |	d!|||d"
S )#aO	  
        Returns a list of errors for a given work request.


        :param str work_request_id: (required)
            The ID of the asynchronous work request.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str sort_by: (optional)
            The field to sort by. Only one sort order can be provided. Default sort order is descending and is based on the timeAccepted field.

            Allowed values are: "timeAccepted"

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.WorkRequestErrorCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_work_request_errors.py.html>`__ to see an example of how to use list_work_request_errors API.
        r  z$/workRequests/{workRequestId}/errorsr   list_work_request_errorsz\https://docs.oracle.com/iaas/api/#/en/devops/20210630/WorkRequestError/ListWorkRequestErrorsr   r   r-   r!  r  r"  r/  c                    r/   r$   r$   r0   r3   r$   r%   r4      r5   z9DevopsClient.list_work_request_errors.<locals>.<listcomp>z1list_work_request_errors got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<      r=   z9DevopsClient.list_work_request_errors.<locals>.<dictcomp>Nr   r>   r"  r#  r$  r%  r/  timeAcceptedr:  r!  r  r!  r  r&  r=  c                 S   rF   rG   r7   r9   r$   r$   r%   r<      rH   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<      rH   r   rI   ZWorkRequestErrorCollectionr   r   r   r!   r  r#   rT   rL   rM   rR   rS   rg   rN   r:   r;   r(  rB  r   rO   r   r$   r3   r%   ro  w      .	$




z%DevopsClient.list_work_request_errorsc                    rn  )#aL	  
        Returns a list of logs for a given work request.


        :param str work_request_id: (required)
            The ID of the asynchronous work request.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str sort_by: (optional)
            The field to sort by. Only one sort order can be provided. Default sort order is descending and is based on the timeAccepted field.

            Allowed values are: "timeAccepted"

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.WorkRequestLogEntryCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_work_request_logs.py.html>`__ to see an example of how to use list_work_request_logs API.
        r  z"/workRequests/{workRequestId}/logsr   list_work_request_logsz]https://docs.oracle.com/iaas/api/#/en/devops/20210630/WorkRequestLogEntry/ListWorkRequestLogsrp  c                    r/   r$   r$   r0   r3   r$   r%   r4   C!  r5   z7DevopsClient.list_work_request_logs.<locals>.<listcomp>z/list_work_request_logs got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   L!  r=   z7DevopsClient.list_work_request_logs.<locals>.<dictcomp>Nr   r>   r"  r#  r$  r%  r/  rq  r:  r!  r  rr  c                 S   rF   rG   r7   r9   r$   r$   r%   r<   f!  rH   r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   m!  rH   r   rI   ZWorkRequestLogEntryCollectionr   r   r   rs  r$   r3   r%   ru  !  rt  z#DevopsClient.list_work_request_logsc                    s  dg}d}d}d}d}g d  fddt |D }|r$td	|d
|v r9g d}	|d
 |	vr9td|	d|v rNddg}
|d |
vrNtd|
d|v rbdg}|d |vrbtd|||dt|d
t|dt|dt|dt|dt|dt| j|dtdd	}dd t |D }dd|dtd}d d t |D }| jj	|d!| j
d"}|d#u rtj}|rt|tjs| j| || j |j| jj||||d$|d%|||d&
S | jj||||d$|d%|||d&	S )'a  
        Lists the work requests in a compartment.


        :param str compartment_id: (required)
            The OCID of the compartment in which to list resources.

        :param str work_request_id: (optional)
            The ID of the asynchronous work request.

        :param str status: (optional)
            A filter to return only resources where the lifecycle state matches the given operation status.

            Allowed values are: "ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED", "CANCELING", "CANCELED", "WAITING", "NEEDS_ATTENTION"

        :param str resource_id: (optional)
            The ID of the resource affected by the work request.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param str page: (optional)
            The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.

        :param int limit: (optional)
            The maximum number of items to return.

        :param str sort_order: (optional)
            The sort order to use. Use either ascending or descending.

            Allowed values are: "ASC", "DESC"

        :param str sort_by: (optional)
            The field to sort by. Only one sort order can be provided. Default sort order is descending and is based on the timeAccepted field.

            Allowed values are: "timeAccepted"

        :param list[str] operation_type_multi_value_query: (optional)
            A filter to return only resources where their Operation Types matches the parameter operation types

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.WorkRequestCollection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/list_work_requests.py.html>`__ to see an example of how to use list_work_requests API.
        r;  z/workRequestsr   list_work_requestszRhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/WorkRequest/ListWorkRequests)r   r   r  statusresource_idr-   r!  r  r"  r/   operation_type_multi_value_queryc                    r/   r$   r$   r0   r3   r$   r%   r4   !  r5   z3DevopsClient.list_work_requests.<locals>.<listcomp>z+list_work_requests got unknown kwargs: {!r}rw  )rI  rJ  r6  rK  rL  rM  ZWAITINGrZ  z.Invalid value for `status`, must be one of {0}r"  r#  r$  r%  r/  rq  r:  r  rx  r!  r  ry  r  )	r;  r  rw  Z
resourceIdr!  r  r&  r=  ZoperationTypeMultiValueQueryc                 S   rF   rG   r7   r9   r$   r$   r%   r<   "  rH   z3DevopsClient.list_work_requests.<locals>.<dictcomp>r?   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   "  rH   r   rI   NZWorkRequestCollectionr   r>  )r   rV   rW   rX   r   r8   r    r  rY   r^   r   r   r_   rZ   r`   rb   rc   r   rd   re   )r!   r,  r#   rT   rL   rM   rR   rS   rg   Zstatus_allowed_valuesr(  rB  r   rO   r   r$   r3   r%   rv  !  s   <







zDevopsClient.list_work_requestsc                    r   )a  
        Synchronize a mirrored repository to the latest version from external providers.


        :param str repository_id: (required)
            Unique repository identifier.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/mirror_repository.py.html>`__ to see an example of how to use mirror_repository API.
        r   z+/repositories/{repositoryId}/actions/mirrorr)   mirror_repositoryzQhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/MirrorRepositoryr   c                    r/   r$   r$   r0   r3   r$   r%   r4   a"  r5   z2DevopsClient.mirror_repository.<locals>.<listcomp>z*mirror_repository got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   j"  r=   z2DevopsClient.mirror_repository.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   v"  rH   r   rI   r   rq   r   r   r$   r3   r%   rz  3"  r   zDevopsClient.mirror_repositoryc                    s  ddg}d}d}d}d}	g d  fdd	t |D }
|
r%td
|
||d}dd t |D }t |D ]\}}|du sOt|t jrVt| dkrVtd|q9dd|	dt
|	dt
|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| | j| || j |j| jj|||||d|	d||	|dS | jj|||||d|	d||	|d
S )a
  
        Creates a new reference or updates an existing one.


        :param str repository_id: (required)
            Unique repository identifier.

        :param str ref_name: (required)
            A filter to return only resources that match the given reference name.

        :param oci.devops.models.PutRepositoryRefDetails put_repository_ref_details: (required)
            The information to create a reference with the type specified in the query.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.RepositoryRef`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/put_repository_ref.py.html>`__ to see an example of how to use put_repository_ref API.
        r   r   r   PUTput_repository_refzQhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/PutRepositoryRefr   c                    r/   r$   r$   r0   r3   r$   r%   r4   "  r5   z3DevopsClient.put_repository_ref.<locals>.<listcomp>z+put_repository_ref got unknown kwargs: {!r}r   c                 S   r6   r$   r7   r9   r$   r$   r%   r<   "  r=   z3DevopsClient.put_repository_ref.<locals>.<dictcomp>Nr   r>   r?   r,   r.   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   "  rH   r   rI   r
  r   rK   rU   )r!   r   r   Zput_repository_ref_detailsr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r|  "  s|   *$


zDevopsClient.put_repository_refc                    rn   )a	  
        Cascading operation that marks Project and child DevOps resources in a DELETING state for a retention period


        :param str project_id: (required)
            Unique project identifier.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type None
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/schedule_cascading_project_deletion.py.html>`__ to see an example of how to use schedule_cascading_project_deletion API.
        ro   z>/projects/{projectId}/actions/scheduleCascadingProjectDeletionr)   #schedule_cascading_project_deletionz^https://docs.oracle.com/iaas/api/#/en/devops/20210630/Project/ScheduleCascadingProjectDeletionr+   c                    r/   r$   r$   r0   r3   r$   r%   r4   @#  r5   zDDevopsClient.schedule_cascading_project_deletion.<locals>.<listcomp>z<schedule_cascading_project_deletion got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   I#  r=   zDDevopsClient.schedule_cascading_project_deletion.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r.   r@   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   V#  rH   r   rI   r   rq   rU   rr   r$   r3   r%   r}  #  rt   z0DevopsClient.schedule_cascading_project_deletionc                    z  dg}d}d}d}d}g d  fddt |D }	|	r$td	|	d|i}
d
d t |
D }
t |
D ]\}}|du sMt|t jrTt| dkrTtd|q7dd|	dt
|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| || j |j| jj|||
||d|	d|||dS | jj|||
||d|	d|||d
S )a  
        Updates the build pipeline.


        :param str build_pipeline_id: (required)
            Unique build pipeline identifier.

        :param oci.devops.models.UpdateBuildPipelineDetails update_build_pipeline_details: (required)
            The information to be updated.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.BuildPipeline`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/update_build_pipeline.py.html>`__ to see an example of how to use update_build_pipeline API.
        r   r   r{  update_build_pipelinezWhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/BuildPipeline/UpdateBuildPipeliner   c                    r/   r$   r$   r0   r3   r$   r%   r4   #  r5   z6DevopsClient.update_build_pipeline.<locals>.<listcomp>z.update_build_pipeline got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   #  r=   z6DevopsClient.update_build_pipeline.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   #  rH   r   rI   r{   r   rK   r   )r!   r   Zupdate_build_pipeline_detailsr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r  y#  v   $$

z"DevopsClient.update_build_pipelinec                    r~  )a  
        Updates the stage based on the stage ID provided in the request.


        :param str build_pipeline_stage_id: (required)
            Unique stage identifier.

        :param oci.devops.models.UpdateBuildPipelineStageDetails update_build_pipeline_stage_details: (required)
            The information to be updated.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.BuildPipelineStage`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/update_build_pipeline_stage.py.html>`__ to see an example of how to use update_build_pipeline_stage API.
        r   r   r{  update_build_pipeline_stagezahttps://docs.oracle.com/iaas/api/#/en/devops/20210630/BuildPipelineStage/UpdateBuildPipelineStager   c                    r/   r$   r$   r0   r3   r$   r%   r4   $  r5   z<DevopsClient.update_build_pipeline_stage.<locals>.<listcomp>z4update_build_pipeline_stage got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   $  r=   z<DevopsClient.update_build_pipeline_stage.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   +$  rH   r   rI   r   r   rK   r   )r!   r   Z#update_build_pipeline_stage_detailsr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r  #  r  z(DevopsClient.update_build_pipeline_stagec                    r~  )aX  
        Updates the build run.


        :param str build_run_id: (required)
            Unique build run identifier.

        :param oci.devops.models.UpdateBuildRunDetails update_build_run_details: (required)
            The information to be updated.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.BuildRun`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/update_build_run.py.html>`__ to see an example of how to use update_build_run API.
        ri   r   r{  update_build_runzMhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/BuildRun/UpdateBuildRunr   c                    r/   r$   r$   r0   r3   r$   r%   r4   $  r5   z1DevopsClient.update_build_run.<locals>.<listcomp>z)update_build_run got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   $  r=   z1DevopsClient.update_build_run.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   $  rH   r   rI   rk   r   rK   r   )r!   rl   Zupdate_build_run_detailsr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r  Q$  r  zDevopsClient.update_build_runc                    r~  )ab  
        Updates the connection.


        :param str connection_id: (required)
            Unique connection identifier.

        :param oci.devops.models.UpdateConnectionDetails update_connection_details: (required)
            The information to be updated.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.Connection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/update_connection.py.html>`__ to see an example of how to use update_connection API.
        r   r   r{  update_connectionzQhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Connection/UpdateConnectionr   c                    r/   r$   r$   r0   r3   r$   r%   r4   $  r5   z2DevopsClient.update_connection.<locals>.<listcomp>z*update_connection got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   $  r=   z2DevopsClient.update_connection.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   %  rH   r   rI   r   r   rK   r   )r!   r   Zupdate_connection_detailsr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r  $  r  zDevopsClient.update_connectionc                    r~  )a  
        Updates the deployment artifact.


        :param str deploy_artifact_id: (required)
            Unique artifact identifier.

        :param oci.devops.models.UpdateDeployArtifactDetails update_deploy_artifact_details: (required)
            The information to be updated.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DeployArtifact`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/update_deploy_artifact.py.html>`__ to see an example of how to use update_deploy_artifact API.
        r   r   r{  update_deploy_artifactzYhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployArtifact/UpdateDeployArtifactr   c                    r/   r$   r$   r0   r3   r$   r%   r4   Z%  r5   z7DevopsClient.update_deploy_artifact.<locals>.<listcomp>z/update_deploy_artifact got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   c%  r=   z7DevopsClient.update_deploy_artifact.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   o%  rH   r   rI   r   r   rK   r   )r!   r   Zupdate_deploy_artifact_detailsr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r  )%  r  z#DevopsClient.update_deploy_artifactc                    r~  )a  
        Updates the deployment environment.


        :param str deploy_environment_id: (required)
            Unique environment identifier.

        :param oci.devops.models.UpdateDeployEnvironmentDetails update_deploy_environment_details: (required)
            The information to be updated.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DeployEnvironment`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/update_deploy_environment.py.html>`__ to see an example of how to use update_deploy_environment API.
        r   r   r{  update_deploy_environmentz_https://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployEnvironment/UpdateDeployEnvironmentr   c                    r/   r$   r$   r0   r3   r$   r%   r4   %  r5   z:DevopsClient.update_deploy_environment.<locals>.<listcomp>z2update_deploy_environment got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   %  r=   z:DevopsClient.update_deploy_environment.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   %  rH   r   rI   r   r   rK   r   )r!   r   Z!update_deploy_environment_detailsr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r  %  r  z&DevopsClient.update_deploy_environmentc                    r~  )a  
        Updates the deployment pipeline.


        :param str deploy_pipeline_id: (required)
            Unique pipeline identifier.

        :param oci.devops.models.UpdateDeployPipelineDetails update_deploy_pipeline_details: (required)
            The information to be updated.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DeployPipeline`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/update_deploy_pipeline.py.html>`__ to see an example of how to use update_deploy_pipeline API.
        r   r   r{  update_deploy_pipelinezYhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployPipeline/UpdateDeployPipeliner   c                    r/   r$   r$   r0   r3   r$   r%   r4   2&  r5   z7DevopsClient.update_deploy_pipeline.<locals>.<listcomp>z/update_deploy_pipeline got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   ;&  r=   z7DevopsClient.update_deploy_pipeline.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   G&  rH   r   rI   r   r   rK   r   )r!   r   Zupdate_deploy_pipeline_detailsr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r  &  r  z#DevopsClient.update_deploy_pipelinec                    r~  )am  
        Updates the deployment stage.


        :param str deploy_stage_id: (required)
            Unique stage identifier.

        :param oci.devops.models.UpdateDeployStageDetails update_deploy_stage_details: (required)
            The information to be updated.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.DeployStage`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/update_deploy_stage.py.html>`__ to see an example of how to use update_deploy_stage API.
        r   r   r{  update_deploy_stagezShttps://docs.oracle.com/iaas/api/#/en/devops/20210630/DeployStage/UpdateDeployStager   c                    r/   r$   r$   r0   r3   r$   r%   r4   &  r5   z4DevopsClient.update_deploy_stage.<locals>.<listcomp>z,update_deploy_stage got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   &  r=   z4DevopsClient.update_deploy_stage.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   &  rH   r   rI   r   r   rK   r   )r!   r   Zupdate_deploy_stage_detailsr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r  m&  r  z DevopsClient.update_deploy_stagec                    r~  )ab  
        Updates the deployment.


        :param str deployment_id: (required)
            Unique deployment identifier.

        :param oci.devops.models.UpdateDeploymentDetails update_deployment_details: (required)
            The information to be updated.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.Deployment`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/update_deployment.py.html>`__ to see an example of how to use update_deployment API.
        r(   r   r{  update_deploymentzQhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Deployment/UpdateDeploymentr   c                    r/   r$   r$   r0   r3   r$   r%   r4   
'  r5   z2DevopsClient.update_deployment.<locals>.<listcomp>z*update_deployment got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   '  r=   z2DevopsClient.update_deployment.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   '  rH   r   rI   rJ   r   rK   r   )r!   rf   Zupdate_deployment_detailsr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r  &  r  zDevopsClient.update_deploymentc                    r~  )aJ  
        Updates the project.


        :param str project_id: (required)
            Unique project identifier.

        :param oci.devops.models.UpdateProjectDetails update_project_details: (required)
            The information to be updated.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.Project`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/update_project.py.html>`__ to see an example of how to use update_project API.
        ro   r   r{  update_projectzKhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Project/UpdateProjectr   c                    r/   r$   r$   r0   r3   r$   r%   r4   v'  r5   z/DevopsClient.update_project.<locals>.<listcomp>z'update_project got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   '  r=   z/DevopsClient.update_project.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   '  rH   r   rI   r   r   rK   r   )r!   rs   Zupdate_project_detailsr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r  E'  r  zDevopsClient.update_projectc                    r~  )ab  
        Updates the repository.


        :param str repository_id: (required)
            Unique repository identifier.

        :param oci.devops.models.UpdateRepositoryDetails update_repository_details: (required)
            The information to be updated.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.Repository`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/update_repository.py.html>`__ to see an example of how to use update_repository API.
        r   r   r{  update_repositoryzQhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Repository/UpdateRepositoryr   c                    r/   r$   r$   r0   r3   r$   r%   r4   '  r5   z2DevopsClient.update_repository.<locals>.<listcomp>z*update_repository got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   '  r=   z2DevopsClient.update_repository.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   '  rH   r   rI   r   r   rK   r   )r!   r   Zupdate_repository_detailsr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r  '  r  zDevopsClient.update_repositoryc                    r~  )aJ  
        Updates the trigger.


        :param str trigger_id: (required)
            Unique trigger identifier.

        :param oci.devops.models.UpdateTriggerDetails update_trigger_details: (required)
            The information to be updated.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.Trigger`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/update_trigger.py.html>`__ to see an example of how to use update_trigger API.
        r   r   r{  update_triggerzKhttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Trigger/UpdateTriggerr   c                    r/   r$   r$   r0   r3   r$   r%   r4   N(  r5   z/DevopsClient.update_trigger.<locals>.<listcomp>z'update_trigger got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   W(  r=   z/DevopsClient.update_trigger.<locals>.<dictcomp>Nr   r>   r?   r,   r-   r   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   c(  rH   r   rI   r  r   rK   r   )r!   r   Zupdate_trigger_detailsr#   rT   rL   rM   rR   rS   rg   rN   r:   r;   rO   r   r$   r3   r%   r  (  r  zDevopsClient.update_triggerc                    s  dg}d}d}d}d}g d  fddt |D }|r$td	|d|i}	d
d t |	D }	t |	D ]\}
}|du sMt|t jrTt| dkrTtd|
q7dd|	dt
|	dt
|	dt
d}dd t |D }| jj|	d| jd}|du rtj}|rt|tjs| j| | j| || j |j| jj|||	|d|	d|||d
S | jj|||	|d|	d|||d	S )a	  
        Return whether the credentials of the connection are valid.


        :param str connection_id: (required)
            Unique connection identifier.

        :param str opc_request_id: (optional)
            Unique Oracle-assigned identifier for the request.  If you need to contact Oracle about a particular request, provide the request ID.

        :param str if_match: (optional)
            For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.

        :param str opc_retry_token: (optional)
            A token that uniquely identifies a request so it can be retried in case of a timeout or server error without risk of executing that same action again. Retry tokens expire after 24 hours, but can be invalidated earlier due to conflicting operations. For example, if a resource has been deleted and purged from the system, then a retry of the original creation request might be rejected.

        :param obj retry_strategy: (optional)
            A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level.

            This should be one of the strategies available in the :py:mod:`~oci.retry` module. This operation uses :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` as default if no retry strategy is provided.
            The specifics of the default retry strategy are described `here <https://docs.oracle.com/en-us/iaas/tools/python/latest/sdk_behaviors/retries.html>`__.

            To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`.

        :param bool allow_control_chars: (optional)
            allow_control_chars is a boolean to indicate whether or not this request should allow control characters in the response object.
            By default, the response will not allow control characters in strings

        :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.devops.models.Connection`
        :rtype: :class:`~oci.response.Response`

        :example:
        Click `here <https://docs.cloud.oracle.com/en-us/iaas/tools/python-sdk-examples/latest/devops/validate_connection.py.html>`__ to see an example of how to use validate_connection API.
        r   z,/connections/{connectionId}/actions/validater)   validate_connectionzShttps://docs.oracle.com/iaas/api/#/en/devops/20210630/Connection/ValidateConnection)r   r   r-   r,   r.   c                    r/   r$   r$   r0   r3   r$   r%   r4   (  r5   z4DevopsClient.validate_connection.<locals>.<listcomp>z,validate_connection got unknown kwargs: {!r}c                 S   r6   r$   r7   r9   r$   r$   r%   r<   (  r=   z4DevopsClient.validate_connection.<locals>.<dictcomp>Nr   r>   r?   r-   r,   r.   )rA   rB   rD   rC   rE   c                 S   rF   rG   r7   r9   r$   r$   r%   r<   (  rH   r   rI   r   r   r   rU   r   r$   r3   r%   r  (  sv   $$


z DevopsClient.validate_connectionN)^__name__
__module____qualname____doc__r&   r*   rj   rm   rp   ru   rx   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r  r  r  r	  r  r  r  r  r  r  r  r   r*  rD  rH  rN  rO  rU  rW  rX  r[  r\  r]  r`  ra  rg  rh  rl  rm  ro  ru  rv  rz  r|  r}  r  r  r  r  r  r  r  r  r  r  r  r  r  r$   r$   r$   r%   r      s    Xrrrkp^^c^^^^^^^^^eeeeeeeeoeebbbfvbbbbbbyjrqbfz{wrzbb  " " '  0 " " " " 5  $  ' " "   !evkllllllllllllr   N)
__future__r   Zoci._vendorr   r   ocir   r   Zoci.base_clientr   Z
oci.configr   r	   Z
oci.signerr
   Zoci.utilr   r   r   Zmodelsr   r8   objectr   r$   r$   r$   r%   <module>   s   