summaryrefslogtreecommitdiff
path: root/contrib/cirrus/packer/rhel_setup.sh
blob: b776a0d97a164d198c05e9832393fa24ba8e686f (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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
#!/bin/bash

# This script is called by packer on the subject CentOS VM, to setup the podman
# build/test environment.  It's not intended to be used outside of this context.

set -e

# Load in library (copied by packer, before this script was run)
source /tmp/libpod/$SCRIPT_BASE/lib.sh

req_env_var "
SCRIPT_BASE $SCRIPT_BASE
CNI_COMMIT $CNI_COMMIT
CRIO_COMMIT $CRIO_COMMIT
RHSM_COMMAND $RHSM_COMMAND
"

install_ooe

export GOPATH="$(mktemp -d)"
export RHSMCMD="$(mktemp)"

exit_handler() {
    set +ex
    cd /
    sudo rm -rf "$RHSMCMD"
    sudo rm -rf "$GOPATH"
    sudo subscription-manager remove --all
    sudo subscription-manager unregister
    sudo subscription-manager clean
}
trap "exit_handler" EXIT

# Avoid logging sensitive details
echo "$RHSM_COMMAND" > "$RHSMCMD"
ooe.sh sudo bash "$RHSMCMD"
sudo rm -rf "$RHSMCMD"

ooe.sh sudo yum -y erase "rh-amazon-rhui-client*"
ooe.sh sudo subscription-manager repos "--disable=*"
ooe.sh sudo subscription-manager repos \
    --enable=rhel-7-server-rpms \
    --enable=rhel-7-server-optional-rpms \
    --enable=rhel-7-server-extras-rpms \
    --enable=rhel-server-rhscl-7-rpms

ooe.sh sudo yum -y update

# Frequently needed
ooe.sh sudo yum -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

# Required for google to manage ssh keys
sudo tee -a /etc/yum.repos.d/google-cloud-sdk.repo << EOM
[google-cloud-compute]
name=google-cloud-compute
baseurl=https://packages.cloud.google.com/yum/repos/google-cloud-compute-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg
       https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
EOM

ooe.sh sudo yum -y install \
          atomic-registries \
          btrfs-progs-devel \
          bzip2 \
          device-mapper-devel \
          findutils \
          glib2-devel \
          glibc-static \
          gnupg \
          golang \
          golang-github-cpuguy83-go-md2man \
          golang-github-cpuguy83-go-md2man \
          google-compute-engine \
          google-compute-engine-oslogin \
          gpgme-devel \
          iptables \
          libassuan-devel \
          libseccomp-devel \
          libselinux-devel \
          lsof \
          make \
          nmap-ncat \
          ostree-devel \
          python \
          python34-dateutil \
          python34-psutil \
          python34-pytoml \
          runc \
          skopeo-containers \
          unzip \
          which \
          xz

install_scl_git

install_cni_plugins

install_buildah

install_conmon

install_packer_copied_files

exit_handler  # release subscription!

rh_finalize

echo "SUCCESS!"