lab-extras is a repo of miscellaneous packages we want testnodes to have access to.
http://apt-mirror.front.sepia.ceph.com/lab-extras/
An example of a time we'd want to use this is when a package from CentOS 7.3 has a bugfix we want to test on CentOS 7.2. The RPM can be downloaded from the CentOS 7.2 CM (testing) repo, placed in the CentOS 7 lab-extras repo and installed. Example: http://tracker.ceph.com/issues/18094
yum install $package --downloadonly --downloaddir=/root
rsync -azvP --rsync-path='sudo rsync' package.rpm gitbuilder.ceph.com:/home/apt-mirror/mirror/lab-extras/centos7/x86_64/
ssh gitbuilder.ceph.com
createrepo --update /home/apt-mirror/mirror/lab-extras/centos7/
Since ceph-cm-ansible makes sure the lab-extras repo is present on all testnodes, a quick way to update a single package on all testnodes would be to run an ansible playbook. Here's an example from when nfs-utils was done.
## ansible-playbook thisplaybook.yml --limit="smithi*,mira*" - hosts: - testnodes become: true tasks: - name: Upgrade nfs-utils to lab-extras version yum: name: nfs-utils state: latest when: ansible_distribution == 'CentOS'
This updated the version to nfs-utils-1.3.0-0.35.el7.x86_64. You can make sure no hosts got left behind by running ansible -a “rpm -qa nfs-utils” mira | grep -B 1 nfs-utils-1.3.0-0.33.el7.x86_64
.