Continuous Integration of roxie query / data deployments using Jenkins

The project was completed by Jayashree Ukkinagatti, a MTech student studying at the R.V. College of Engineering in India. Jayashree joined the HPCC Systems Intern Program in 2018. Her project automates the software development process for ECL Developers by integrating ECL queries stored in GIT, using the Jenkins deployment pipeline techniques.

Find out about the HPCC Systems Summer Internship Program.

Project Description

Jenkins is a continuous integration and continuous delivery open source application that automates the process of building, testing and deploying software. The purpose of this project will be to investigate how we can integrate support for the ECL language, query and data deployments into Jenkins. Additions or changes to ECL queries stored in GIT should be automatically detected, compiled and deployed to a roxie.  Tests can be run to make sure the query is functioning as expected. New or changed data file detection and deployment could be also be supported.

Completion of this project involves:

Provide details about the following:

  • Checked in code

  • Documentation

  • Test code

  • Regression tests

Expected feature list

By the mid term evaluation, we would expected you to have completed the following:

Support for detecting changes to an ECL query in Git and deploying that query to roxie.

Please add details below including the JIRA ticket details:

Mentor

Anthony Fishbeck
Contact details

Backup Mentor: Rodrigo Pastrana
Contact Details

Co-Mentors: Xiaoming Wang and Chris Lo  

Skills needed
  • Ability to code in Java.

  • Some Familiarity with Jenkins.

  • Ability to build and test the HPCC system (guidance will be provided).

  • Ability to write test code.

Deliverables
  • Checked in code

  • Test cases demonstrating the correct behaviour and performance

  • Documentation

Other resources

All pages in this wiki are subject to our site usage guidelines.