eb_deploy fails when passing in just the s3 bucket name
zaro0508 opened this issue · comments
eb_deploy fails to run when passing in the s3 bucket name as the parameter. eb_deploy setup a S3 bucket dummyebd.packages
for me with a zip file. When I deploy with -p dummyebd.packages
it fails with 'Unknown package file/format' error. However pass in '-p dummyebd.packages/4646cfbf9c26cd04e7a1698b978c1c42-dummyebd.zip' will work. The documentation and help seem to indicate that you only need to specify the bucket name which would make more sense than having to include the object if you need to setup on a CI system.
Here is the trace:
~/w/dummyebd ❯❯❯ eb_deploy -p dummyebd.packages -e dev
Found configuration at config/eb_deployer.yml.
/Users/zaro0508/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/eb_deployer-0.6.6/lib/eb_deployer/application.rb:29:in create_version': Unknown package file/format: "dummyebd.packages" (RuntimeError) from /Users/zaro0508/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/eb_deployer-0.6.6/lib/eb_deployer.rb:232:in
deploy'
from /Users/zaro0508/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/eb_deployer-0.6.6/lib/eb_deployer.rb:276:in cli' from /Users/zaro0508/.rbenv/versions/2.3.4/lib/ruby/gems/2.3.0/gems/eb_deployer-0.6.6/bin/eb_deploy:11:in
<top (required)>'
from /Users/zaro0508/.rbenv/versions/2.3.4/bin/eb_deploy:22:in load' from /Users/zaro0508/.rbenv/versions/2.3.4/bin/eb_deploy:22:in
I'm pretty sure this is working as designed. eb_deploy --help
defines the format once at the end of the-p
explanation, including an example, and then again at the end of the doc.
Usage: eb_deployer [options]
-p, --package [FILE/S3_OBJECT] Package to deploy, can be a war file for java application, or yaml
specification for package location on S3, or a S3 object & bucket name separated by colon, e.g.
bucket_name:key_name
-e, --environment [ENV_NAME] (Defaults to 'dev') Environment on which to operate (e.g. dev,
staging, production). This must be defined in 'environments' section of the config file
-c, --config-file [FILE] eb_deployer config file. Default location is config/eb_deployer.yml
-d, --destroy Destroy all Elasticbeanstalk environments under the application which have
specified environment as name prefix
-s, --stack-name [STACK_NAME] CloudFormation stack name to use. If not specified, defaults to {app}-{env_name}
--skip-resource-stack-update Skip cloud-formation stack update. (only for extreme situation like
hitting a cloudformation bug)
--component [COMPONENT] Specify which component to deploy
-v, --version Print current version
--debug Output AWS debug log
-h, --help help
S3 object package format: s3_bucket_name:s3_object_key
YAML package file format:
s3_bucket: <bucket_name>
s3_key: <object_path>
*$```