CodePipeline / Client / create_custom_action_type

create_custom_action_type#

CodePipeline.Client.create_custom_action_type(**kwargs)#

Creates a new custom action that can be used in all pipelines associated with the Amazon Web Services account. Only used for custom actions.

See also: AWS API Documentation

Request Syntax

response = client.create_custom_action_type(
    category='Source'|'Build'|'Deploy'|'Test'|'Invoke'|'Approval',
    provider='string',
    version='string',
    settings={
        'thirdPartyConfigurationUrl': 'string',
        'entityUrlTemplate': 'string',
        'executionUrlTemplate': 'string',
        'revisionUrlTemplate': 'string'
    },
    configurationProperties=[
        {
            'name': 'string',
            'required': True|False,
            'key': True|False,
            'secret': True|False,
            'queryable': True|False,
            'description': 'string',
            'type': 'String'|'Number'|'Boolean'
        },
    ],
    inputArtifactDetails={
        'minimumCount': 123,
        'maximumCount': 123
    },
    outputArtifactDetails={
        'minimumCount': 123,
        'maximumCount': 123
    },
    tags=[
        {
            'key': 'string',
            'value': 'string'
        },
    ]
)
Parameters:
  • category (string) –

    [REQUIRED]

    The category of the custom action, such as a build action or a test action.

  • provider (string) –

    [REQUIRED]

    The provider of the service used in the custom action, such as CodeDeploy.

  • version (string) –

    [REQUIRED]

    The version identifier of the custom action.

  • settings (dict) –

    URLs that provide users information about this custom action.

    • thirdPartyConfigurationUrl (string) –

      The URL of a sign-up page where users can sign up for an external service and perform initial configuration of the action provided by that service.

    • entityUrlTemplate (string) –

      The URL returned to the CodePipeline console that provides a deep link to the resources of the external system, such as the configuration page for a CodeDeploy deployment group. This link is provided as part of the action display in the pipeline.

    • executionUrlTemplate (string) –

      The URL returned to the CodePipeline console that contains a link to the top-level landing page for the external system, such as the console page for CodeDeploy. This link is shown on the pipeline view page in the CodePipeline console and provides a link to the execution entity of the external action.

    • revisionUrlTemplate (string) –

      The URL returned to the CodePipeline console that contains a link to the page where customers can update or change the configuration of the external action.

  • configurationProperties (list) –

    The configuration properties for the custom action.

    Note

    You can refer to a name in the configuration properties of the custom action within the URL templates by following the format of {Config:name}, as long as the configuration property is both required and not secret. For more information, see Create a Custom Action for a Pipeline.

    • (dict) –

      Represents information about an action configuration property.

      • name (string) – [REQUIRED]

        The name of the action configuration property.

      • required (boolean) – [REQUIRED]

        Whether the configuration property is a required value.

      • key (boolean) – [REQUIRED]

        Whether the configuration property is a key.

      • secret (boolean) – [REQUIRED]

        Whether the configuration property is secret. Secrets are hidden from all calls except for GetJobDetails, GetThirdPartyJobDetails, PollForJobs, and PollForThirdPartyJobs.

        When updating a pipeline, passing * * * * * without changing any other values of the action preserves the previous value of the secret.

      • queryable (boolean) –

        Indicates that the property is used with PollForJobs. When creating a custom action, an action can have up to one queryable property. If it has one, that property must be both required and not secret.

        If you create a pipeline with a custom action type, and that custom action contains a queryable property, the value for that configuration property is subject to other restrictions. The value must be less than or equal to twenty (20) characters. The value can contain only alphanumeric characters, underscores, and hyphens.

      • description (string) –

        The description of the action configuration property that is displayed to users.

      • type (string) –

        The type of the configuration property.

  • inputArtifactDetails (dict) –

    [REQUIRED]

    The details of the input artifact for the action, such as its commit ID.

    • minimumCount (integer) – [REQUIRED]

      The minimum number of artifacts allowed for the action type.

    • maximumCount (integer) – [REQUIRED]

      The maximum number of artifacts allowed for the action type.

  • outputArtifactDetails (dict) –

    [REQUIRED]

    The details of the output artifact of the action, such as its commit ID.

    • minimumCount (integer) – [REQUIRED]

      The minimum number of artifacts allowed for the action type.

    • maximumCount (integer) – [REQUIRED]

      The maximum number of artifacts allowed for the action type.

  • tags (list) –

    The tags for the custom action.

    • (dict) –

      A tag is a key-value pair that is used to manage the resource.

      • key (string) – [REQUIRED]

        The tag’s key.

      • value (string) – [REQUIRED]

        The tag’s value.

Return type:

dict

Returns:

Response Syntax

