Project

General

Profile

Milestone #12864

CI for Glideinwms

Added by Parag Mhashilkar over 3 years ago. Updated over 3 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Parag Mhashilkar
Category:
-
Target version:
Start date:
06/06/2016
Due date:
% Done:

0%

Estimated time:
Stakeholders:
Duration:

Description

Add support for Jenkins CI to:

  • Build release tarballs
  • Build rpms
  • Run Pylint
  • Perform Unittesting

Burt wrote initial unittests test_frontend.py and test_frontend_element.py in the git branch unittest. There are several other unittests in the unittests directory. Some of them are working while most others are not. We need to clean them and add more unittests.

Currently adding a placeholder version v3_2_15 to get most of the work done. Adding tests should be ongoing activity as part of the code commits once we have a working setup and this ticket resolved.

History

#1 Updated by Parag Mhashilkar over 3 years ago

  • Description updated (diff)

We have working scripts that build tarballs and rpms using the buildmaster.fnal.gov service. The changes were made in branch_v3_2_jenkins with the unittest branch merged into it

  • Unittests: https://buildmaster.fnal.gov/job/GlideinWMS-Unittests
    test_frontend.py and test_frontend_element.py updated to run through jenkins. Tests involving m2crypto fails because of m2crypto python library installation issue.
    test_logSupport.py contributed by Tony work.

We still need to create a workflow matrixed jenkins project to run periodically all the relevant tasks for different SL versions and for different branches.

Relevant tests and scripts are organized in build & unittests subdirectories. This way jenkins project itself is minimal.

#2 Updated by Parag Mhashilkar over 3 years ago

Code and Documentation

All the jenkins related work is done in the branch: branch_v3_2_jenkins and periodically merged to branch_v3_2 and master
Documentation is available at: https://cdcvs.fnal.gov/redmine/projects/glideinwms/wiki

Pylint & PEP8 Validation Tests

Jenkins Project: https://buildmaster.fnal.gov/job/GlideinWMS-Pylint

Nightly pylint validation tests are run at the batlabs for SL6 platform. We need to accomplish following:

  • Migrate the functionality to Jenkins hosted by SCD
  • Add validation tests for PEP8
  • Support multiple platforms SL6 & SL7
  • Enable daily tests for most recently updated git branches with some branches tested by default
  • Allow any GlideinWMS developer to initiate these tests on the branches of their choice

Status: As of July 12, 2016 above functionality has been fully implemented.

#3 Updated by Parag Mhashilkar over 3 years ago

Unittests

Jenkins Project: https://buildmaster.fnal.gov/job/GlideinWMS-Unittests

  • Setup Jenkins to run tests in the glideinwms/unittests directory
  • Support multiple platforms SL6 & SL7
  • Allow any GlideinWMS developer to initiate these tests on the branches of their choice
  • Enable daily tests for most recently updated git branches with some branches tested by default

Status: As of July 12, 2016 unittests can be triggered by a user for a specified branched on both SL6 & SL7. However the jenkins project is structured to run all the tests only for a single branch. Unittests are not run daily yet.

#4 Updated by Parag Mhashilkar over 3 years ago

Builds

Jenkins Project: https://buildmaster.fnal.gov/job/GlideinWMS-Builds

  • Setup Jenkins to build GlideinWMS release tarball and RPMs
  • Migrate release manager scripts to main git repo
  • Support multiple platforms SL6 & SL7
  • Allow any GlideinWMS developer to initiate these builds on the branches of their choice
  • Enable daily builds on SL6 & SL7 platforms for release branches

Status: As of July 12, 2016 release manager code has been migrated to the main git repo. More works need to be done to parameterize the builds and enable building on multiple platforms.
Status: As of July 13, 2016 Builds are parameterized and can be customized.

#5 Updated by Parag Mhashilkar over 3 years ago

  • Status changed from New to Resolved

Except for daily runs for Builds & Unittests, all the tasks have been achieved and changes merged to branch_v3_2 and master. If required we can easily setup crons anytime. Adding more unit tests will be an on going activity. Closing this ticket.

#6 Updated by Parag Mhashilkar over 3 years ago

  • Status changed from Resolved to Closed


Also available in: Atom PDF