Procházet zdrojové kódy

AMBARI-477. Spec file for using installer with php-5.3 (Contributed by Hitesh)

git-svn-id: https://svn.apache.org/repos/asf/incubator/ambari/branches/ambari-186@1347298 13f79535-47bb-0310-9956-ffa450edef68
Vikram Dixit K před 13 roky
rodič
revize
9f88889ecc
2 změnil soubory, kde provedl 158 přidání a 0 odebrání
  1. 2 0
      CHANGES.txt
  2. 156 0
      hmc/package/rpm/hmc-php53.spec

+ 2 - 0
CHANGES.txt

@@ -6,6 +6,8 @@ characters wide.
 
 Release 0.1.x - unreleased
 
+  AMBARI-477. Spec file for using installer with php-5.3 (Hitesh via Vikram)
+
   AMBARI-478. Checkbox in the review and deploy page does not show proper state (Vikram)
 
   AMBARI-476. Undefined offset: 0 in /usr/share/hmc/php/db/HMCDBAccessor.php on line 1030 (Hitesh via Vikram)

+ 156 - 0
hmc/package/rpm/hmc-php53.spec

@@ -0,0 +1,156 @@
+##
+#
+#/*
+# * Licensed to the Apache Software Foundation (ASF) under one
+# * or more contributor license agreements.  See the NOTICE file
+# * distributed with this work for additional information
+# * regarding copyright ownership.  The ASF licenses this file
+# * to you under the Apache License, Version 2.0 (the
+# * "License"); you may not use this file except in compliance
+# * with the License.  You may obtain a copy of the License at
+# *
+# *     http://www.apache.org/licenses/LICENSE-2.0
+# *
+# * Unless required by applicable law or agreed to in writing, software
+# * distributed under the License is distributed on an "AS IS" BASIS,
+# * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# * See the License for the specific language governing permissions and
+# * limitations under the License.
+# */
+
+#
+# RPM Spec file for HMC
+#
+
+Summary: HMC for PHP 5.3
+Name: hmc-php53
+Version: 0.0.1
+URL: http://hortonworks.com
+Release: 2%{?dist}
+License: Apache License, Version 2.0
+Vendor: Hortonworks <hmc-dev-group@hortonworks.com>
+Group: System Environment/Base
+Source: hmc-%{version}.tar.gz
+Source1: hmc.init.in
+Source2: hmc_hdp.repo
+BuildRoot: %{_tmppath}/hmc-%{version}-buildroot
+Requires: php53, php53-process, php53-pdo, sqlite >= 3, httpd, puppet = 2.7.9, pdsh, httpd-devel, ruby-devel, rubygems, mod_passenger, mod_ssl
+%define web_prefixdir %{_prefix}/share/hmc
+%define httpd_confdir %{_sysconfdir}/httpd/conf.d
+%define puppet_master_dir %{_sysconfdir}/puppet/master
+%define hmc_passwd_dir %{_sysconfdir}/hmc
+%define hmc_db_dir %{_var}/db/hmc
+%define hmc_run_dir %{_var}/run/hmc
+%define hmc_log_dir %{_var}/log/hmc
+BuildArch: noarch
+
+%description
+This package provides a Management Console for Hadoop Cluster.
+
+%prep
+%setup -q -n hmc-%{version}
+
+%build
+%pre
+# Make a backup of existing database before installing new package
+if [ -f /var/db/hmc/data/data.db ]; then
+  DATE=`date +%d-%m-%y-%H%M`
+  mv /var/db/hmc/data/data.db /var/db/hmc/data/data.db.$DATE
+fi
+
+
+%install
+# Flush any old RPM build root
+%__rm -rf $RPM_BUILD_ROOT
+%__install -D -m0755 "%{SOURCE1}" "$RPM_BUILD_ROOT/etc/init.d/hmc"
+%__mkdir -p $RPM_BUILD_ROOT/usr/lib/ruby/site_ruby/1.8/puppet/reports/
+%__mkdir -p $RPM_BUILD_ROOT/%{web_prefixdir}/
+%__mkdir -p $RPM_BUILD_ROOT/%{web_prefixdir}/bin/
+%__mkdir -p $RPM_BUILD_ROOT/%{web_prefixdir}/yum_repo/
+%__mkdir -p $RPM_BUILD_ROOT/%{puppet_master_dir}/
+%__mkdir -p $RPM_BUILD_ROOT/%{puppet_master_dir}/manifests
+%__mkdir -p $RPM_BUILD_ROOT/%{web_prefixdir}/
+%__install -d "%{buildroot}%{hmc_db_dir}"
+%__install -d "%{buildroot}%{hmc_log_dir}"
+%__install -d "%{buildroot}%{hmc_run_dir}"
+%__install -d "%{buildroot}%{hmc_run_dir}/downloads"
+%__mkdir -p $RPM_BUILD_ROOT/%{hmc_db_dir}/data
+%__mkdir -p $RPM_BUILD_ROOT/%{hmc_passwd_dir}
+%__mkdir -p $RPM_BUILD_ROOT/%{httpd_confdir}/
+%__cp -rf css $RPM_BUILD_ROOT/%{web_prefixdir}/
+%__cp -rf fonts $RPM_BUILD_ROOT/%{web_prefixdir}/
+%__cp -rf licenses $RPM_BUILD_ROOT/%{web_prefixdir}/
+%__cp -rf db $RPM_BUILD_ROOT/%{web_prefixdir}/
+%__cp -rf html $RPM_BUILD_ROOT/%{web_prefixdir}/
+%__cp -rf ShellScripts $RPM_BUILD_ROOT/%{web_prefixdir}/
+%__cp -rf images $RPM_BUILD_ROOT/%{web_prefixdir}/
+%__cp -rf js $RPM_BUILD_ROOT/%{web_prefixdir}/
+%__cp -rf puppet $RPM_BUILD_ROOT/%{web_prefixdir}/
+%__cp -rf php $RPM_BUILD_ROOT/%{web_prefixdir}/
+%__cp -rf yui-3.5.1 $RPM_BUILD_ROOT/%{web_prefixdir}/
+%__cp -f yuiCombinator.php $RPM_BUILD_ROOT/%{web_prefixdir}/
+%__cp -rf conf $RPM_BUILD_ROOT/%{web_prefixdir}/
+%__cp -rf puppet/manifestloader $RPM_BUILD_ROOT/%{puppet_master_dir}
+%__cp -rf puppet/modules $RPM_BUILD_ROOT/%{puppet_master_dir}
+%__mkdir -p $RPM_BUILD_ROOT/%{puppet_master_dir}/modules/catalog/files
+%__cp -f "%{SOURCE2}" $RPM_BUILD_ROOT/%{web_prefixdir}/yum_repo/
+%__install -D -m0755 puppet/reports/get_revision $RPM_BUILD_ROOT/%{web_prefixdir}/bin
+%__cp -rf puppet/reports/hmcreport.rb $RPM_BUILD_ROOT/usr/lib/ruby/site_ruby/1.8/puppet/reports/
+ 
+
+%post
+if test X"$RPM_INSTALL_PREFIX0" = X"" ; then
+  RPM_INSTALL_PREFIX0="/usr"
+fi
+
+echo "Alias /hdp $RPM_INSTALL_PREFIX0/share/hdp" > /etc/httpd/conf.d/hdp_mon_dashboard.conf
+php $RPM_INSTALL_PREFIX0/share/hmc/php/frontend/initializeHMC.php /var/db/hmc/data/data.db $RPM_INSTALL_PREFIX0/share/hmc/db/schema.dump
+sed -i 's/User\ apache/User\ puppet/g' /etc/httpd/conf/httpd.conf
+chmod 666 /var/db/hmc/data/data.db
+chown -R puppet:apache /var/db/hmc/
+chown -R puppet:apache /var/run/hmc
+chown -R puppet:apache /var/log/hmc
+chown -R puppet:apache /etc/puppet
+mkdir -p /etc/puppet/rack/public
+mkdir -p /etc/puppet/rack/tmp
+touch /var/run/hmc/lockfile
+chown puppet:apache /var/run/hmc/lockfile
+touch /var/run/hmc/lockfile.clusterstate
+chown puppet:apache /var/run/hmc/lockfile.clusterstate
+cp /usr/share/puppet/ext/rack/files/config.ru /etc/puppet/rack
+chown puppet /etc/puppet/rack/config.ru
+
+cp $RPM_INSTALL_PREFIX0/share/hmc/puppet/conf/puppetmaster.conf.template /etc/httpd/conf.d/puppetmaster.conf
+cp $RPM_INSTALL_PREFIX0/share/hmc/conf/hmc.conf /etc/httpd/conf.d/hmc.conf
+host=`hostname -f | tr '[:upper:]' '[:lower:]'`
+sed -i "s/__TODO_HOSTNAME__/$host/g" /etc/httpd/conf.d/puppetmaster.conf
+cp $RPM_INSTALL_PREFIX0/share/hmc/puppet/conf/puppet.conf.template /etc/puppet/puppet.conf
+echo 0 > /selinux/enforce
+htpasswd -mbc /etc/hmc/htpasswd.users hmcadmin hmcadmin &> /dev/null
+#chown apache:apache /var/db/hmc/data/data.db
+chown -R puppet:apache /etc/hmc
+
+%postun
+rm -rf /var/run/hmc/clusters/
+rm -rf /var/lib/puppet/reports/*
+rm -rf /var/lib/puppet/puppet_kick_version.txt
+rm -rf /etc/puppet/master
+rm -rf /var/run/hmc/license
+rm -rf /var/run/hmc/puppetmaster.boot
+
+%files
+%defattr(-,root,root)
+%{web_prefixdir}/*
+/usr/lib/ruby/site_ruby/1.8/puppet/reports/hmcreport.rb
+%config /etc/init.d/hmc
+%{hmc_passwd_dir}*
+%{puppet_master_dir}/*
+%{hmc_db_dir}
+%{hmc_log_dir}
+%{hmc_run_dir}/*
+
+#%clean
+#%__rm -rf $RPM_BUILD_ROOT
+%changelog
+* Wed Apr 04 2012 Hortonworks <ambari-group@hortonworks.com>
+- Initial version