Pre-Deploy Script on ElasticBeanstalk

Viewed 2211

I'm deploying a rails application to AWS. One of the gem's had a dependency and needs certain files installed on the server before bundle install is run during deployment. In my .ebextensions file I have the following

01-oracle_sdk:
    sources:
      /usr/lib: https://s3-us-west-2.amazonaws.com/xyz/instantclient-sdk-linux.x64-12.2.0.1.0.zip
  02-oracle-basic:
    sources:
      /usr/lib: https://s3-us-west-2.amazonaws.com/xyz/instantclient-basic-linux.x64-12.2.0.1.0.zip
  03-oracle_sql_plus:
    sources:
      /usr/lib: https://s3-us-west-2.amazonaws.com/xyz/instantclient-sqlplus-linux.x64-12.2.0.1.0.zip
  04-container_commands:
    00_oracle_dir:
      command: "export LD_LIBRARY_PATH=/usr/lib/instantclient_12_1"

From what I can tell, none of this is getting run pre-deploy. It fails when it tries to install the gem because that directory is not there. When I SSH into the instance, LD_LIBRARY_PATH is not set and none of the zipfiles were downloaded and unzipped by the source command.

1) Is my syntax in correct 2) How do I get these commands to execute PRE deploy/bundle install?

2 Answers
Related