[ aws . proton ]

create-service

Description

Create an Proton service. An Proton service is an instantiation of a service template and often includes several service instances and pipeline. For more information, see Services in the Proton Administrator Guide and Services in the Proton User Guide .

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.

Synopsis

  create-service
[--branch-name <value>]
[--description <value>]
--name <value>
[--repository-connection-arn <value>]
[--repository-id <value>]
--spec <value>
[--tags <value>]
--template-major-version <value>
[--template-minor-version <value>]
--template-name <value>
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]

Options

--branch-name (string)

The name of the code repository branch that holds the code that’s deployed in Proton. Don’t include this parameter if your service template doesn’t include a service pipeline.

--description (string)

A description of the Proton service.

--name (string)

The service name.

--repository-connection-arn (string)

The Amazon Resource Name (ARN) of the repository connection. For more information, see Set up repository connection in the Proton Administrator Guide and Setting up with Proton in the Proton User Guide . Don’t include this parameter if your service template doesn’t include a service pipeline.

--repository-id (string)

The ID of the code repository. Don’t include this parameter if your service template doesn’t include a service pipeline.

--spec (string)

A link to a spec file that provides inputs as defined in the service template bundle schema file. The spec file is in YAML format. Don’t include pipeline inputs in the spec if your service template doesn’t include a service pipeline. For more information, see Create a service in the Proton Administrator Guide and Create a service in the Proton User Guide .

--tags (list)

Create tags for your service. For more information, see Proton resources and tagging in the Proton Administrator Guide or Proton User Guide .

(structure)

A description of a resource tag.

key -> (string)

The key of the resource tag.

value -> (string)

The value of the resource tag.

Shorthand Syntax:

key=string,value=string ...

JSON Syntax:

[
  {
    "key": "string",
    "value": "string"
  }
  ...
]

--template-major-version (string)

The major version of the service template that was used to create the service.

--template-minor-version (string)

The minor version of the service template that was used to create the service.

--template-name (string)

The name of the service template that’s used to create the service.

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

See ‘aws help’ for descriptions of global parameters.

Examples

To create a service

The following create-service example creates a service with a service pipeline.

aws proton create-service \
    --name "MySimpleService" \
    --template-name "fargate-service" \
    --template-major-version "1" \
    --branch-name "mainline" \
    --repository-connection-arn "arn:aws:codestar-connections:region-id:account-id:connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" \
    --repository-id "myorg/myapp" \
    --spec file://spec.yaml

Contents of spec.yaml:

proton: ServiceSpec

pipeline:
    my_sample_pipeline_required_input: "hello"
    my_sample_pipeline_optional_input: "bye"

instances:
    - name: "acme-network-dev"
        environment: "ENV_NAME"
        spec:
            my_sample_service_instance_required_input: "hi"
            my_sample_service_instance_optional_input: "ho"

Output:

{
    "service": {
        "arn": "arn:aws:proton:region-id:123456789012:service/MySimpleService",
        "createdAt": "2020-11-18T19:50:27.460000+00:00",
        "lastModifiedAt": "2020-11-18T19:50:27.460000+00:00",
        "name": "MySimpleService",
        "repositoryConnectionArn": "arn:aws:codestar-connections:region-id:123456789012connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "repositoryId": "myorg/myapp",
        "status": "CREATE_IN_PROGRESS",
        "templateName": "fargate-service"
    }
}

For more information, see Create a service in the The AWS Proton Administrator Guide and Create a service in the The AWS Proton User Guide.

Output

service -> (structure)

The service detail data that’s returned by Proton.

arn -> (string)

The Amazon Resource Name (ARN) of the service.

branchName -> (string)

The name of the code repository branch that holds the code that’s deployed in Proton.

createdAt -> (timestamp)

The time when the service was created.

description -> (string)

A description of a service.

lastModifiedAt -> (timestamp)

The time when the service was last modified.

name -> (string)

The name of the service.

pipeline -> (structure)

The service pipeline detail data.

arn -> (string)

The Amazon Resource Name (ARN) of the service pipeline.

createdAt -> (timestamp)

The time when the service pipeline was created.

deploymentStatus -> (string)

The deployment status of the service pipeline.

deploymentStatusMessage -> (string)

A service pipeline deployment status message.

lastDeploymentAttemptedAt -> (timestamp)

The time when a deployment of the service pipeline was last attempted.

lastDeploymentSucceededAt -> (timestamp)

The time when the service pipeline was last deployed successfully.

spec -> (string)

The service spec that was used to create the service pipeline.

templateMajorVersion -> (string)

The major version of the service template that was used to create the service pipeline.

templateMinorVersion -> (string)

The minor version of the service template that was used to create the service pipeline.

templateName -> (string)

The name of the service template that was used to create the service pipeline.

repositoryConnectionArn -> (string)

The Amazon Resource Name (ARN) of the repository connection. For more information, see Set up a repository connection in the Proton Administrator Guide and Setting up with Proton in the Proton User Guide .

repositoryId -> (string)

The ID of the source code repository.

spec -> (string)

The formatted specification that defines the service.

status -> (string)

The status of the service.

statusMessage -> (string)

A service status message.

templateName -> (string)

The name of the service template.