vagrant-openshift 3.0.8 → 3.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.travis.yml +6 -1
- data/Gemfile +5 -1
- data/README.asciidoc +65 -78
- data/hack/test.sh +135 -0
- data/hack/update.sh +32 -0
- data/lib/vagrant-openshift.rb +1 -0
- data/lib/vagrant-openshift/action.rb +83 -12
- data/lib/vagrant-openshift/action/build_origin_images.rb +2 -2
- data/lib/vagrant-openshift/action/create_yum_repositories.rb +1 -1
- data/lib/vagrant-openshift/action/download_artifacts_origin_console.rb +2 -2
- data/lib/vagrant-openshift/action/download_artifacts_origin_metrics.rb +67 -0
- data/lib/vagrant-openshift/action/install_docker.rb +54 -0
- data/lib/vagrant-openshift/action/install_golang.rb +52 -0
- data/lib/vagrant-openshift/action/install_origin_asset_dependencies.rb +6 -3
- data/lib/vagrant-openshift/action/install_origin_base_dependencies.rb +22 -237
- data/lib/vagrant-openshift/action/install_origin_rhel7.rb +29 -6
- data/lib/vagrant-openshift/action/push_openshift_images.rb +26 -37
- data/lib/vagrant-openshift/action/run_customer_diagnostics_tests.rb +79 -0
- data/lib/vagrant-openshift/action/run_origin_asset_tests.rb +1 -3
- data/lib/vagrant-openshift/action/run_origin_metrics_tests.rb +83 -0
- data/lib/vagrant-openshift/action/run_origin_tests.rb +9 -4
- data/lib/vagrant-openshift/command/checkout_repositories.rb +1 -3
- data/lib/vagrant-openshift/command/create_local_yum_repo.rb +2 -2
- data/lib/vagrant-openshift/command/download_artifacts_origin_metrics.rb +49 -0
- data/lib/vagrant-openshift/command/install_docker.rb +68 -0
- data/lib/vagrant-openshift/command/install_golang.rb +68 -0
- data/lib/vagrant-openshift/command/repo_sync_customer_diagnostics.rb +71 -0
- data/lib/vagrant-openshift/command/repo_sync_origin_metrics.rb +71 -0
- data/lib/vagrant-openshift/command/test_customer_diagnostics.rb +69 -0
- data/lib/vagrant-openshift/command/test_origin_image.rb +1 -1
- data/lib/vagrant-openshift/command/test_origin_metrics.rb +67 -0
- data/lib/vagrant-openshift/constants.rb +8 -2
- data/lib/vagrant-openshift/helper/command_helper.rb +63 -39
- data/lib/vagrant-openshift/helper/install_helper.rb +139 -0
- data/lib/vagrant-openshift/plugin.rb +37 -2
- data/lib/vagrant-openshift/resources/configure_docker.sh +53 -0
- data/lib/vagrant-openshift/resources/configure_system.sh +23 -0
- data/lib/vagrant-openshift/resources/install_chrome.sh +22 -0
- data/lib/vagrant-openshift/resources/install_dependencies.sh +58 -0
- data/lib/vagrant-openshift/resources/install_nonessential.sh +6 -0
- data/lib/vagrant-openshift/resources/install_rhaos_repos.sh +11 -0
- data/lib/vagrant-openshift/resources/reconfigure_network_fedora.sh +13 -0
- data/lib/vagrant-openshift/resources/rhaos31.repo +13 -0
- data/lib/vagrant-openshift/resources/rhaos32.repo +13 -0
- data/lib/vagrant-openshift/resources/rhaos33.repo +13 -0
- data/lib/vagrant-openshift/resources/rhaos34.repo +13 -0
- data/lib/vagrant-openshift/version.rb +1 -1
- metadata +29 -3
@@ -41,7 +41,7 @@ sudo cp /etc/yum.repos.d/origin_local.repo .
|
|
41
41
|
docker build -t openshift/origin-base -f Dockerfile.rpm .
|
42
42
|
popd
|
43
43
|
})
|
44
|
-
|
44
|
+
|
45
45
|
images = @options[:images].split(",")
|
46
46
|
images.each do |image|
|
47
47
|
sudo(env[:machine], %{
|
@@ -51,7 +51,7 @@ popd
|
|
51
51
|
})
|
52
52
|
end
|
53
53
|
|
54
|
-
|
54
|
+
|
55
55
|
@app.call(env)
|
56
56
|
end
|
57
57
|
end
|
@@ -55,7 +55,7 @@ module Vagrant
|
|
55
55
|
|
56
56
|
unless is_fedora
|
57
57
|
unless env[:machine].communicate.test("rpm -q epel-release")
|
58
|
-
sudo(env[:machine], "yum install -y http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-
|
58
|
+
sudo(env[:machine], "yum install -y http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-8.noarch.rpm")
|
59
59
|
|
60
60
|
#Workaround broken RHEL image which does not recover after restart.
|
61
61
|
if "VagrantPlugins::AWS::Provider" == env[:machine].provider.class.to_s
|
@@ -35,10 +35,10 @@ module Vagrant
|
|
35
35
|
artifacts_dir = Pathname.new(File.expand_path(machine.env.root_path + "artifacts"))
|
36
36
|
|
37
37
|
_,_,exit_code = do_execute machine, "mkdir -p /tmp/openshift && journalctl -u openshift --no-pager > /tmp/openshift/openshift.log", :fail_on_error => false
|
38
|
-
if exit_code != 0
|
38
|
+
if exit_code != 0
|
39
39
|
machine.ui.warn "Unable to dump openshift log from journalctl"
|
40
40
|
end
|
41
|
-
|
41
|
+
|
42
42
|
download_map = {
|
43
43
|
"/var/log/yum.log" => artifacts_dir + "yum.log",
|
44
44
|
"/var/log/secure" => artifacts_dir + "secure",
|
@@ -0,0 +1,67 @@
|
|
1
|
+
#--
|
2
|
+
# Copyright 2016 Red Hat, Inc.
|
3
|
+
#
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
# you may not use this file except in compliance with the License.
|
6
|
+
# You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
# See the License for the specific language governing permissions and
|
14
|
+
# limitations under the License.
|
15
|
+
#++
|
16
|
+
require 'pathname'
|
17
|
+
|
18
|
+
module Vagrant
|
19
|
+
module Openshift
|
20
|
+
module Action
|
21
|
+
class DownloadArtifactsOriginMetrics
|
22
|
+
include CommandHelper
|
23
|
+
|
24
|
+
def initialize(app, env)
|
25
|
+
@app = app
|
26
|
+
@env = env
|
27
|
+
end
|
28
|
+
|
29
|
+
def call(env)
|
30
|
+
machine = @env[:machine]
|
31
|
+
machine.ui.info "Downloading logs"
|
32
|
+
ssh_info = machine.ssh_info
|
33
|
+
private_key_path = ssh_info[:private_key_path].kind_of?(Array) ? ssh_info[:private_key_path][0] : ssh_info[:private_key_path]
|
34
|
+
|
35
|
+
artifacts_dir = Pathname.new(File.expand_path(machine.env.root_path + "artifacts"))
|
36
|
+
download_map = {
|
37
|
+
"/var/log/yum.log" => artifacts_dir + "yum.log",
|
38
|
+
"/var/log/secure" => artifacts_dir + "secure",
|
39
|
+
"/var/log/audit/audit.log" => artifacts_dir + "audit.log",
|
40
|
+
"/tmp/origin-metrics/" => artifacts_dir,
|
41
|
+
}
|
42
|
+
|
43
|
+
download_map.each do |source,target|
|
44
|
+
if ! machine.communicate.test("sudo ls #{source}")
|
45
|
+
machine.ui.info "#{source} did not exist on the remote system. This is often the case for tests that were not run."
|
46
|
+
next
|
47
|
+
end
|
48
|
+
|
49
|
+
machine.ui.info "Downloading artifacts from '#{source}' to '#{target}'"
|
50
|
+
if target.to_s.end_with? '/'
|
51
|
+
FileUtils.mkdir_p target.to_s
|
52
|
+
else
|
53
|
+
FileUtils.mkdir_p File.dirname(target.to_s)
|
54
|
+
end
|
55
|
+
|
56
|
+
command = "/usr/bin/rsync -az -e 'ssh -q -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -i #{private_key_path}' --rsync-path='sudo rsync' --exclude='volumes/*' --exclude='volumes/' #{ssh_info[:username]}@#{ssh_info[:host]}:#{source} #{target}"
|
57
|
+
|
58
|
+
if not system(command)
|
59
|
+
machine.ui.warn "Unable to download artifacts"
|
60
|
+
end
|
61
|
+
end
|
62
|
+
@app.call(env)
|
63
|
+
end
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|
67
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
#--
|
2
|
+
# Copyright 2016 Red Hat, Inc.
|
3
|
+
#
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
# you may not use this file except in compliance with the License.
|
6
|
+
# You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
# See the License for the specific language governing permissions and
|
14
|
+
# limitations under the License.
|
15
|
+
#++
|
16
|
+
|
17
|
+
module Vagrant
|
18
|
+
module Openshift
|
19
|
+
module Action
|
20
|
+
class InstallDocker
|
21
|
+
include CommandHelper
|
22
|
+
include InstallHelper
|
23
|
+
|
24
|
+
def initialize(app, env, options)
|
25
|
+
@app = app
|
26
|
+
@env = env
|
27
|
+
@options = options.clone
|
28
|
+
end
|
29
|
+
|
30
|
+
def call(env)
|
31
|
+
# Migrate our install script to the host machine
|
32
|
+
ssh_user = @env[:machine].ssh_info[:username]
|
33
|
+
destination="/home/#{ssh_user}/"
|
34
|
+
@env[:machine].communicate.upload(File.join(__dir__,"/../resources/configure_docker.sh"), destination)
|
35
|
+
home="#{destination}/resources"
|
36
|
+
|
37
|
+
isolated_install(
|
38
|
+
@env[:machine],
|
39
|
+
'docker',
|
40
|
+
@options[:"docker.version"],
|
41
|
+
@options[:"docker.repourls"],
|
42
|
+
@options[:"docker.reponames"],
|
43
|
+
@options[:force]
|
44
|
+
)
|
45
|
+
|
46
|
+
# Configure the Docker daemon
|
47
|
+
sudo(@env[:machine], "SSH_USER='#{ssh_user}' #{home}/configure_docker.sh", :timeout=>60*30)
|
48
|
+
|
49
|
+
@app.call(@env)
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
@@ -0,0 +1,52 @@
|
|
1
|
+
#--
|
2
|
+
# Copyright 2016 Red Hat, Inc.
|
3
|
+
#
|
4
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
5
|
+
# you may not use this file except in compliance with the License.
|
6
|
+
# You may obtain a copy of the License at
|
7
|
+
#
|
8
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
9
|
+
#
|
10
|
+
# Unless required by applicable law or agreed to in writing, software
|
11
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
12
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
13
|
+
# See the License for the specific language governing permissions and
|
14
|
+
# limitations under the License.
|
15
|
+
#++
|
16
|
+
|
17
|
+
module Vagrant
|
18
|
+
module Openshift
|
19
|
+
module Action
|
20
|
+
class InstallGolang
|
21
|
+
include CommandHelper
|
22
|
+
include InstallHelper
|
23
|
+
|
24
|
+
def initialize(app, env, options)
|
25
|
+
@app = app
|
26
|
+
@env = env
|
27
|
+
@options = options.clone
|
28
|
+
end
|
29
|
+
|
30
|
+
def call(env)
|
31
|
+
isolated_install(
|
32
|
+
@env[:machine],
|
33
|
+
'golang',
|
34
|
+
@options[:"golang.version"],
|
35
|
+
@options[:"golang.repourls"],
|
36
|
+
@options[:"golang.reponames"],
|
37
|
+
@options[:force]
|
38
|
+
)
|
39
|
+
|
40
|
+
if @options[:"golang.version"] =~ %r"^1\.4.*" && ! env[:machine].communicate.test("test -e /etc/fedora-release")
|
41
|
+
# Prior to go1.5, the cgo symbol tables were not provided in the base golang
|
42
|
+
# package on RHEL and CentOS, so if we've installed go1.4.x and we're not on
|
43
|
+
# Fedora, we need to also install `golang-pkg-linux-amd64'
|
44
|
+
sudo(@env[:machine], "yum install -y #{format_versioned_package("golang-pkg-linux-amd64", @options[:"golang.version"])}", :timeout=>60*5)
|
45
|
+
end
|
46
|
+
|
47
|
+
@app.call(@env)
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
@@ -35,8 +35,11 @@ ASSET_BACKUP_DIR=/data/asset_dependencies
|
|
35
35
|
|
36
36
|
if ! which npm > /dev/null 2>&1 ; then
|
37
37
|
sudo yum -y install npm
|
38
|
-
|
39
|
-
|
38
|
+
if $(test -e /etc/fedora-release)
|
39
|
+
then
|
40
|
+
# Update npm, we need a newer version than is installed by yum
|
41
|
+
sudo npm install npm@3.7.3 -g
|
42
|
+
fi
|
40
43
|
fi
|
41
44
|
|
42
45
|
}
|
@@ -63,7 +66,7 @@ popd
|
|
63
66
|
cmd += %{
|
64
67
|
# Make sure tests pass before backing up this asset install
|
65
68
|
pushd $ORIGIN_CONSOLE_PATH
|
66
|
-
|
69
|
+
hack/test-headless.sh test
|
67
70
|
popd
|
68
71
|
mkdir -p $ASSET_BACKUP_DIR
|
69
72
|
cp -rf $ORIGIN_CONSOLE_PATH/node_modules $ASSET_BACKUP_DIR/node_modules
|
@@ -26,253 +26,38 @@ module Vagrant
|
|
26
26
|
end
|
27
27
|
|
28
28
|
def call(env)
|
29
|
-
#
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
if ! [[ -L /etc/udev/rules.d/80-net-setup-link.rules ]]; then
|
35
|
-
ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules
|
36
|
-
rm -f /etc/sysconfig/network-scripts/ifcfg-enp0s3
|
37
|
-
fi
|
38
|
-
}, :verbose => false)
|
39
|
-
end
|
40
|
-
|
41
|
-
|
42
|
-
sudo(env[:machine], %{
|
43
|
-
if [[ -e /etc/redhat-release && ! -e /etc/fedora-release && ! -e /etc/centos-release ]]; then
|
44
|
-
|
45
|
-
cat <<EOF > /etc/yum.repos.d/dockerextra.repo
|
46
|
-
[dockerextra]
|
47
|
-
name=RHEL Docker Extra
|
48
|
-
baseurl=https://mirror.openshift.com/enterprise/rhel/dockerextra/x86_64/os/
|
49
|
-
enabled=1
|
50
|
-
gpgcheck=0
|
51
|
-
failovermethod=priority
|
52
|
-
sslverify=False
|
53
|
-
sslclientcert=/var/lib/yum/client-cert.pem
|
54
|
-
sslclientkey=/var/lib/yum/client-key.pem
|
55
|
-
|
56
|
-
EOF
|
29
|
+
# Migrate all of our scripts to the host machine
|
30
|
+
ssh_user = @env[:machine].ssh_info[:username]
|
31
|
+
destination="/home/#{ssh_user}/"
|
32
|
+
@env[:machine].communicate.upload(File.join(__dir__,"/../resources"), destination)
|
33
|
+
home="#{destination}/resources"
|
57
34
|
|
58
|
-
|
59
|
-
|
35
|
+
# Workaround to vagrant inability to guess interface naming sequence:
|
36
|
+
# Tell system to abandon the new naming scheme and use eth* instead if
|
37
|
+
# we're communicating with a Fedora machine
|
38
|
+
sudo(@env[:machine], "#{home}/reconfigure_network_fedora.sh")
|
60
39
|
|
61
|
-
|
62
|
-
sudo(env[:machine], "
|
63
|
-
augeas \
|
64
|
-
bzr \
|
65
|
-
bridge-utils \
|
66
|
-
bzip2 \
|
67
|
-
bind \
|
68
|
-
btrfs-progs-devel \
|
69
|
-
bind-utils \
|
70
|
-
ctags \
|
71
|
-
device-mapper-devel \
|
72
|
-
docker-io \
|
73
|
-
ethtool \
|
74
|
-
e2fsprogs \
|
75
|
-
fontconfig \
|
76
|
-
git \
|
77
|
-
gcc \
|
78
|
-
gcc-c++ \
|
79
|
-
glibc-static \
|
80
|
-
gnuplot \
|
81
|
-
httpie \
|
82
|
-
hg \
|
83
|
-
iscsi-initiator-utils \
|
84
|
-
jq \
|
85
|
-
java-1.?.0-openjdk \
|
86
|
-
kernel-devel \
|
87
|
-
libselinux-devel \
|
88
|
-
libnetfilter_queue-devel \
|
89
|
-
make \
|
90
|
-
mlocate \
|
91
|
-
ntp \
|
92
|
-
openldap-clients \
|
93
|
-
openvswitch \
|
94
|
-
rubygems \
|
95
|
-
screen \
|
96
|
-
ShellCheck \
|
97
|
-
socat \
|
98
|
-
sqlite-devel \
|
99
|
-
sysstat \
|
100
|
-
tig \
|
101
|
-
tmux \
|
102
|
-
unzip \
|
103
|
-
vim \
|
104
|
-
wget \
|
105
|
-
xfsprogs \
|
106
|
-
Xvfb \
|
107
|
-
yum-utils",:timeout=>60*30, :verbose => false)
|
40
|
+
# Install base dependencies that we cannot continue without
|
41
|
+
sudo(@env[:machine], "#{home}/install_dependencies.sh", :timeout=>60*30)
|
108
42
|
|
109
|
-
|
43
|
+
# Install dependencies that are nice to have but we can live without
|
44
|
+
sudo(@env[:machine], "#{home}/install_nonessential.sh", :timeout=>60*20, fail_on_error: false)
|
110
45
|
|
111
46
|
# Install Chrome and chromedriver for headless UI testing
|
112
|
-
sudo(env[:machine],
|
113
|
-
set -ex
|
114
|
-
cd /tmp
|
115
|
-
|
116
|
-
# Add signing key for Chrome repo
|
117
|
-
wget https://dl.google.com/linux/linux_signing_key.pub
|
118
|
-
rpm --import linux_signing_key.pub
|
119
|
-
|
120
|
-
# Add Chrome yum repo
|
121
|
-
yum-config-manager --add-repo=http://dl.google.com/linux/chrome/rpm/stable/x86_64
|
122
|
-
|
123
|
-
# Install chrome
|
124
|
-
yum install -y google-chrome-stable
|
125
|
-
|
126
|
-
# Install chromedriver
|
127
|
-
wget https://chromedriver.storage.googleapis.com/2.16/chromedriver_linux64.zip
|
128
|
-
unzip chromedriver_linux64.zip
|
129
|
-
mv chromedriver /usr/bin/chromedriver
|
130
|
-
chown root /usr/bin/chromedriver
|
131
|
-
chmod 755 /usr/bin/chromedriver
|
132
|
-
}, :timeout=>60*60, :verbose => false)
|
47
|
+
sudo(@env[:machine], "#{home}/install_chrome.sh", :timeout=>60*60)
|
133
48
|
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
# installed. See BZ#1101508
|
139
|
-
#
|
140
|
-
sudo(env[:machine], "yum install -y golang golang-src", :timeout=>60*20, :verbose => false)
|
141
|
-
#
|
142
|
-
|
143
|
-
unless is_fedora
|
144
|
-
sudo(env[:machine], "yum install -y golang-pkg-linux-amd64", :timeout=>60*20, :verbose => false)
|
49
|
+
# If we're on RHEL, install the OSE RPM repositories
|
50
|
+
is_rhel = @env[:machine].communicate.test("test -e /etc/redhat-release && ! test -e /etc/fedora-release && ! test -e /etc/centos-release")
|
51
|
+
if is_rhel
|
52
|
+
sudo(@env[:machine], "#{home}/install_rhaos_repos.sh")
|
145
53
|
end
|
146
54
|
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
if [[ -e /etc/redhat-release && ! -e /etc/fedora-release && ! -e /etc/centos-release ]]; then
|
151
|
-
|
152
|
-
# create rhaos3.1 and 3.2 repos
|
153
|
-
cat <<EOF > /etc/yum.repos.d/rhaos31.repo
|
154
|
-
[rhel-7-server-ose-3.1-rpms]
|
155
|
-
name=RHEL7 Red Hat Atomic OpenShift 3.1
|
156
|
-
baseurl=https://mirror.ops.rhcloud.com/enterprise/enterprise-3.1/RH7-RHAOS-3.1/x86_64/os/
|
157
|
-
https://use-mirror1.ops.rhcloud.com/enterprise/enterprise-3.1/RH7-RHAOS-3.1/x86_64/os/
|
158
|
-
https://use-mirror2.ops.rhcloud.com/enterprise/enterprise-3.1/RH7-RHAOS-3.1/x86_64/os/
|
159
|
-
https://euw-mirror1.ops.rhcloud.com/enterprise/enterprise-3.1/RH7-RHAOS-3.1/x86_64/os/
|
160
|
-
enabled=1
|
161
|
-
gpgcheck=0
|
162
|
-
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release,file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-beta,https://mirror.ops.rhcloud.com/libra/keys/RPM-GPG-KEY-redhat-openshifthosted
|
163
|
-
failovermethod=priority
|
164
|
-
sslverify=0
|
165
|
-
sslclientcert=/var/lib/yum/client-cert.pem
|
166
|
-
sslclientkey=/var/lib/yum/client-key.pem
|
167
|
-
|
168
|
-
EOF
|
169
|
-
|
170
|
-
cat <<EOF > /etc/yum.repos.d/rhaos32.repo
|
171
|
-
[rhel-7-server-ose-3.2-rpms]
|
172
|
-
name=RHEL7 Red Hat Atomic OpenShift 3.2
|
173
|
-
baseurl=https://mirror.ops.rhcloud.com/enterprise/enterprise-3.2/latest/RH7-RHAOS-3.2/x86_64/os/
|
174
|
-
https://use-mirror1.ops.rhcloud.com/enterprise/enterprise-3.2/latest/RH7-RHAOS-3.2/x86_64/os/
|
175
|
-
https://use-mirror2.ops.rhcloud.com/enterprise/enterprise-3.2/latest/RH7-RHAOS-3.2/x86_64/os/
|
176
|
-
https://euw-mirror1.ops.rhcloud.com/enterprise/enterprise-3.2/latest/RH7-RHAOS-3.2/x86_64/os/
|
177
|
-
enabled=1
|
178
|
-
gpgcheck=0
|
179
|
-
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release,file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-beta,https://mirror.ops.rhcloud.com/libra/keys/RPM-GPG-KEY-redhat-openshifthosted
|
180
|
-
failovermethod=priority
|
181
|
-
sslverify=0
|
182
|
-
sslclientcert=/var/lib/yum/client-cert.pem
|
183
|
-
sslclientkey=/var/lib/yum/client-key.pem
|
184
|
-
|
185
|
-
EOF
|
186
|
-
|
187
|
-
fi
|
188
|
-
|
189
|
-
if ! test -e /etc/fedora-release; then
|
190
|
-
sed -i 's,^SELINUX=.*,SELINUX=permissive,' /etc/selinux/config
|
191
|
-
setenforce 0
|
192
|
-
fi
|
193
|
-
|
194
|
-
systemctl enable ntpd
|
195
|
-
|
196
|
-
groupadd -f docker
|
197
|
-
usermod -a -G docker #{ssh_user}
|
198
|
-
|
199
|
-
ADDITIONAL_OPTIONS='--insecure-registry=172.30.0.0/16 --insecure-registry=ci.dev.openshift.redhat.com:5000'
|
200
|
-
sed -i "s,^OPTIONS='\\(.*\\)',OPTIONS='${ADDITIONAL_OPTIONS} \\1'," /etc/sysconfig/docker
|
201
|
-
sed -i "s,^OPTIONS=-\\(.*\\),OPTIONS='${ADDITIONAL_OPTIONS} -\\1'," /etc/sysconfig/docker
|
202
|
-
sed -i "s,^ADD_REGISTRY='\\(.*\\)',#ADD_REGISTRY='--add-registry=docker.io \\1'," /etc/sysconfig/docker
|
203
|
-
|
204
|
-
cat /etc/sysconfig/docker
|
205
|
-
|
206
|
-
|
207
|
-
if sudo lvdisplay docker-vg 2>&1>/dev/null
|
208
|
-
then
|
209
|
-
VG="docker-vg"
|
210
|
-
elif sudo lvdisplay vg_vagrant 2>&1>/dev/null
|
211
|
-
then
|
212
|
-
VG="vg_vagrant"
|
213
|
-
elif sudo lvdisplay centos 2>&1>/dev/null
|
214
|
-
then
|
215
|
-
VG="centos"
|
216
|
-
fi
|
217
|
-
if [ -n "${VG}" ]
|
218
|
-
then
|
219
|
-
sudo lvcreate -n docker-data -l 90%FREE /dev/${VG}
|
220
|
-
sudo lvcreate -n docker-metadata -l 50%FREE /dev/${VG}
|
221
|
-
sudo sed -i "s,^DOCKER_STORAGE_OPTIONS=.*,DOCKER_STORAGE_OPTIONS='-s devicemapper --storage-opt dm.datadev=/dev/${VG}/docker-data --storage-opt dm.metadatadev=/dev/${VG}/docker-metadata'," /etc/sysconfig/docker-storage
|
222
|
-
|
223
|
-
sudo lvcreate -n openshift-xfs-vol-dir -l 100%FREE /dev/${VG}
|
224
|
-
sudo mkfs.xfs /dev/${VG}/openshift-xfs-vol-dir
|
225
|
-
sudo mkdir -p /mnt/openshift-xfs-vol-dir
|
226
|
-
sudo sh -c "echo /dev/${VG}/openshift-xfs-vol-dir /mnt/openshift-xfs-vol-dir xfs gquota 1 1 >> /etc/fstab"
|
227
|
-
sudo mount /mnt/openshift-xfs-vol-dir
|
228
|
-
sudo chown -R #{ssh_user}:#{ssh_user} /mnt/openshift-xfs-vol-dir
|
229
|
-
fi
|
230
|
-
|
231
|
-
# Force socket reuse
|
232
|
-
echo 1 > /proc/sys/net/ipv4/tcp_tw_reuse
|
233
|
-
|
234
|
-
mkdir -p /data/src
|
235
|
-
mkdir -p /data/pkg
|
236
|
-
mkdir -p /data/bin
|
237
|
-
|
238
|
-
GO_VERSION=($(go version))
|
239
|
-
echo "Detected go version: $(go version)"
|
240
|
-
|
241
|
-
# TODO: Remove for go1.5, go vet and go cover will be internal
|
242
|
-
if [[ ${GO_VERSION[2]} == "go1.4"* ]]; then
|
243
|
-
GOPATH=/data go get golang.org/x/tools/cmd/cover
|
244
|
-
|
245
|
-
# https://groups.google.com/forum/#!topic/golang-nuts/nZLhcbaa3wQ
|
246
|
-
set +e
|
247
|
-
GOPATH=/data go get golang.org/x/tools/cmd/vet
|
248
|
-
set -e
|
249
|
-
|
250
|
-
# Check out a stable commit for go vet in order to version lock it to something we can work with
|
251
|
-
pushd /data/src/golang.org/x/tools >/dev/null
|
252
|
-
if git checkout 108746816ddf01ad0c2dbea08a1baef08bc47313
|
253
|
-
then
|
254
|
-
# Re-install using this version of the tool
|
255
|
-
GOPATH=/data go install golang.org/x/tools/cmd/vet
|
256
|
-
fi
|
257
|
-
popd >/dev/null
|
258
|
-
fi
|
259
|
-
|
260
|
-
chown -R #{ssh_user}:#{ssh_user} /data
|
261
|
-
|
262
|
-
sed -i "s,^#DefaultTimeoutStartSec=.*,DefaultTimeoutStartSec=240s," /etc/systemd/system.conf
|
263
|
-
|
264
|
-
# Docker 1.8.2 now sets a TimeoutStartSec of 1 minute. Unfortunately, for some
|
265
|
-
# reason the initial docker start up is now taking > 5 minutes. Until that is fixed need this.
|
266
|
-
sed -i 's,TimeoutStartSec=.*,TimeoutStartSec=10min,' /usr/lib/systemd/system/docker.service
|
55
|
+
# Configure the machine system
|
56
|
+
sudo(@env[:machine], "SSH_USER='#{ssh_user}' #{home}/configure_system.sh", :timeout=>60*30)
|
267
57
|
|
268
|
-
|
269
|
-
systemctl daemon-reload
|
270
|
-
systemctl enable docker
|
271
|
-
time systemctl start docker
|
272
|
-
}, :timeout=>60*30, :verbose => false)
|
273
|
-
@app.call(env)
|
58
|
+
@app.call(@env)
|
274
59
|
end
|
275
60
|
end
|
276
61
|
end
|
277
62
|
end
|
278
|
-
end
|
63
|
+
end
|