Skip to main content

Simple CLI tool for ElasticBeanstalk with Docker

Project description

Elastic Beanstalk Intelligence, Simple CLI tool for ElasticBeanstalk with Docker.

  • Deploying apps more intuitively

    • Without git integration

    • Switch-able Dockerrun.aws.json

    • Switch-able docker-compose.yml

    • Switch-able .ebextensions/

Install

pip install ebi

Requires Python 3.10 or later

Usage

deploy

To deploy app, just type it on project root:

$ ebi deploy <app_name> <env_name>

This will

  1. Create zip file including Dockerrun.aws.json and .ebextensions or docker-compose.yml and .ebextensions

  2. Uploading zip to S3 as same directory as awsebcli.

  3. Deploying app (by calling eb deploy with uploaded –version)

options:

  • --version: version label for app. default is timestamp.

  • --prefix: version prefix for app. It is added to timestamp.

  • --description: description for this version.

  • --dockerrun: File path used as Dockerrun.aws.json.

  • --docker-compose: File path used as docker-compose.yml.

  • --ebext: Directory path used as .ebextensions/

  • --profile: Configured profile for AWS.

  • --region: region for AWS.

create

To create app, just type it on project root:

$ ebi create <app_name> <env_name> <cname_prefix>

This will

  1. Create zip file including Dockerrun.aws.json and .ebextensions or docker-compose.yml and .ebextensions

  2. Uploading zip to S3 as same directory as awsebcli.

  3. Creating app (by calling eb create with uploaded –version)

options:

  • --version: version label for app. default is timestamp.

  • --prefix: version prefix for app. It is added to timestamp.

  • --description: description for this version.

  • --dockerrun: File path used as Dockerrun.aws.json.

  • --docker-compose: File path used as docker-compose.yml.

  • --ebext: Directory path used as .ebextensions/

  • --profile: Configured profile for AWS.

  • --region: region for AWS.

  • --cfg: Configuration template to use.

bgdeploy

To Blue-Green deploye app, just type it on project root:

$ ebi bgdeploy <app_name> <blue_env_name> <green_env_name> <primary_env_cname>

This will

  1. Create zip file including Dockerrun.aws.json and .ebextensions or docker-compose.yml and .ebextensions

  2. Uploading zip to S3 as same directory as awsebcli.

  3. Deploy new version to secondary environment which doen’t have primary_env_cname (by calling eb deploy with uploaded –version)

  4. Apply primary cname for deployed (secondary) environment

+-------+              +------+
| green |              | blue |
+-------+              +------+
 pri.elastic...com      sec.elastic...com
                          ^
                          |
                      3. deploy!

options:

  • --noswap: Skip swapping to just deploy secondary environment.

  • --version: version label for app. default is timestamp.

  • --prefix: version prefix for app. It is added to timestamp.

  • --description: description for this version.

  • --dockerrun: File path used as Dockerrun.aws.json.

  • --docker-compose: File path used as docker-compose.yml.

  • --ebext: Directory path used as .ebextensions/

  • --profile: Configured profile for AWS.

  • --region: region for AWS.

  • --capacity: Increase the number of desired instances, the minimum size, and the maximum size of the standby environment to the same as the primary environment.

clonedeploy

To deploy app with cloning, just type it on project root:

$ ebi clonedeploy <app_name> <env_name> <cname_prefix>

This will

  1. Create clone of master environment for next version environment.

  2. Create zip file including Dockerrun.aws.json and .ebextensions or docker-compose.yml and .ebextensions

  3. Uploading zip to S3 as same directory as awsebcli.

  4. Deploy new version to next version (by calling eb deploy with uploaded –version)

  5. Apply master cname for deployed (next version) environment

+--------+              +----------+
| master |  =1.Clone=>  | next ver |
+--------+              +----------+
 master.elastic...com     master-<timestamp>.elastic...com
                          ^
                          |
                      4. deploy!
  • --noswap: Skip swapping to just deploy secondary environment.

  • --version: version label for app. default is timestamp.

  • --prefix: version prefix for app. It is added to timestamp.

  • --description: description for this version.

  • --dockerrun: File path used as Dockerrun.aws.json.

  • --docker-compose: File path used as docker-compose.yml.

  • --ebext: Directory path used as .ebextensions/

  • --profile: Configured profile for AWS.

  • --region: region for AWS.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ebi-1.0b1.tar.gz (9.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ebi-1.0b1-py3-none-any.whl (11.5 kB view details)

Uploaded Python 3

File details

Details for the file ebi-1.0b1.tar.gz.

File metadata

  • Download URL: ebi-1.0b1.tar.gz
  • Upload date:
  • Size: 9.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for ebi-1.0b1.tar.gz
Algorithm Hash digest
SHA256 a781de486b9e42377ebb1f8903895e77ffc6f3dc4c9fe85c0092610151a0529d
MD5 d87c69d6fab43771e3a204db20ac1718
BLAKE2b-256 b66e8cfa757feefee7964c5d368f4087111352638852c2b709565a48610e4ff3

See more details on using hashes here.

Provenance

The following attestation bundles were made for ebi-1.0b1.tar.gz:

Publisher: publish.yml on hirokiky/ebi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ebi-1.0b1-py3-none-any.whl.

File metadata

  • Download URL: ebi-1.0b1-py3-none-any.whl
  • Upload date:
  • Size: 11.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for ebi-1.0b1-py3-none-any.whl
Algorithm Hash digest
SHA256 9df139e0ac6352a1b7a5863a4315520985f776126c13922306fdc2d053c80d80
MD5 a125be4c35aa4d887328ac188630f83d
BLAKE2b-256 1fa01ef7f392fb2f43b5c0a75b8cc3efa80723df7a5c0816b2cac6ded861d42c

See more details on using hashes here.

Provenance

The following attestation bundles were made for ebi-1.0b1-py3-none-any.whl:

Publisher: publish.yml on hirokiky/ebi

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page