Ionroller API 1.0.1

Software Delivery System for Docker Images

  • Contact: N/A
  • License: N/A

Resources

service

Operations

Method and Path Description
GET /services

Lists all services

GET /services/:serviceName

Returns service state (current and desired)

PUT /services/:serviceName/config

Creates or updates service configuration

GET /services/:serviceName/configs

Returns service configuration (all versions over time)

GET /services/:serviceName/config

Returns latest service configuration

GET /services/:serviceName/configs/:timestamp

Returns service configuration for specified timestamp

DELETE /services/:serviceName/config

Removes service configuration (all versions) if no version is currently deployed

POST /services/:serviceName/release

Requests a new release

POST /services/:serviceName/drop

Drops a release

Headers

Name Type Required? Default Description
User string Yes -

Identity of the user who starts a new release, drops env or updates config.

Imports

No imports

Enums

No enums

Interfaces

No interfaces

Models

eb_config

Example Json: Minimal | Full

Interfaces: None

Elastic Beanstalk configuration including deployment bucket, stack name and option settings

Field Type Required? Default Description
deployment_bucket string Yes -

Deployment bucket used to deploy Elastic Beanstalk applications

stack string No -

Solution stack name (i.e. 64bit Amazon Linux 2015.03 v2.0.0 running Docker 1.6.2)

settings [option_setting] No -

Elastic Beanstalk configuration option settings, see http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/command-options.html

resources object No -

Elastic Beanstalk environment resources, see http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-resources.html

packages object No -

Elastic Beanstalk container customization, see http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers-ec2.html

sources object No -

Elastic Beanstalk container customization, see http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers-ec2.html

files object No -

Elastic Beanstalk container customization, see http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers-ec2.html

users object No -

Elastic Beanstalk container customization, see http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers-ec2.html

groups object No -

Elastic Beanstalk container customization, see http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers-ec2.html

commands object No -

Elastic Beanstalk container customization, see http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers-ec2.html

container_commands object No -

Elastic Beanstalk container customization, see http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers-ec2.html

services object No -

Elastic Beanstalk container customization, see http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers-ec2.html

elb_settings

Example Json: Minimal | Full

Interfaces: None

Settings for external ELB

Field Type Required? Default Description
name string Yes -

Name of ELB

security_group string Yes -

Security group for ELB instances

rollout_delay_minutes integer Yes -

Delay in minutes between rollout increments

environment

Example Json: Minimal | Full

Interfaces: None

Elastic Beanstalk Environment running in AWS

Field Type Required? Default Description
release release Yes -

Details of the release present in the environment

health string Yes -

Health of environment

option_setting

Example Json: Minimal | Full

Interfaces: None

Elastic Beanstalk configuration option setting

Field Type Required? Default Description
Namespace string Yes -

OptionName string Yes -

Value string Yes -

port_mapping

Example Json: Minimal | Full

Interfaces: None

Mapping from port in Docker container to external host port

Field Type Required? Default Description
internal integer Yes -

Port to be forwarded from Docker container

external integer Yes -

Port to be mapped to on external hosts

release

Example Json: Minimal | Full

Interfaces: None

A release of a particular tag of a Docker image

Field Type Required? Default Description
image string Yes -

The Docker repository and name of images to be released

tag string Yes -

The tag for the image to be released

config date-time-iso8601 Yes -

Configuration timestamp

rollout_status rollout_status No -

Current rollout status

rollout_status

Example Json: Minimal | Full

Interfaces: None

Current rollout status for release

Field Type Required? Default Description
num_instances integer No -

Number of instances in external load balancer

completed_at date-time-iso8601 No -

Time at which latest increment completed

service

Example Json: Minimal | Full

Interfaces: None

Field Type Required? Default Description
name string Yes -

state service_state Yes -

service_config

Example Json: Minimal | Full

Interfaces: None

Configuration used by a service

Field Type Required? Default Description
url string Yes -

URL of endpoint pointing at service

hosted_zone_id string Yes -

Hosted Zone ID for DNS entry

aws_account_id string Yes -

ID of AWS account where this service is deployed

external_elb elb_settings No -

Details for external ELB

service_role string Yes -

Role used to run this service; specifies policy for accessing S3, RDS, DynamoDb etc.

image string Yes -

Docker image details used in deployments

port_mappings [port_mapping] Yes -

List of port mappings configured for use by Docker image

volume_mappings [volume_mapping] No -

List of volume mappings configured for use by Docker image

run_args [string] Yes -

Arguments passed to running Docker image

eb eb_config Yes -

Elastic Beanstalk configuration including deployment bucket, stack name and option settings like env variables, vpc, security groups etc.

remove_unused_after_minutes long No -

When an environment becomes unused, remove it after the specified number of minutes

timestamp date-time-iso8601 No -

When this configuration has been created

service_current_state

Example Json: Minimal | Full

Interfaces: None

Current state of service environments

Field Type Required? Default Description
environments [environment] Yes -

List of environments and their current status

service_desired_state

Example Json: Minimal | Full

Interfaces: None

Desired future state of service

Field Type Required? Default Description
current release No -

Current release of software

next release No -

Next release of software

future release No -

Future release of software

service_state

Example Json: Minimal | Full

Interfaces: None

State of service environments

Field Type Required? Default Description
current service_current_state Yes -

List of environments and their current status

desired service_desired_state No -

List of environments and their desired status

volume_mapping

Example Json: Minimal | Full

Interfaces: None

Mapping from path inside Docker container to external volume

Field Type Required? Default Description
internal string Yes -

Location on image's filesystem that Docker volume is mapped to

external string Yes -

Identifier or path for location to be mapped into Docker environment

Unions

No unions

Annotations

No annotations