When this buildpack deploys on Heroku, the binary file corresponding to the currently configured stack (bin/nginx-cedar-14) is used. Rebuilding this binary can be done using the
scripts/build_nginx.sh script. The script must be executed on a server that resembles the heroku stack as closely as possible. The steps below were used to create the latest build.
If you are interested in creating a new build, you will need to modify the
.isofile you downloaded in step 3.
After you complete the install process, you will have a basic server. You will need to install the dependencies required for building nginx.
apt-get for most software installations. The following commands (and probably a few more that I forgot to document...sorry!) were required to successfully build nginx. These commands assume you are running as
$ apt-get install git $ apt-get install build-essential libpcre3 libpcre3-dev $ apt-get install openssl libssl-dev libssl0.9.8 ca-certificates $ apt-get install lua5.1 liblua5.1.0 liblua5.1.0-dev $ ln -s /usr/lib/x86_64-linux-gnu/liblua5.1.so /usr/lib/liblua.so $ apt-get install libgeoip-dev $ apt-get install make
$ cd ~ $ mkdir src $ cd src $ git clone https://github.com/Americastestkitchen/nginx-buildpack.git $ cd nginx-buildpack < make desired changes to scripts/build_nginx> $ scripts/build_nginx.sh
The above command will create a new binary file at
/tmp/nginx/sbin/nginx. Copy this file to your
bin directory in your
$ cp /tmp/nginx/sbin/nginx ~/src/nginx-buildpack/bin/nginx-cedar-14
NOTE If you are changing heroku stacks, you will need to name the file based on the name of the heroku stack.
masteror your current working branch
Make absolutely sure your new build works.
kraken sits in front of everything. So, if you screw it up, the whole site will be affected.
After the dust has settled and you are confident nginx is stable, you can merge your working branch to master. Then, change
atk-kraken-production buildpack back to
https://github.com/Americastestkitchen/nginx-buildpack.git. The change will go into effect the next time you deploy
Copy the snippet above into CLI.