summaryrefslogtreecommitdiffstats
path: root/bin/reproducible_setup_mock.sh
blob: f5e9306a4dd6a537a8b01c7eb351a3a38d9cfecb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/bin/bash

# Copyright 2015 Holger Levsen <holger@layer-acht.org>
# released under the GPLv=2

#
# configure mock for a given release and architecture
#

DEBUG=false
. /srv/jenkins/bin/common-functions.sh
common_init "$@"

if [ -z "$1" ] || [ -z "$2" ] ; then
	echo "Need release and architecture as params."
	exit 1
fi
RELEASE=$1
ARCH=$2
# not used yet:
UNIQEEXT="mock_${JOB_NAME#reproducible_builder_${RELEASE}_$ARCH}}"

echo "$(date -u) - showing setup."
dpkg -l mock
id
echo "$(date -u) - cleaning yum."
rm ~/.rpmdb -rf
yum -v clean all
yum -v check
yum -v repolist all
echo "$(date -u) - starting to cleanly configure mock for $RELEASE on $ARCH."
echo "$(date -u) - mock --clean"
mock -r $RELEASE-$ARCH --resultdir=. -v --clean
echo "$(date -u) - mock --scrub=all"
mock -r $RELEASE-$ARCH --resultdir=. -v --scrub=all
tree /var/cache/mock/
echo "$(date -u) - mock --init"
mock -r $RELEASE-$ARCH --resultdir=. -v --init
echo "$(date -u) - mock configured for $RELEASE on $ARCH."
echo "$(date -u) - mock --install rpm-build"
mock -r $RELEASE-$ARCH --resultdir=. -v --install rpm-build yum
echo "$(date -u) - mock --update"
mock -r $RELEASE-$ARCH --resultdir=. -v --update
echo "$(date -u) - yum makecache"
#mock -r $RELEASE-$ARCH --resultdir=. -v --chroot yum makecache
#
# resulted in:
#Yum command has been deprecated, redirecting to '/usr/bin/dnf makecache'.
#See 'man dnf' and 'man yum2dnf' for more information.
#To transfer transaction metadata from yum to DNF, run:
mock -r $RELEASE-$ARCH --resultdir=. -v --chroot dnf install python-dnf-plugins-extras-migrate 
mock -r $RELEASE-$ARCH --resultdir=. -v --chroot dnf-2 migrate
mock -r $RELEASE-$ARCH --resultdir=. -v --chroot dnf makecache