{
    'actionType': {
        'id': {
            'category': 'Source'|'Build'|'Deploy'|'Test'|'Invoke'|'Approval',
            'owner': 'AWS'|'ThirdParty'|'Custom',
            'provider': 'string',
            'version': 'string'
        },
        'settings': {
            'thirdPartyConfigurationUrl': 'string',
            'entityUrlTemplate': 'string',
            'executionUrlTemplate': 'string',
            'revisionUrlTemplate': 'string'
        },
        'actionConfigurationProperties': [
            {
                'name': 'string',
                'required': True|False,
                'key': True|False,
                'secret': True|False,
                'queryable': True|False,
                'description': 'string',
                'type': 'String'|'Number'|'Boolean'
            },
        ],
        'inputArtifactDetails': {
            'minimumCount': 123,
            'maximumCount': 123
        },
        'outputArtifactDetails': {
            'minimumCount': 123,
            'maximumCount': 123
        }
    },
    'tags': [
        {
            'key': 'string',
            'value': 'string'
        },
    ]
}

Response Structure

  • (dict) –

    Represents the output of a CreateCustomActionType operation.

    • actionType (dict) –

      Returns information about the details of an action type.

      • id (dict) –

        Represents information about an action type.

        • category (string) –

          A category defines what kind of action can be taken in the stage, and constrains the provider type for the action. Valid categories are limited to one of the following values.

          • Source

          • Build

          • Test

          • Deploy

          • Invoke

          • Approval

        • owner (string) –

          The creator of the action being called. There are three valid values for the Owner field in the action category section within your pipeline structure: AWS, ThirdParty, and Custom. For more information, see Valid Action Types and Providers in CodePipeline.

        • provider (string) –

          The provider of the service being called by the action. Valid providers are determined by the action category. For example, an action in the Deploy category type might have a provider of CodeDeploy, which would be specified as CodeDeploy. For more information, see Valid Action Types and Providers in CodePipeline.

        • version (string) –

          A string that describes the action version.

      • settings (dict) –

        The settings for the action type.

        • thirdPartyConfigurationUrl (string) –

          The URL of a sign-up page where users can sign up for an external service and perform initial configuration of the action provided by that service.

        • entityUrlTemplate (string) –

          The URL returned to the CodePipeline console that provides a deep link to the resources of the external system, such as the configuration page for a CodeDeploy deployment group. This link is provided as part of the action display in the pipeline.

        • executionUrlTemplate (string) –

          The URL returned to the CodePipeline console that contains a link to the top-level landing page for the external system, such as the console page for CodeDeploy. This link is shown on the pipeline view page in the CodePipeline console and provides a link to the execution entity of the external action.

        • revisionUrlTemplate (string) –

          The URL returned to the CodePipeline console that contains a link to the page where customers can update or change the configuration of the external action.

      • actionConfigurationProperties (list) –

        The configuration properties for the action type.

        • (dict) –

          Represents information about an action configuration property.

          • name (string) –

            The name of the action configuration property.

          • required (boolean) –

            Whether the configuration property is a required value.

          • key (boolean) –

            Whether the configuration property is a key.

          • secret (boolean) –

            Whether the configuration property is secret. Secrets are hidden from all calls except for GetJobDetails, GetThirdPartyJobDetails, PollForJobs, and PollForThirdPartyJobs.

            When updating a pipeline, passing * * * * * without changing any other values of the action preserves the previous value of the secret.

          • queryable (boolean) –

            Indicates that the property is used with PollForJobs. When creating a custom action, an action can have up to one queryable property. If it has one, that property must be both required and not secret.

            If you create a pipeline with a custom action type, and that custom action contains a queryable property, the value for that configuration property is subject to other restrictions. The value must be less than or equal to twenty (20) characters. The value can contain only alphanumeric characters, underscores, and hyphens.

          • description (string) –

            The description of the action configuration property that is displayed to users.

          • type (string) –

            The type of the configuration property.

      • inputArtifactDetails (dict) –

        The details of the input artifact for the action, such as its commit ID.

        • minimumCount (integer) –

          The minimum number of artifacts allowed for the action type.

        • maximumCount (integer) –

          The maximum number of artifacts allowed for the action type.

      • outputArtifactDetails (dict) –

        The details of the output artifact of the action, such as its commit ID.

        • minimumCount (integer) –

          The minimum number of artifacts allowed for the action type.

        • maximumCount (integer) –

          The maximum number of artifacts allowed for the action type.

    • tags (list) –

      Specifies the tags applied to the custom action.

      • (dict) –

        A tag is a key-value pair that is used to manage the resource.

        • key (string) –

          The tag’s key.

        • value (string) –

          The tag’s value.

Exceptions