Skip to content
This repository has been archived by the owner on Aug 10, 2020. It is now read-only.
Mriyam Tamuli edited this page Aug 5, 2017 · 13 revisions

The Process

WARNING: Before starting go through the links on the reference page.

NOTE: This guide is for building the current version of nginx i.e. 1.10.3. You might need to change the commands according to the the current version of the build.

  1. Start the container.
mkdir ~/nginx-build
cd ~/nginx-build
docker run --name=nginx-build -dit -v $PWD:/root/data rtcamp/nginx-build bash
  1. Copy the GPG keys(both public and private) to ~/nginx-build and if you don't have one, you can check here, how to create one.

  2. Enter the container.

docker exec -it nginx-build bash
  1. Import the your GPG keys.
cd /root/data/
gpg --import public.key
gpg --import --allow-secret-key-import private.key
  1. Clone the repo.
git clone https://github.com/EasyEngine/nginx-build
cd nginx-build
  1. Set your name as the Package Maintainer.
export DEBFULLNAME="rtCamp"
  1. Run the script with the latest stable release and your email id.
bash ppa.sh nginx 1.10.3 [email protected]
  1. At the end of the script’s run, you will find the CHANGELOG open in vim.

    nginx (1.10.3-2ppa~stable) stable; urgency=high
    
    * Update version to 1.10.3
    
    -- rtCamp <[email protected]>  Sat, 04 Feb 2017 03:05:53 +0530
    

    This revision number of the build in bold has to be changed to build it successfully.
    (1.10.3-2ppa~stable)
    This will download the latest Nginx source, the modules from their respective Github links, modify the changelog and create the whole directory structure at ~/PPA/nginx

  2. Go to the nginx directory (check the latest version)

cd ~/PPA/nginx/nginx-1.10.3
  1. Start the packaging with the GPG keys that you have exported. If in doubt about GPGKEY, you can check this page.
debuild -S -sa -k$(echo $GPGKEY)

You will be asked for a password. Get the password for the GPG key.

  1. Checkout the repository. If you don't have a repository, go to Opensuse Build Service, and create one
cd ~
osc co home:rtCamp:EasyEngine

Warning: The repository name is case sensitive.

  1. Remove the current files from the nginx repo.
cd home:rtCamp:EasyEngine/nginx
osc rm *
  1. The files that need to be uploaded will be generated in the ~/PPA/nginx directory. Only the files you already see here will be necessary.
    Copy the files from ~/PPA/nginx to ~/home:rtCamp:EasyEngine.
rsync -avzP --exclude="modules" --exclude="nginx-1.10.3" ~/PPA/nginx ~/home:mbtamuli:EasyEngine/nginx/
  1. Add the new files to the repo.
osc add *
  1. Commit and push the changes.
osc ci -m “Revision message describing any changes”
  1. Pat yourself on the back for a job well done. :)
Clone this wiki locally