===== Managing packages in lab-extras ===== 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 ===== How-To ===== - Obtain the RPM from a trusted source - e.g., ''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/'' ===== Installing the package ===== 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''.