Skip to content

apancutt/aws-eb-newrelic-deploynotify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 

Repository files navigation

AWS Elastic Beanstalk Deployment Notifications for New Relic

This script can be executed as part of the container commands directive supported by Elastic Beanstalk extensions to send a deployment notification to New Relic via the HTTP API service.

Installation

  1. Download the bash script from this project into your application.

     cd /path/to/your/app
     mkdir bin
     wget -P bin "https://raw.github.com/apancutt/aws-eb-newrelic-deploynotify/master/aws-eb-newrelic-deploynotify.sh"
     chmod +x bin/aws-eb-newrelic-deploynotify.sh
    
  2. Create an .ebextensions directory in your application root:

     mkdir .ebextensions
    
  3. Create a new file (or append to an existing one) for the container_commands configuration:

     echo "00_aws-eb-newrelic-deploynotify:" >> .ebextensions/03_container_commands.config
     echo "  command: \"bin/aws-eb-newrelic-deploynotify.sh -a <APP NAME> -k <API KEY>\"" >> .ebextensions/03_container_commands.config
     echo "  leader_only: true" >> .ebextensions/03_container_commands.config
    

    Note: If you already have a file for container commands, simply append the following lines:

     00_aws-eb-newrelic-deploynotify:
       command: "bin/aws-eb-newrelic-deploynotify.sh -a <APP NAME> -k <API KEY>"
       leader_only: true
    

    Don't forget to replace the arguments with the correct values.

  4. Deploy to Elastic Beanstalk and check New Relic for a deployment notification (Applications > Your App > Events > Deployments). If a notification doesn't appear, check your environment logs in Elastic Beanstalk for any errors.

Usage

The installation steps above describe the minimal effort required to get this script working, but you may wish to make use of these extra options.

  • -a The name your the application in Elastic Beanstalk.
  • -d The name of the deployer (default: AWS Elastic Beanstalk).
  • -e Error if the HTTP request fails. Note that this will abort the deployment.
  • -h Displays this help message.
  • -k Your New Relic API key.
  • -q Quiet mode.
  • -v Display version information.

Caveats

  • This script has only been tested with PHP applications. Please help improve this script by submitting pull requests for compatibility with alternative environments.
  • The detection of the current application version is based on an undocumented feature of Elastic Beanstalk's deployment process which is subject to change without notice. The accuracy of the current version is not guaranteed.

About

Send AWS Elastic Beanstalk deployment notifications to New Relic.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages