openshift-origin-node 1.3.1
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of openshift-origin-node might be problematic. Click here for more details.
- data/COPYRIGHT +1 -0
- data/Gemfile +4 -0
- data/LICENSE +11 -0
- data/README.md +3 -0
- data/Rakefile +28 -0
- data/bin/oo-add-alias +93 -0
- data/bin/oo-app-create +110 -0
- data/bin/oo-app-destroy +100 -0
- data/bin/oo-app-state-show +74 -0
- data/bin/oo-authorized-ssh-key-add +83 -0
- data/bin/oo-authorized-ssh-key-remove +82 -0
- data/bin/oo-broker-auth-key-add +84 -0
- data/bin/oo-broker-auth-key-remove +72 -0
- data/bin/oo-cartridge-info +70 -0
- data/bin/oo-cartridge-list +70 -0
- data/bin/oo-connector-execute +94 -0
- data/bin/oo-env-var-add +81 -0
- data/bin/oo-env-var-remove +78 -0
- data/bin/oo-get-quota +64 -0
- data/bin/oo-remove-alias +93 -0
- data/bin/oo-set-quota +59 -0
- data/conf/node.conf +30 -0
- data/conf/resource_limits.template +67 -0
- data/lib/openshift-origin-node.rb +29 -0
- data/lib/openshift-origin-node/config.rb +21 -0
- data/lib/openshift-origin-node/environment.rb +26 -0
- data/lib/openshift-origin-node/model/application_container.rb +298 -0
- data/lib/openshift-origin-node/model/frontend_httpd.rb +346 -0
- data/lib/openshift-origin-node/model/node.rb +134 -0
- data/lib/openshift-origin-node/model/unix_user.rb +738 -0
- data/lib/openshift-origin-node/plugins/unix_user_observer.rb +86 -0
- data/lib/openshift-origin-node/utils/shell_exec.rb +115 -0
- data/lib/openshift-origin-node/version.rb +23 -0
- data/misc/bin/oo-admin-ctl-cgroups +482 -0
- data/misc/bin/oo-cgroup-read +25 -0
- data/misc/bin/oo-get-mcs-level +29 -0
- data/misc/bin/oo-trap-user +248 -0
- data/misc/bin/rhcsh +155 -0
- data/misc/bin/setup_pam_fs_limits.sh +146 -0
- data/misc/bin/teardown_pam_fs_limits.sh +73 -0
- data/misc/doc/cgconfig.conf +26 -0
- data/misc/etc/openshift-run.conf +1 -0
- data/misc/init/openshift-cgroups +56 -0
- data/misc/services/openshift-cgroups.service +14 -0
- data/openshift-origin-node.gemspec +31 -0
- data/rubygem-openshift-origin-node.spec +263 -0
- data/test/test_helper.rb +20 -0
- data/test/unit/frontend_httpd_test.rb +144 -0
- data/test/unit/unix_user_test.rb +95 -0
- data/test/unit/version_test.rb +45 -0
- metadata +230 -0
@@ -0,0 +1,146 @@
|
|
1
|
+
#!/bin/bash
|
2
|
+
#
|
3
|
+
# Sets up the PAM filesystem and quota limits for an OpenShift gear
|
4
|
+
#
|
5
|
+
|
6
|
+
|
7
|
+
#
|
8
|
+
# Add a PAM limit set to the user
|
9
|
+
#
|
10
|
+
# IN: username
|
11
|
+
# IN: limits_order
|
12
|
+
# IN: limits_nproc
|
13
|
+
#
|
14
|
+
|
15
|
+
LIMITSVARS="core data fsize memlock nofile rss stack cpu nproc as maxlogins priority locks sigpending msgqueue nice rprio"
|
16
|
+
|
17
|
+
function set_pam_limits {
|
18
|
+
USERNAME=$1
|
19
|
+
#assume these come from sourced config file into environment
|
20
|
+
#LIMITS_ORDER=${2:-$limits_order}
|
21
|
+
#LIMITS_NPROC=${3:-$limits_nproc}
|
22
|
+
|
23
|
+
LIMITSFILE=/etc/security/limits.d/${limits_order}-${USERNAME}.conf
|
24
|
+
|
25
|
+
if [ -z "${NOOP}" ]
|
26
|
+
then
|
27
|
+
cat <<EOF > ${LIMITSFILE}
|
28
|
+
# PAM process limits for guest $USERNAME
|
29
|
+
# see limits.conf(5) for details
|
30
|
+
#Each line describes a limit for a user in the form:
|
31
|
+
#
|
32
|
+
#<domain> <type> <item> <value>
|
33
|
+
EOF
|
34
|
+
else
|
35
|
+
echo "cat <<EOF > ${LIMITSFILE}
|
36
|
+
# PAM process limits for guest $USERNAME
|
37
|
+
# see limits.conf(5) for details
|
38
|
+
#Each line describes a limit for a user in the form:
|
39
|
+
#
|
40
|
+
#<domain> <type> <item> <value>
|
41
|
+
${USERNAME} hard nproc ${LIMITS_NPROC}
|
42
|
+
EOF"
|
43
|
+
|
44
|
+
fi
|
45
|
+
|
46
|
+
for KEY in $LIMITSVARS
|
47
|
+
do
|
48
|
+
VALUE=`eval echo \\$limits_$KEY`
|
49
|
+
if [ -n "$VALUE" ]
|
50
|
+
then
|
51
|
+
if [ -z "${NOOP}" ]
|
52
|
+
then
|
53
|
+
echo "${USERNAME} hard $KEY $VALUE" >> ${LIMITSFILE}
|
54
|
+
else
|
55
|
+
echo "echo \"${USERNAME} hard $KEY $VALUE\" >> ${LIMITSFILE}"
|
56
|
+
fi
|
57
|
+
fi
|
58
|
+
done
|
59
|
+
|
60
|
+
}
|
61
|
+
|
62
|
+
|
63
|
+
#
|
64
|
+
# Return the mount point of the file system for a given path
|
65
|
+
#
|
66
|
+
function get_mountpoint() {
|
67
|
+
df -P $1 2>/dev/null | tail -1 | awk '{ print $6 }'
|
68
|
+
}
|
69
|
+
|
70
|
+
# Are quotas enabled on the specified directory?
|
71
|
+
function quotas_enabled {
|
72
|
+
# DIR=$1
|
73
|
+
QUOTA_ROOT=`get_mountpoint $1`
|
74
|
+
# if you can't find the quota root for the given directory, it's not enabled
|
75
|
+
if [ -z "${QUOTA_ROOT}" ]
|
76
|
+
then
|
77
|
+
return 1
|
78
|
+
fi
|
79
|
+
quotaon -u -p $QUOTA_ROOT >/dev/null 2>&1
|
80
|
+
# quotaon returns the opposite of what you expect
|
81
|
+
# 1 = enabled, 0 = not enabled
|
82
|
+
if [ $? -eq 0 ]
|
83
|
+
then
|
84
|
+
return 1
|
85
|
+
else
|
86
|
+
return 0
|
87
|
+
fi
|
88
|
+
}
|
89
|
+
|
90
|
+
#
|
91
|
+
# Set a user's inode and block quotas on the home file system
|
92
|
+
# usage: set_fs_quota <username> <inodes> <blocks>
|
93
|
+
function set_fs_quotas {
|
94
|
+
# USERNAME=$1
|
95
|
+
# QUOTA_BLOCKS=${2:-$quota_blocks}
|
96
|
+
# QUOTA_FILES=${3:-$quota_files}
|
97
|
+
|
98
|
+
# get the user home directory
|
99
|
+
# get the quota mount point
|
100
|
+
if quotas_enabled $GEAR_BASE_DIR
|
101
|
+
then
|
102
|
+
setquota $1 0 $2 0 $3 `get_mountpoint $GEAR_BASE_DIR`
|
103
|
+
else
|
104
|
+
echo "WARNING: quotas not enabled on $GEAR_BASE_DIR" >&2
|
105
|
+
fi
|
106
|
+
}
|
107
|
+
|
108
|
+
# ============================================================================
|
109
|
+
# MAIN
|
110
|
+
# ============================================================================
|
111
|
+
|
112
|
+
# Load defaults and node configuration
|
113
|
+
source /etc/openshift/node.conf
|
114
|
+
|
115
|
+
|
116
|
+
# defaults
|
117
|
+
limits_order=84
|
118
|
+
limits_nproc=100
|
119
|
+
quota_files=1000
|
120
|
+
# a block = 1Kbytes: 1k * 1024 * 128
|
121
|
+
quota_blocks=`expr 1024 \* 128` # 128MB
|
122
|
+
|
123
|
+
# Load system configuration
|
124
|
+
source /etc/openshift/resource_limits.conf
|
125
|
+
|
126
|
+
|
127
|
+
# Allow the command line to override quota and limits
|
128
|
+
username=$1
|
129
|
+
quota_blocks_custom=$2
|
130
|
+
quota_files_custom=$3
|
131
|
+
nproc_custom=$4
|
132
|
+
|
133
|
+
if [ -n "$quota_blocks_custom" ] && [ $quota_blocks_custom -gt $quota_blocks ]
|
134
|
+
then
|
135
|
+
quota_blocks=$quota_blocks_custom
|
136
|
+
fi
|
137
|
+
if [ -n "$quota_files_custom" ] && [ $quota_files_custom -gt $quota_files ]
|
138
|
+
then
|
139
|
+
quota_files=$quota_files_custom
|
140
|
+
fi
|
141
|
+
if [ -n "$nproc_custom" ] && [ $nproc_custom -le $limits_nproc ]
|
142
|
+
then
|
143
|
+
limits_nproc=$nproc_custom
|
144
|
+
fi
|
145
|
+
set_pam_limits $username
|
146
|
+
set_fs_quotas $username $quota_blocks $quota_files
|
@@ -0,0 +1,73 @@
|
|
1
|
+
#!/bin/bash
|
2
|
+
#
|
3
|
+
# Tear down the PAM filesystem and quota limits for an OpenShift gear
|
4
|
+
#
|
5
|
+
|
6
|
+
#
|
7
|
+
# Add a PAM limit set to the user
|
8
|
+
#
|
9
|
+
# IN: username
|
10
|
+
# IN: limits_order
|
11
|
+
#
|
12
|
+
|
13
|
+
function remove_pam_limits {
|
14
|
+
USERNAME=$1
|
15
|
+
LIMITS_ORDER=${2:-$limits_order}
|
16
|
+
|
17
|
+
LIMITSFILE=/etc/security/limits.d/${LIMITS_ORDER}-${USERNAME}.conf
|
18
|
+
|
19
|
+
${NOOP} rm -f ${LIMITSFILE}
|
20
|
+
}
|
21
|
+
|
22
|
+
|
23
|
+
function get_mountpoint() {
|
24
|
+
df -P $1 2>/dev/null | tail -1 | awk '{ print $6 }'
|
25
|
+
}
|
26
|
+
|
27
|
+
# Are quotas enabled on the specified directory?
|
28
|
+
function quotas_enabled {
|
29
|
+
# DIR=$1
|
30
|
+
QUOTA_ROOT=`get_mountpoint $1`
|
31
|
+
# if you can't find the quota root for the given directory, it's not enabled
|
32
|
+
if [ -z "${QUOTA_ROOT}" ]
|
33
|
+
then
|
34
|
+
return 1
|
35
|
+
fi
|
36
|
+
quotaon -u -p $QUOTA_ROOT >/dev/null 2>&1
|
37
|
+
# quotaon returns the opposite of what you expect
|
38
|
+
# 1 = enabled, 0 = not enabled
|
39
|
+
if [ $? -eq 0 ]
|
40
|
+
then
|
41
|
+
return 1
|
42
|
+
else
|
43
|
+
return 0
|
44
|
+
fi
|
45
|
+
}
|
46
|
+
|
47
|
+
# Remove filesystem quota limits for the user
|
48
|
+
function remove_fs_quotas {
|
49
|
+
USERNAME=$1
|
50
|
+
if quotas_enabled $GEAR_BASE_DIR
|
51
|
+
then
|
52
|
+
setquota $1 0 0 0 0 `get_mountpoint $GEAR_BASE_DIR`
|
53
|
+
else
|
54
|
+
echo "WARNING: quotas not enabled on $GEAR_BASE_DIR" >&2
|
55
|
+
fi
|
56
|
+
}
|
57
|
+
|
58
|
+
# ============================================================================
|
59
|
+
# MAIN
|
60
|
+
# ============================================================================
|
61
|
+
|
62
|
+
# Load defaults and node configuration
|
63
|
+
source /etc/openshift/node.conf
|
64
|
+
|
65
|
+
# defaults
|
66
|
+
limits_order=84
|
67
|
+
|
68
|
+
# Load system configuration
|
69
|
+
source /etc/openshift/resource_limits.conf
|
70
|
+
|
71
|
+
username=$1
|
72
|
+
remove_fs_quotas $username
|
73
|
+
remove_pam_limits $username
|
@@ -0,0 +1,26 @@
|
|
1
|
+
#
|
2
|
+
# Copyright IBM Corporation. 2007
|
3
|
+
#
|
4
|
+
# Authors: Balbir Singh <balbir@linux.vnet.ibm.com>
|
5
|
+
# This program is free software; you can redistribute it and/or modify it
|
6
|
+
# under the terms of version 2.1 of the GNU Lesser General Public License
|
7
|
+
# as published by the Free Software Foundation.
|
8
|
+
#
|
9
|
+
# This program is distributed in the hope that it would be useful, but
|
10
|
+
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
11
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
12
|
+
#
|
13
|
+
# See man cgconfig.conf for further details.
|
14
|
+
#
|
15
|
+
# By default, mount all controllers to /cgroup/<controller>
|
16
|
+
|
17
|
+
mount {
|
18
|
+
cpuset = /cgroup/cpuset;
|
19
|
+
cpu = /cgroup/all;
|
20
|
+
cpuacct = /cgroup/all;
|
21
|
+
memory = /cgroup/all;
|
22
|
+
devices = /cgroup/devices;
|
23
|
+
freezer = /cgroup/all;
|
24
|
+
net_cls = /cgroup/all;
|
25
|
+
blkio = /cgroup/blkio;
|
26
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
d /var/run/openshift 0775 root root -
|
@@ -0,0 +1,56 @@
|
|
1
|
+
#!/bin/sh
|
2
|
+
#
|
3
|
+
# openshift-cgroups This shell script initializes openshift control groups
|
4
|
+
#
|
5
|
+
# Author: Seth Vidal <skvidal@phy.duke.edu>
|
6
|
+
# Mike McGrath <mmcgrath@redhat.com>
|
7
|
+
# Mark lamourine <markllama@redhat.com>
|
8
|
+
#
|
9
|
+
# chkconfig: 345 16 84
|
10
|
+
#
|
11
|
+
# Required-Start: cgconfig cgred
|
12
|
+
#
|
13
|
+
# description: Create Openshift user cgroups
|
14
|
+
# processname: NA
|
15
|
+
#
|
16
|
+
|
17
|
+
# CAVEAT: if the policy is changed, must run these by hand (release ticket)
|
18
|
+
|
19
|
+
# source function library
|
20
|
+
. /etc/rc.d/init.d/functions
|
21
|
+
|
22
|
+
case "$1" in
|
23
|
+
start)
|
24
|
+
/usr/bin/oo-admin-ctl-cgroups startall
|
25
|
+
;;
|
26
|
+
|
27
|
+
stop)
|
28
|
+
/usr/bin/oo-admin-ctl-cgroups stopall
|
29
|
+
;;
|
30
|
+
|
31
|
+
restart|force-reload|reload)
|
32
|
+
/usr/bin/oo-admin-ctl-cgroups restartall
|
33
|
+
;;
|
34
|
+
|
35
|
+
condrestart)
|
36
|
+
/usr/bin/oo-admin-ctl-cgroups condrestartall
|
37
|
+
;;
|
38
|
+
|
39
|
+
status)
|
40
|
+
/usr/bin/oo-admin-ctl-cgroups status $2
|
41
|
+
;;
|
42
|
+
|
43
|
+
startuser)
|
44
|
+
/usr/bin/oo-admin-ctl-cgroups startuser $2
|
45
|
+
;;
|
46
|
+
|
47
|
+
stopuser)
|
48
|
+
/usr/bin/oo-admin-ctl-cgroups stopuser $2
|
49
|
+
;;
|
50
|
+
|
51
|
+
*)
|
52
|
+
echo $"Usage: $0 {start|stop|status|restart|reload|force-reload|condrestart|startuser <username>|stopuser <username>}"
|
53
|
+
exit 1
|
54
|
+
esac
|
55
|
+
|
56
|
+
exit $RETVAL
|
@@ -0,0 +1,14 @@
|
|
1
|
+
[Unit]
|
2
|
+
Description=OpenShift CGroups
|
3
|
+
After=runlevel3.target
|
4
|
+
|
5
|
+
[Service]
|
6
|
+
Type=forking
|
7
|
+
ExecStart=/usr/bin/oo-admin-ctl-cgroups startall
|
8
|
+
ExecStop=/usr/bin/oo-admin-ctl-cgroups stopall
|
9
|
+
ExecReload=/usr/bin/oo-admin-ctl-cgroups restartall
|
10
|
+
Restart=no
|
11
|
+
RemainAfterExit=yes
|
12
|
+
|
13
|
+
[Install]
|
14
|
+
WantedBy=multi-user.target
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# OS independent path locations
|
2
|
+
bin_dir = File.join("bin", "*")
|
3
|
+
conf_dir = File.join("conf", "*")
|
4
|
+
lib_dir = File.join(File.join("lib", "**"), "*")
|
5
|
+
misc_dir = File.join(File.join("misc", "**"), "*")
|
6
|
+
test_dir = File.join(File.join("test", "**"), "*")
|
7
|
+
spec_file = "rubygem-openshift-origin-node.spec"
|
8
|
+
|
9
|
+
Gem::Specification.new do |s|
|
10
|
+
s.name = "openshift-origin-node"
|
11
|
+
s.version = `rpm -q --define 'rhel 7' --qf "%{version}\n" --specfile #{spec_file}`.split[0]
|
12
|
+
s.license = `rpm -q --define 'rhel 7' --qf "%{license}\n" --specfile #{spec_file}`.split[0]
|
13
|
+
s.authors = ["Krishna Raman"]
|
14
|
+
s.email = ["kraman@gmail.com"]
|
15
|
+
s.homepage = `rpm -q --define 'rhel 7' --qf "%{url}\n" --specfile #{spec_file}`.split[0]
|
16
|
+
s.summary = `rpm -q --define 'rhel 7' --qf "%{description}\n" --specfile #{spec_file}`.split[0]
|
17
|
+
s.description = `rpm -q --define 'rhel 7' --qf "%{description}\n" --specfile #{spec_file}`.split[0]
|
18
|
+
|
19
|
+
s.rubyforge_project = "openshift-origin-node"
|
20
|
+
s.files = Dir[lib_dir] + Dir[bin_dir] + Dir[conf_dir] + Dir[test_dir] + Dir[misc_dir]
|
21
|
+
s.files += %w(README.md Rakefile Gemfile rubygem-openshift-origin-node.spec openshift-origin-node.gemspec COPYRIGHT LICENSE)
|
22
|
+
s.executables = Dir[bin_dir].map {|binary| File.basename(binary)}
|
23
|
+
s.require_paths = ["lib"]
|
24
|
+
s.add_dependency("json")
|
25
|
+
s.add_dependency("parseconfig", ">= 0.5.2")
|
26
|
+
s.add_dependency("openshift-origin-common")
|
27
|
+
|
28
|
+
s.add_development_dependency('rspec')
|
29
|
+
s.add_development_dependency('mocha', "0.9.8")
|
30
|
+
s.add_development_dependency('rake', '>= 0.8.7', '<= 0.9.2.2')
|
31
|
+
end
|
@@ -0,0 +1,263 @@
|
|
1
|
+
%if 0%{?fedora}%{?rhel} <= 6
|
2
|
+
%global scl ruby193
|
3
|
+
%global scl_prefix ruby193-
|
4
|
+
%endif
|
5
|
+
%{!?scl:%global pkg_name %{name}}
|
6
|
+
%{?scl:%scl_package rubygem-%{gem_name}}
|
7
|
+
%global gem_name openshift-origin-node
|
8
|
+
%global rubyabi 1.9.1
|
9
|
+
|
10
|
+
%global appdir %{_var}/lib/openshift
|
11
|
+
%define apprundir %{_var}/run/openshift
|
12
|
+
|
13
|
+
Summary: Cloud Development Node
|
14
|
+
Name: rubygem-%{gem_name}
|
15
|
+
Version: 1.3.1
|
16
|
+
Release: 1%{?dist}
|
17
|
+
Group: Development/Languages
|
18
|
+
License: ASL 2.0
|
19
|
+
URL: http://openshift.redhat.com
|
20
|
+
Source0: rubygem-%{gem_name}-%{version}.tar.gz
|
21
|
+
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
22
|
+
Requires: %{?scl:%scl_prefix}ruby(abi) = %{rubyabi}
|
23
|
+
Requires: %{?scl:%scl_prefix}ruby
|
24
|
+
Requires: %{?scl:%scl_prefix}rubygems
|
25
|
+
Requires: %{?scl:%scl_prefix}rubygem(json)
|
26
|
+
Requires: %{?scl:%scl_prefix}rubygem(parseconfig)
|
27
|
+
Requires: %{?scl:%scl_prefix}rubygem(mocha)
|
28
|
+
Requires: %{?scl:%scl_prefix}rubygem(rspec)
|
29
|
+
Requires: rubygem(openshift-origin-common)
|
30
|
+
Requires: python
|
31
|
+
Requires: libselinux-python
|
32
|
+
Requires: mercurial
|
33
|
+
|
34
|
+
%if 0%{?fedora}%{?rhel} <= 6
|
35
|
+
Requires: libcgroup
|
36
|
+
%else
|
37
|
+
Requires: libcgroup-tools
|
38
|
+
%endif
|
39
|
+
Requires: pam_openshift
|
40
|
+
Requires: quota
|
41
|
+
|
42
|
+
%if 0%{?fedora}%{?rhel} <= 6
|
43
|
+
BuildRequires: ruby193-build
|
44
|
+
BuildRequires: scl-utils-build
|
45
|
+
%endif
|
46
|
+
BuildRequires: %{?scl:%scl_prefix}ruby(abi) = %{rubyabi}
|
47
|
+
BuildRequires: %{?scl:%scl_prefix}ruby
|
48
|
+
BuildRequires: %{?scl:%scl_prefix}rubygems
|
49
|
+
BuildRequires: %{?scl:%scl_prefix}rubygems-devel
|
50
|
+
BuildArch: noarch
|
51
|
+
Provides: rubygem(%{gem_name}) = %version
|
52
|
+
Obsoletes: rubygem-stickshift-node
|
53
|
+
|
54
|
+
%description
|
55
|
+
This contains the Cloud Development Node packaged as a rubygem.
|
56
|
+
|
57
|
+
%prep
|
58
|
+
%setup -q
|
59
|
+
|
60
|
+
%build
|
61
|
+
%{?scl:scl enable %scl - << \EOF}
|
62
|
+
mkdir -p .%{gem_dir}
|
63
|
+
# Create the gem as gem install only works on a gem file
|
64
|
+
gem build %{gem_name}.gemspec
|
65
|
+
|
66
|
+
export CONFIGURE_ARGS="--with-cflags='%{optflags}'"
|
67
|
+
# gem install compiles any C extensions and installs into a directory
|
68
|
+
# We set that to be a local directory so that we can move it into the
|
69
|
+
# buildroot in %%install
|
70
|
+
gem install -V \
|
71
|
+
--local \
|
72
|
+
--install-dir .%{gem_dir} \
|
73
|
+
--bindir ./%{_bindir} \
|
74
|
+
--force \
|
75
|
+
--rdoc \
|
76
|
+
%{gem_name}-%{version}.gem
|
77
|
+
%{?scl:EOF}
|
78
|
+
|
79
|
+
%install
|
80
|
+
mkdir -p %{buildroot}%{gem_dir}
|
81
|
+
cp -a ./%{gem_dir}/* %{buildroot}%{gem_dir}/
|
82
|
+
|
83
|
+
# Move the gem binaries to the standard filesystem location
|
84
|
+
mkdir -p %{buildroot}/usr/bin
|
85
|
+
cp -a ./%{_bindir}/* %{buildroot}/usr/bin
|
86
|
+
|
87
|
+
mkdir -p %{buildroot}/etc/httpd/conf.d
|
88
|
+
mkdir -p %{buildroot}%{appdir}/.httpd.d
|
89
|
+
ln -sf %{appdir}/.httpd.d %{buildroot}/etc/httpd/conf.d/openshift
|
90
|
+
|
91
|
+
# Move the gem configs to the standard filesystem location
|
92
|
+
mkdir -p %{buildroot}/etc/openshift
|
93
|
+
mv %{buildroot}%{gem_instdir}/conf/* %{buildroot}/etc/openshift
|
94
|
+
|
95
|
+
#move pam limit binaries to proper location
|
96
|
+
mkdir -p %{buildroot}/usr/libexec/openshift/lib
|
97
|
+
mv %{buildroot}%{gem_instdir}/misc/bin/teardown_pam_fs_limits.sh %{buildroot}/usr/libexec/openshift/lib
|
98
|
+
mv %{buildroot}%{gem_instdir}/misc/bin/setup_pam_fs_limits.sh %{buildroot}/usr/libexec/openshift/lib
|
99
|
+
|
100
|
+
#move the shell binaries into proper location
|
101
|
+
mv %{buildroot}%{gem_instdir}/misc/bin/* %{buildroot}/usr/bin/
|
102
|
+
|
103
|
+
# Create run dir for openshift "services"
|
104
|
+
%if 0%{?fedora} >= 15
|
105
|
+
mkdir -p %{buildroot}/etc/tmpfiles.d
|
106
|
+
mv %{buildroot}%{gem_instdir}/misc/etc/openshift-run.conf %{buildroot}/etc/tmpfiles.d
|
107
|
+
%else
|
108
|
+
mkdir -p %{buildroot}%{apprundir}
|
109
|
+
%endif
|
110
|
+
|
111
|
+
# place an example file
|
112
|
+
mkdir -p %{buildroot}%{_docdir}/%{name}-%{version}/
|
113
|
+
mv %{buildroot}%{gem_instdir}/misc/doc/cgconfig.conf %{buildroot}%{_docdir}/%{name}-%{version}/cgconfig.conf
|
114
|
+
|
115
|
+
%if 0%{?fedora} >= 18
|
116
|
+
#patch for apache 2.4
|
117
|
+
sed -i 's/include/IncludeOptional/g' httpd/000001_openshift_origin_node.conf
|
118
|
+
%endif
|
119
|
+
mv httpd/000001_openshift_origin_node.conf %{buildroot}/etc/httpd/conf.d/
|
120
|
+
|
121
|
+
#%if 0%{?fedora}%{?rhel} <= 6
|
122
|
+
mkdir -p %{buildroot}/etc/rc.d/init.d/
|
123
|
+
cp %{buildroot}%{gem_instdir}/misc/init/openshift-cgroups %{buildroot}/etc/rc.d/init.d/
|
124
|
+
#%else
|
125
|
+
#mkdir -p %{buildroot}/etc/systemd/system
|
126
|
+
#mv %{buildroot}%{gem_instdir}/misc/services/openshift-cgroups.service %{buildroot}/etc/systemd/system/openshift-cgroups.service
|
127
|
+
#%endif
|
128
|
+
|
129
|
+
# Don't install or package what's left in the misc directory
|
130
|
+
rm -rf %{buildroot}%{gem_instdir}/misc
|
131
|
+
|
132
|
+
%clean
|
133
|
+
rm -rf %{buildroot}
|
134
|
+
|
135
|
+
%files
|
136
|
+
%defattr(-,root,root,-)
|
137
|
+
%doc LICENSE COPYRIGHT
|
138
|
+
%doc %{gem_docdir}
|
139
|
+
%{gem_instdir}
|
140
|
+
%{gem_cache}
|
141
|
+
%{gem_spec}
|
142
|
+
/usr/bin/*
|
143
|
+
/usr/libexec/openshift/lib/setup_pam_fs_limits.sh
|
144
|
+
/usr/libexec/openshift/lib/teardown_pam_fs_limits.sh
|
145
|
+
%config(noreplace) /etc/openshift
|
146
|
+
%config(noreplace) /etc/openshift/node.conf
|
147
|
+
%attr(0750,-,-) /etc/httpd/conf.d/openshift
|
148
|
+
|
149
|
+
%config(noreplace) /etc/httpd/conf.d/000001_openshift_origin_node.conf
|
150
|
+
%attr(0755,-,-) %{appdir}
|
151
|
+
|
152
|
+
#%if 0%{?fedora}%{?rhel} <= 6
|
153
|
+
%attr(0755,-,-) /etc/rc.d/init.d/openshift-cgroups
|
154
|
+
#%else
|
155
|
+
#%attr(0750,-,-) /etc/systemd/system
|
156
|
+
#%endif
|
157
|
+
|
158
|
+
%if 0%{?fedora} >= 15
|
159
|
+
/etc/tmpfiles.d/openshift-run.conf
|
160
|
+
%else
|
161
|
+
# upstart files
|
162
|
+
%attr(0755,-,-) %{_var}/run/openshift
|
163
|
+
%endif
|
164
|
+
|
165
|
+
%post
|
166
|
+
echo "/usr/bin/oo-trap-user" >> /etc/shells
|
167
|
+
|
168
|
+
# copying this file in the post hook so that this file can be replaced by rhc-node
|
169
|
+
# copy this file only if it doesn't already exist
|
170
|
+
if ! [ -f /etc/openshift/resource_limits.conf ]; then
|
171
|
+
cp -f /etc/openshift/resource_limits.template /etc/openshift/resource_limits.conf
|
172
|
+
fi
|
173
|
+
|
174
|
+
%changelog
|
175
|
+
* Wed Dec 12 2012 Adam Miller <admiller@redhat.com> 1.3.1-1
|
176
|
+
- bump_minor_versions for sprint 22 (admiller@redhat.com)
|
177
|
+
|
178
|
+
* Mon Dec 10 2012 Adam Miller <admiller@redhat.com> 1.2.6-1
|
179
|
+
- Merge pull request #1007 from sosiouxme/US3036-origin
|
180
|
+
(openshift+bot@redhat.com)
|
181
|
+
- Adding oo-accept-systems script for verifying all node hosts from the broker.
|
182
|
+
- also verifies cartridge consistency and checks for stale cartridge cache.
|
183
|
+
oo-accept-node sanity checks public_ip and public_hostname. Minor edits to
|
184
|
+
make node.conf easier to understand. (lmeyer@redhat.com)
|
185
|
+
- Fix tests. The file mock was not working. (rmillner@redhat.com)
|
186
|
+
- Post rebase code cleanup. (rmillner@redhat.com)
|
187
|
+
- Proper host name validation. (rmillner@redhat.com)
|
188
|
+
|
189
|
+
* Thu Dec 06 2012 Adam Miller <admiller@redhat.com> 1.2.5-1
|
190
|
+
- bug 884409 (dmcphers@redhat.com)
|
191
|
+
- Merge pull request #1023 from ramr/dev/websockets (openshift+bot@redhat.com)
|
192
|
+
- Fix frontend httpd tests. (ramr@redhat.com)
|
193
|
+
- Node web sockets and http(s) proxy support with spec file and package.
|
194
|
+
(ramr@redhat.com)
|
195
|
+
|
196
|
+
* Wed Dec 05 2012 Adam Miller <admiller@redhat.com> 1.2.4-1
|
197
|
+
- Fix for Bug 883605 (jhonce@redhat.com)
|
198
|
+
- updated gemspecs so they work with scl rpm spec files. (tdawson@redhat.com)
|
199
|
+
|
200
|
+
* Tue Dec 04 2012 Adam Miller <admiller@redhat.com> 1.2.3-1
|
201
|
+
- Merge pull request #1005 from ironcladlou/US2770 (openshift+bot@redhat.com)
|
202
|
+
- Refactor tidy into the node library (ironcladlou@gmail.com)
|
203
|
+
- Bug Fixes. (rmillner@redhat.com)
|
204
|
+
- Move add/remove alias to the node API. (rmillner@redhat.com)
|
205
|
+
|
206
|
+
* Thu Nov 29 2012 Adam Miller <admiller@redhat.com> 1.2.2-1
|
207
|
+
- Move force-stop into the the node library (ironcladlou@gmail.com)
|
208
|
+
- exit code and usage cleanup (dmcphers@redhat.com)
|
209
|
+
- Merge pull request #962 from danmcp/master (openshift+bot@redhat.com)
|
210
|
+
- Merge pull request #905 from kraman/ruby19 (openshift+bot@redhat.com)
|
211
|
+
- add oo-ruby (dmcphers@redhat.com)
|
212
|
+
- F18 compatibility fixes - apache 2.4 - mongo journaling - JDK 7 -
|
213
|
+
parseconfig gem update Bugfix for Bind DNS plugin (kraman@gmail.com)
|
214
|
+
|
215
|
+
* Sat Nov 17 2012 Adam Miller <admiller@redhat.com> 1.2.1-1
|
216
|
+
- bump_minor_versions for sprint 21 (admiller@redhat.com)
|
217
|
+
|
218
|
+
* Thu Nov 15 2012 Adam Miller <admiller@redhat.com> 1.1.7-1
|
219
|
+
- BZ877125 - File attributes on open shift-cgroups init script are incorrect,
|
220
|
+
should be -rwxr-x--- (calfonso@redhat.com)
|
221
|
+
- more ruby1.9 changes (dmcphers@redhat.com)
|
222
|
+
|
223
|
+
* Wed Nov 14 2012 Adam Miller <admiller@redhat.com> 1.1.6-1
|
224
|
+
- Ruby 1.9 compatibility fixes (ironcladlou@gmail.com)
|
225
|
+
- getting specs up to 1.9 sclized (dmcphers@redhat.com)
|
226
|
+
- Merge pull request #886 from rmillner/inhibitidler (dmcphers@redhat.com)
|
227
|
+
- One of the SELinux denials was accessing the locale file via whois which is
|
228
|
+
unnecessary if accessing /etc directly. (rmillner@redhat.com)
|
229
|
+
- specifying rake gem version range (abhgupta@redhat.com)
|
230
|
+
|
231
|
+
* Tue Nov 13 2012 Adam Miller <admiller@redhat.com> 1.1.5-1
|
232
|
+
- Merge remote-tracking branch 'origin-server/master' into BZ874587-origin
|
233
|
+
(bleanhar@redhat.com)
|
234
|
+
- Merge pull request #881 from rmillner/wrongmcs (openshift+bot@redhat.com)
|
235
|
+
- SS -> OPENSHIFT (dmcphers@redhat.com)
|
236
|
+
- Was setting mcs label in the wrong place. (rmillner@redhat.com)
|
237
|
+
- Fix for Bug 875949 (jhonce@redhat.com)
|
238
|
+
- Bug 874587 - CLOUD_NAME in /etc/openshift/node.conf does not work
|
239
|
+
(bleanhar@redhat.com)
|
240
|
+
|
241
|
+
* Mon Nov 12 2012 Adam Miller <admiller@redhat.com> 1.1.4-1
|
242
|
+
- BZ 872379: Dead code cleanup to fix mount parsing problem.
|
243
|
+
(rmillner@redhat.com)
|
244
|
+
|
245
|
+
* Thu Nov 08 2012 Adam Miller <admiller@redhat.com> 1.1.3-1
|
246
|
+
- Merge pull request #857 from jwhonce/dev/bz874712_master
|
247
|
+
(openshift+bot@redhat.com)
|
248
|
+
- Fix for Bug 874712 (jhonce@redhat.com)
|
249
|
+
|
250
|
+
* Thu Nov 08 2012 Adam Miller <admiller@redhat.com> 1.1.2-1
|
251
|
+
- Merge pull request #851 from brenton/no_trace (openshift+bot@redhat.com)
|
252
|
+
- BZ873970, BZ873966 - disabling HTTP TRACE for the Broker, Nodes and Console
|
253
|
+
(bleanhar@redhat.com)
|
254
|
+
- Increase the table sizes to cover 15000 nodes in dev and prod.
|
255
|
+
(rmillner@redhat.com)
|
256
|
+
- BZ872523 - set quota for gear failed if the device name is too long
|
257
|
+
(bleanhar@redhat.com)
|
258
|
+
- Merge pull request #698 from mscherer/fix_doc_node_bin
|
259
|
+
(openshift+bot@redhat.com)
|
260
|
+
- do not use old name in the script help message (mscherer@redhat.com)
|
261
|
+
|
262
|
+
* Thu Nov 01 2012 Adam Miller <admiller@redhat.com> 1.1.1-1
|
263
|
+
- bump_minor_versions for sprint 20 (admiller@redhat.com)
|