Project

Profile

Help

Task #1397

Updated by dkliban@redhat.com over 8 years ago

Improve We currently build our packages every night. We produce packages from all of our branches. This task outlines the work that needs to be done to test the packages on nightly basis using pulp-smash. 

 Nightly jobs pipeline will consist of the following: 
  
   - Build packages using each -dev branch and master branch and publish to fedorapeople.org/pulp/pulp/testing/automation directory. 

   - For each version of Pulp built in previous step and all stable versions:  
       - Reserve a jenkins node running a vanilla image of EL6, EL7, Fedora 22, and Fedora 23. 
           - Update node to latest stable packages  
           - Install Pulp from fedorapeople.org nightly repositories 
           - Deploy pulp-smash on a node running Fedora 23 image 
           - Run pulp-smash against Pulp 
   
   - For each version of Pulp built in step 1: 
       - Reserve a jenkins node running a vanilla image of EL6, EL7, Fedora 22, Fedora 23. 
       - Enable the testing repositories and update all packages (or if known problem 
       - Install Pulp from fedorapeople.org nightly repositories 
       - Deploy pulp-smash on a node running Fedora 23 image 
       - Run pulp-smash aginst Pulp 


 Currently all of our Jenkins node types have a lot of dependencies already installed on them to facilitate testing with unit tests. To do the kind of integration testing described above we should add very plain Jenkins nodes to our infrastructure. We also already have Jenkins jobs that can deploy pulp-smash on a Fedora 23 22 node and run it against any hostname provided. The deliverables for this task include the following:  

  - Configure nodepool to provision Jenkins nodes that are running vanilla EL6, EL7, Fedora 22, and Fedora 23. 

 Create 1 Jenkins job for each of the following: 

  - Deploys Pulp 2.6 stable on EL6 and runs pulp-smash 
  - Deploys Pulp 2.6 stable on EL7 and runs pulp-smash 
  - Deploys Pulp 2.6 stable on Fedora 22 and runs pulp-smash 
  - Deploys Pulp 2.6 stable on Fedora 23 and runs pulp-smash 
  - Deploys Pulp 2.7 stable on EL6 and runs pulp-smash 
  - Deploys Pulp 2.7 stable on EL7 and runs pulp-smash 
  - Deploys Pulp 2.7 stable on Fedora 22 and runs pulp-smash 
  - Deploys Pulp 2.7 stable on Fedora 23 and runs pulp-smash 

  - Deploys Pulp 2.6 stable on EL6 - testing repos enabled - and runs pulp-smash 
  - Deploys Pulp 2.6 stable on EL7 - testing repos enabled - and runs pulp-smash 
  - Deploys Pulp 2.6 stable on Fedora 22 - testing repos enabled - and runs pulp-smash 
  - Deploys Pulp 2.6 stable on Fedora 23 - testing repos enabled - and runs pulp-smash 
  - Deploys Pulp 2.7 stable on EL6 - testing repos enabled - and runs pulp-smash 
  - Deploys Pulp 2.7 stable on EL7 - testing repos enabled - and runs pulp-smash 
  - Deploys Pulp 2.7 stable on Fedora 22 - testing repos enabled - and runs pulp-smash 
  - Deploys Pulp 2.7 stable on Fedora 23 - testing repos enabled - and runs pulp-smash 

  - Deploys Pulp 2.6 dev on EL6 and runs pulp-smash 
  - Deploys Pulp 2.6 dev on EL7 and runs pulp-smash 
  - Deploys Pulp 2.6 dev on Fedora 22 and runs pulp-smash 
  - Deploys Pulp 2.6 dev on Fedora 23 and runs pulp-smash 
  - Deploys Pulp 2.7 dev on EL6 and runs pulp-smash 
  - Deploys Pulp 2.7 dev on EL7 and runs pulp-smash 
  - Deploys Pulp 2.7 dev on Fedora 22 and runs pulp-smash 
  - Deploys Pulp 2.7 dev on Fedora 23 and runs pulp-smash 
  - Deploys Pulp 2.8 dev (master) on EL6 and runs pulp-smash 
  - Deploys Pulp 2.8 dev (master) on EL7 and runs pulp-smash 
  - Deploys Pulp 2.8 dev (master) on Fedora 22 and runs pulp-smash 
  - Deploys Pulp 2.8 dev (master) on Fedora 23 and runs pulp-smash 

 All the jenkins jobs should be defined using yaml files used by Jenkins Job Builder. Templates used by Jenkins Job Builder should be heavily leveraged to reduce amount of configuration that will require maintenance. 

Back