48 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			48 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/sh -eux
 | |
| 
 | |
| SRPM="$1"
 | |
| 
 | |
| if ! rpm -q beakerlib; then
 | |
|     if [ $(. /etc/os-release && echo $ID) = "rhel" ]; then
 | |
|         (cd /etc/yum.repos.d; curl -O -L http://download.devel.redhat.com/beakerrepos/beaker-client-RedHatEnterpriseLinux.repo)
 | |
|         # disable sslverify b/c yum will fail to sync metadata otherwise
 | |
|         sed -i "s/\(gpgcheck=0\)/\1\nsslverify=0/" /etc/yum.repos.d/beaker-client-RedHatEnterpriseLinux.repo
 | |
|         # do not remove the repo file. We now have tests which use beakerlib
 | |
|         # inside their blueprints so this needs to stay on the VM
 | |
|     fi
 | |
| 
 | |
|     yum install -y beakerlib
 | |
| fi
 | |
| 
 | |
| if ! rpm -q git; then
 | |
|     yum install -y git
 | |
| fi
 | |
| 
 | |
| if ! rpm -q qemu-kvm; then
 | |
|     yum install -y qemu-kvm
 | |
| fi
 | |
| 
 | |
| # Grow root partition to make room for images. This only works on Fedora right now.
 | |
| parted --script /dev/vda resizepart 2 100%
 | |
| partprobe
 | |
| pvs --noheadings -opv_name | xargs pvresize
 | |
| rootlv=$(findmnt --noheadings -oSOURCE /)
 | |
| lvresize $rootlv -l+100%FREE -r
 | |
| 
 | |
| rm -rf build-results
 | |
| su builder -c "/usr/bin/mock --no-clean --resultdir build-results --rebuild $SRPM"
 | |
| 
 | |
| packages=$(find build-results -name '*.rpm' -not -name '*.src.rpm')
 | |
| rpm -e --verbose $(basename -a ${packages[@]} | sed 's/-[0-9].*.rpm$//') || true
 | |
| yum install -y $packages
 | |
| 
 | |
| systemctl enable lorax-composer.socket
 | |
| 
 | |
| if [ -f /usr/bin/docker ]; then
 | |
|     yum remove -y $(rpm -qf /usr/bin/docker)
 | |
| fi
 | |
| 
 | |
| if ! rpm -q podman-docker; then
 | |
|     yum install -y podman-docker
 | |
| fi
 |