Skip to content

Instantly share code, notes, and snippets.

@jj0hns0n
Last active December 31, 2015 20:58
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save jj0hns0n/8043396 to your computer and use it in GitHub Desktop.
Save jj0hns0n/8043396 to your computer and use it in GitHub Desktop.
GeoNode Jenkins Setup on ec2
ec2 m1.small using i-93c43aed
Elastic IP 54.197.230.116 assigned to instance ID i-93c43aed
build.geonode.org configured to use 54.197.230.116
old server is here 184.154.70.228 (all services other than ssh are disabled)
geonode-dev.pem key used
Ports 80 8000 8080 and 8088 opened in ec2 security group
# ssh into server
sudo updatedb
sudo apt-get update
sudo apt-get install build-essential
sudo apt-get install python-dev
sudo apt-get install python-lxml
sudo apt-get install libxml2-dev
sudo apt-get install libgdal1-dev
sudo apt-get install git
sudo apt-get install python-virtualenv
# Install Oracle JDK
sudo apt-get purge openjdk-\*
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java7-installer
# accept license in terminal
# update-alternatives (symlinks in /etc/alternatives)
sudo apt-get install maven
sudo apt-get install jenkins
# Jenkins ver. 1.424.6 installed
# jenkins is now on http://54.197.230.116:8080/
# Upgrade to 1.509.4
sudo /etc/init.d/jenkins stop
wget http://updates.jenkins-ci.org/download/war/1.509.4/jenkins.war
rm /usr/share/jenkins/jenkins.war
cp jenkins.war /usr/share/jenkins/jenkins.war
sudo /etc/init.d/jenkins start
# Jenkins is now running ver. 1.509.4
# Manage Jenkins -> Configure System
# Update Plugins
# Install GitHub oAuth plugin https://wiki.jenkins-ci.org/display/JENKINS/Github+OAuth+Plugin
# Manage Jenkins -> Configure Global Security
# Use GitHub oAuth Plugin for Access Control
# <screenshot>
# Install Git Plugins
# Credentials Plugin
# SSH Credentials Plugin
# Git Client Plugin
# SCM API Plugin
# Git Plugin
# Git Parameter Plugin
sudo /etc/init.d/jenkins restart
# Logged in as jj0hns0n
# <screenshot>
# Configure new job geonode-master https://github.com/GeoNode/geonode-build/issues/4
# Configure SCM <screenshot>
# Configure Build Triggers <screenshot>
# Configure Build Script
# Install nginx
sudo apt-get install nginx
sudo vi /etc/nginx/sites-available/default
root /var/www;
index index.html index.htm;
# Make site accessible from http://localhost/
server_name build.geonode.org;
sudo mkdir /var/www
sudo cat "geonode build server" >> /var/www/index.html
sudo mkdir /var/www/geoserver
sudo cat "geonode geoserver builds" >> /var/www/geoserver/index.html
sudo chown -R www-data:www-data /var/www
sudo chmod 777 /var/www #bad
sudo /etc/init.d/nginx restart
# visit http://build.geonode.org/
# visit http://build.geonode.org/geoserver/
# Kick off geoserver-geonode-dev job
# Check that http://build.geonode.org/geoserver/latest/geoserver.war is available.
# Kick off geoserver-master job
sudo sed -i.dist 's,universe$,universe multiverse,' /etc/apt/sources.list
sudo apt-get update
sudo apt-get install ec2-api-tools ec2-ami-tools
export EC2_PRIVATE_KEY="$(/bin/ls "$HOME"/.ec2/geonode-dev.pem | /usr/bin/head -1)"
export EC2_CERT="$(/bin/ls "$HOME"/.ec2/cert-*.pem | /usr/bin/head -1)"
export EC2_HOME="/usr/lib/ec2-api-tools"
export AWS_USER_ID="XXXX"
export AWS_ACCESS_KEY_ID='YYYY'
export AWS_SECRET_ACCESS_KEY='ZZZ'
export EC2_KEY_BASE='AAAA'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment