BACKGROUND
- Shared CI service forming the backbone of an automated, continuous delivery pipeline for Kuali software
- Highly focused on the removal of manual configuration, process, and steps in order to get Kuali applications, built, deployed, and running
STABILITY UPGRADES
- Long term, stable, service running on the LTS version of Jenkins (currently 1.532.3)
- Automated process in place to enable keeping it upgraded to the latest Jenkins LTS release
- Long term stable version of Ubuntu (currently 12.04)
- Automated process to upgrade a stock Ubuntu 12.04 baseline AMI into a fully configured and operational Jenkins instance
- Automated process to easily spin up Jenkins instances in any Amazon region (Virginia, Portland, Northern California)
- All plugins pinned to a specific version known to be compatible with the LTS version of Jenkins
PERFORMANCE UPGRADES
- Runs on Amazon c3.xlarge instances
- 350% more CPU (14 ECU's vs 4 ECU's)
- Double the number of CPU cores (4 instead of 2)
- SSD - All CI activity occurs on solid state drives
- two 40gb drives configured as a single 80gb RAID 0 partition
- roughly twice as fast as a single SSD
- 4x-5x faster than a standard EBS volume for typical CI jobs (build, unit test, etc)
FUNCTIONAL UPGRADES
- Unlimited nested views
- Group and Organize jobs into views using regular expressions
- Provides an easy way to avoid job "clutter" and keep things organized
- Dashboards and Pipelines
- Provide a cohesive overall view of CI related activities
- Code Health
- Job Status
- Authorization & Authentication
- Fully integrated with KIS and CAS
- KIS groups manage authorization, CAS handles authentication
- Wonderful thing about working with open source projects like Jenkins
- Out of the box CAS plugin needed a very small patch in order to complete the integration with Kuali's CAS implementation
- Able to patch the source and continue moving forward in a timely manner
COMPONENT UPGRADES
- Firefox
- Headless mode
- Can select between multiple versions 14, 22, 27
- Automation in place for safely adding new Firefox versions as they get released
- Maven
- 3.0.5
- 3.1.0
- 3.2.1
- Automation in place for safely adding new Maven versions as they get released
- Java
- JDK 6
- JDK 7
- JDK 8
- Automation in place for safely adding new java versions as they get released