The EMR CLI has been available for a while now and through my own usage and others, we have a good idea of the final set of commands and subcommands that should be supported by the CLI.
Today, certain things are confusing:
- There are three main commands:
package, deploy, and run
emr package builds a local version of the assets, while emr run ... --build both packages and deploys the assets.
- Do we need both package and deploy? Or can we simply have
build and run.
Typically, I only use run ... --build, but in CI/CD pipelines both package and deploy can be useful. Package if you want to move the assets yourself and deploy if you want to have the CLI do the copy for you in 1 step.
It would be useful to be able to chain these commands as opposed to providing parameters. For example:
emr build deploy run --entrypoint file.py ... would perform all of build, deploy, and run in that order. That said there are some things that don't make sense, so should protect against scenarios like this.
- If you already built your assets, you wouldn't repeatedly use
deploy run.
- You wouldn't use
emr build run
The EMR CLI has been available for a while now and through my own usage and others, we have a good idea of the final set of commands and subcommands that should be supported by the CLI.
Today, certain things are confusing:
package,deploy, andrunemr packagebuilds a local version of the assets, whileemr run ... --buildboth packages and deploys the assets.buildandrun.Typically, I only use
run ... --build, but in CI/CD pipelines both package and deploy can be useful. Package if you want to move the assets yourself and deploy if you want to have the CLI do the copy for you in 1 step.It would be useful to be able to chain these commands as opposed to providing parameters. For example:
emr build deploy run --entrypoint file.py ...would perform all ofbuild,deploy, andrunin that order. That said there are some things that don't make sense, so should protect against scenarios like this.deploy run.emr build run