Merge "Add functest-healthcheck alpine to xci-verify-healthcheck-macro"
authorMorgan Richomme <morgan.richomme@orange.com>
Fri, 8 Sep 2017 08:34:05 +0000 (08:34 +0000)
committerGerrit Code Review <gerrit@opnfv.org>
Fri, 8 Sep 2017 08:34:05 +0000 (08:34 +0000)
1  2 
jjb/xci/xci-verify-jobs.yml
utils/fetch_os_creds.sh

@@@ -75,7 -75,7 +75,7 @@@
                  - patchset-created-event:
                      exclude-drafts: 'false'
                      exclude-trivial-rebase: 'false'
 -                    exclude-no-code-change: 'false'
 +                    exclude-no-code-change: 'true'
                  - draft-published-event
                  - comment-added-contains-event:
                      comment-contains-value: 'recheck'
                  branches:
                    - branch-compare-type: 'ANT'
                      branch-pattern: '**/{branch}'
 -                file-paths:
 -                  - compare-type: ANT
 -                    pattern: 'xci/**'
 -                disable-strict-forbidden-file-verification: 'true'
 +                disable-strict-forbidden-file-verification: 'false'
                  forbidden-file-paths:
                    - compare-type: ANT
                      pattern: 'bifrost/**'
                    - compare-type: ANT
 -                    pattern: 'openstack-ansible/**'
 +                    pattern: 'prototypes/**'
                    - compare-type: ANT
 -                    pattern: 'puppet-infracloud/**'
 +                    pattern: 'upstream/**'
                    - compare-type: ANT
 -                    pattern: 'README.rst'
 +                    pattern: '**/README.rst'
              readable-message: true
  
      parameters:
  - builder:
      name: 'xci-verify-healthcheck-macro'
      builders:
-         - shell: |
-             #!/bin/bash
-             echo "Hello World!"
+         - shell:
+             !include-raw: ../../utils/fetch_os_creds.sh
+         - shell:
+             !include-raw: ../functest/functest-alpine.sh
diff --combined utils/fetch_os_creds.sh
@@@ -95,7 -95,6 +95,7 @@@ f
  ssh_options="-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no"
  
  # Start fetching the files
 +info "Fetching rc file..."
  if [ "$installer_type" == "fuel" ]; then
      verify_connectivity $installer_ip
      if [ "${BRANCH}" == "master" ]; then
              "sudo salt --out txt 'ctl*' pillar.get _param:openstack_control_address | awk '{print \$2; exit}'" | \
              sed 's/ //g') &> /dev/null
  
 -        info "Fetching rc file from controller $controller_ip..."
 +        info "... from controller $controller_ip..."
          ssh ${ssh_options} ubuntu@${controller_ip} "sudo cat /root/keystonercv3" > $dest_path
 +
 +        if [[ $BUILD_TAG =~ "baremetal" ]]; then
 +            ssh ${ssh_options} ubuntu@${installer_ip} "cat /etc/ssl/certs/os_cacert" > $os_cacert
 +        fi
      else
          #ip_fuel="10.20.0.2"
          env=$(sshpass -p r00tme ssh 2>/dev/null ${ssh_options} root@${installer_ip} \
              error "The controller $controller_ip is not up. Please check that the POD is correctly deployed."
          fi
  
 -        info "Fetching rc file from controller $controller_ip..."
 +        info "... from controller $controller_ip..."
          sshpass -p r00tme ssh 2>/dev/null ${ssh_options} root@${installer_ip} \
              "scp ${ssh_options} ${controller_ip}:/root/openrc ." &> /dev/null
          sshpass -p r00tme scp 2>/dev/null ${ssh_options} root@${installer_ip}:~/openrc $dest_path &> /dev/null
      echo $auth_url >> $dest_path
  
  elif [ "$installer_type" == "apex" ]; then
 +    if ! ipcalc -c $installer_ip; then
 +      installer_ip=$(sudo virsh domifaddr undercloud | grep -Eo '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')
 +      if [ -z "$installer_ip" ] || ! $(ipcalc -c $installer_ip); then
 +        echo "Unable to find valid IP for Apex undercloud: ${installer_ip}"
 +        exit 1
 +      fi
 +    fi
      verify_connectivity $installer_ip
  
      # The credentials file is located in the Instack VM (192.0.2.1)
      # NOTE: This might change for bare metal deployments
 -    info "Fetching rc file from Instack VM $installer_ip..."
 +    info "... from Instack VM $installer_ip..."
      if [ -f /root/.ssh/id_rsa ]; then
          chmod 600 /root/.ssh/id_rsa
      fi
@@@ -170,7 -158,7 +170,7 @@@ elif [ "$installer_type" == "compass" ]
      if [ "${BRANCH}" == "master" ]; then
          sudo docker cp compass-tasks:/opt/openrc $dest_path &> /dev/null
          sudo chown $(whoami):$(whoami) $dest_path
 -        sudo docker cp compass-tasks:/opt/os_cacert $os_cacert &> /dev/null
 +        sudo docker cp compass-tasks:/opt/os_cacert $os_cacert
      else
          verify_connectivity $installer_ip
          controller_ip=$(sshpass -p'root' ssh 2>/dev/null $ssh_options root@${installer_ip} \
              error "The controller $controller_ip is not up. Please check that the POD is correctly deployed."
          fi
  
 -        info "Fetching rc file from controller $controller_ip..."
 +        info "... from controller $controller_ip..."
          sshpass -p root ssh 2>/dev/null $ssh_options root@${installer_ip} \
              "scp $ssh_options ${controller_ip}:/opt/admin-openrc.sh ." &> /dev/null
          sshpass -p root scp 2>/dev/null $ssh_options root@${installer_ip}:~/admin-openrc.sh $dest_path &> /dev/null
  elif [ "$installer_type" == "joid" ]; then
      # do nothing...for the moment
      # we can either do a scp from the jumphost or use the -v option to transmit the param to the docker file
 -    echo "Do nothing, creds will be provided through volume option at docker creation for joid"
 +    info "Do nothing, creds will be provided through volume option at docker creation for joid"
  
  elif [ "$installer_type" == "foreman" ]; then
      #ip_foreman="172.30.10.73"
@@@ -243,6 -231,10 +243,10 @@@ elif [ "$installer_type" == "daisy" ]; 
  
      sshpass -p r00tme scp 2>/dev/null $ssh_options root@${installer_ip}:/etc/kolla/admin-openrc.sh $dest_path &> /dev/null
  
+ elif ["$installer_type" == "osa"]; then
+     # Get RC file from control server
+     filename=$(ssh -o StrictHostKeyChecking=no root@${controller_ip} find /var/lib/lxc/controller00_nova_api_placement_container-* -name openrc)
+     scp root@${controller_ip}:${filename} ${destpath}
  else
      error "Installer $installer is not supported by this script"
  fi