aws-actions/Deploy to AWS Elastic Beanstalk

This action deploys to AWS Elastic Beanstalk with auto-creation and retries

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Stale
License
None
namedescriptionrequireddefault
aws-regionAWS Regionyes
application-nameElastic Beanstalk Application Nameyes
environment-nameElastic Beanstalk Environment Nameyes
version-labelVersion label for deployment (defaults to git SHA)no
deployment-package-pathPath to existing deployment package (auto-created if not specified)no
solution-stack-nameSolution stack name (e.g., "64bit Amazon Linux 2023 v4.3.0 running Python 3.11", "64bit Amazon Linux 2023 v6.3.1 running Node.js 20"). Cannot be used with platform-arn.no
platform-arnPlatform ARN for the environment (e.g., "arn:aws:elasticbeanstalk:us-east-1::platform/Python 3.11 running on 64bit Amazon Linux 2023/4.3.0"). Cannot be used with solution-stack-name.no
create-environment-if-not-existsCreate environment if it does not existnotrue
create-application-if-not-existsCreate application if it does not existnotrue
wait-for-deploymentWait for deployment to completenotrue
wait-for-environment-recoveryWait for environment health to recover after deploymentnotrue
deployment-timeoutMaximum time to wait for each wait phase (seconds). If both wait-for-deployment and wait-for-environment-recovery are enabled, the total maximum wait is 2× this value.no900
max-retriesMaximum number of retries for failed operationsno2
retry-delayInitial delay between retries (seconds, uses exponential backoff)no5
use-existing-application-version-if-availableReuse existing application version if it already existsnotrue
create-s3-bucket-if-not-existsCreate S3 bucket if it does not existnotrue
s3-bucket-nameS3 bucket name for deployment packages (defaults to elasticbeanstalk-{region}-{accountId})no
cname-prefixCNAME prefix for the environment URL (e.g. my-app → my-app.elasticbeanstalk.com). Must be 4–63 alphanumeric characters or hyphens. If omitted, AWS auto-assigns one. Only used when creating a new environment.no
source-directoryDirectory to package for deployment (defaults to workspace root). Useful for mono-repos where only a subdirectory should be deployed.no
exclude-patternsComma-separated list of patterns to exclude from deployment package (e.g., "*.git*,*node_modules*,*.env*")no
option-settingsElastic Beanstalk option settings as JSON array. Required when creating a new environment - MUST include IAM settings: [{"Namespace":"aws:autoscaling:launchconfiguration","OptionName":"IamInstanceProfile","Value":"your-instance-profile"},{"Namespace":"aws:elasticbeanstalk:environment","OptionName":"ServiceRole","Value":"your-service-role"}]no
namedescription
environment-urlThe URL of the deployed environment
environment-idThe ID of the environment
environment-statusThe current status of the environment
environment-healthThe health status of the environment
deployment-action-typeWhether environment was created or updated
version-labelThe version label that was deployed