Search
j0ke.net Open Build Service
>
Projects
>
virtualization
:
Cloud
:
OpenNebula
:
3.4
>
opennebula3
> opennebula.spec
Sign Up
|
Log In
Username
Password
Cancel
Overview
Repositories
Revisions
Requests
Users
Advanced
Attributes
Meta
File opennebula.spec of Package opennebula3 (Revision 2)
Currently displaying revision
2
,
show latest
# # spec file for package opennebula (Version 3.4.1) # # Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # Name: opennebula Version: 3.4.1 Release: 1 License: Apache License version 2.0 Summary: Elastic Utility Computing Architecture URL: http://www.opennebula.org Group: Productivity/Networking/System Source0: %{name}-%{version}.tar.bz2 Source1: sunstone.init Source2: ozones.init Patch: openneb_64bitlib.patch Patch1: openneb_creatPIDdir.patch Patch2: openneb_LSBhead.patch Patch3: openneb_fixWritePID.patch BuildRequires: post-build-checks BuildRequires: gcc-c++ BuildRequires: libcurl-devel BuildRequires: libxml2-devel BuildRequires: libxmlrpc-c-devel >= 1.06 BuildRequires: libopenssl-devel >= 0.9 BuildRequires: openssh BuildRequires: pkg-config BuildRequires: pwgen BuildRequires: ruby >= 1.8.6 BuildRequires: scons >= 0.97 BuildRequires: sqlite3-devel >= 3.5.2 BuildRequires: xmlrpc-c >= 1.06 BuildRequires: mysql-devel %if 0%{?suse_version} > 1020 BuildRequires: fdupes %endif Requires: openssl >= 0.9 Requires: ruby >= 1.8.6 Requires: rubygem-libxml-ruby Requires: openssh Requires: pwgen Requires: sqlite3 >= 3.5.2 Requires: rubygem-nokogiri Requires: rubygem-sqlite3 Requires: xmlrpc-c >= 1.06 Requires: rubygem-json Requires: rubygem-thin Requires: rubygem-sinatra Requires: rubygem-sequel Obsoletes: opennebula-driver-vmware Provides: opennebula-driver-vmware Recommends: nfs-kernel-server Recommends: ypserv BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root %description OpenNebula.org is an open-source project aimed at building the industry standard open source cloud computing tool to manage the complexity and heterogeneity of distributed data center infrastructures. The OpenNebula.org Project is maintained and driven by the community. The OpenNebula.org community has thousands of users, contributors, and supporters, who interact through various online email lists, blogs and innovative projects to support each other. %package devel Summary: Development files for %{name} Group: Development/Libraries/Other Requires: %{name} = %{version} %description devel The %{name} devel package contains man pages and examples. %package sunstone Summary: Web-based UI to manage OpenNebula Group: Productivity/Networking/System Requires: %{name} = %{version} Requires: rubygem-sequel Requires: rubygem-json Requires: rubygem-sinatra Requires: rubygem-thin %description sunstone OpenNebula Sunstone is the web-based graphical operations center to manage all the resources of an OpenNebula cloud. It allows administrators and users to easily view and manage their physical machines, virtual machines, storage, networks etc. %package ozones Summary: Web-based UI to manage OpenNebula zones and Virtual Data Centers (VDCs) Group: Productivity/Networking/System Requires: %{name} = %{version} Requires: apache2 Requires: rubygems Requires: rubygem-datamapper Requires: rubygem-dm-sqlite-adapter Requires: rubygem-json Requires: rubygem-openssl-nonblock Requires: rubygem-rack Requires: rubygem-sequel Requires: rubygem-sinatra Requires: rubygem-thin %description ozones The OpenNebula Zones component (oZones) allows for the centralized management of multiple instances of OpenNebula (zones), managing in turn potentially different administrative domains. The module is run by the oZones administrator, with capacity to grant access to the different zones to particular users. These zones can be further compartmentalized by grouping physical hosts in Virtual Data Centers (VDCs), featuring a VDC administrator that can create new users inside the VDC, as well as virtual networks, images, VM templates, etc. VDC admin and users access the zone through a reverse proxy, so they do not need to know the endpoint of the zone, but rather the address of the oZones module and the VDC where they belong to. %prep %setup -q %patch %patch1 %patch2 %patch3 %build scons sqlite_db=/usr xmlrpc=/usr mysql=yes %install export DESTDIR=%{buildroot} install.sh # Move the initscript %{__mkdir} %{buildroot}/etc/init.d %{__mv} %{buildroot}/usr/bin/one %{buildroot}/etc/init.d install -p -D -m 755 %{SOURCE1} %{buildroot}%{_initrddir}/sunstone install -p -D -m 755 %{SOURCE2} %{buildroot}%{_initrddir}/ozones %if 0%{?suse_version} > 1020 %fdupes $RPM_BUILD_ROOT/var/lib/one %fdupes $RPM_BUILD_ROOT/usr/lib/one %endif %preun %stop_on_removal one %postun %insserv_cleanup %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root,-) %doc LICENSE NOTICE README.md %dir %{_sysconfdir}/one %config(noreplace) %{_sysconfdir}/one/acctd.conf %dir %{_sysconfdir}/one/auth %config(noreplace) %{_sysconfdir}/one/auth/quota.conf %config(noreplace) %{_sysconfdir}/one/auth/ldap_auth.conf %config(noreplace) %{_sysconfdir}/one/auth/x509_auth.conf %config(noreplace) %{_sysconfdir}/one/auth/server_x509_auth.conf %config(noreplace) %{_sysconfdir}/one/defaultrc %dir %{_sysconfdir}/one/ec2query_templates %config %{_sysconfdir}/one/ec2query_templates/m1.small.erb %config(noreplace) %{_sysconfdir}/one/econe.conf %dir %{_sysconfdir}/one/hm %config(noreplace) %{_sysconfdir}/one/hm/hmrc %dir %{_sysconfdir}/one/im_ec2 %config(noreplace) %{_sysconfdir}/one/im_ec2/im_ec2.conf %config(noreplace) %{_sysconfdir}/one/im_ec2/im_ec2rc %config(noreplace) %{_sysconfdir}/one/occi-server.conf %dir %{_sysconfdir}/one/occi_templates %config %{_sysconfdir}/one/occi_templates/*.erb %config(noreplace) %{_sysconfdir}/one/oned.conf %dir %{_sysconfdir}/one/tm_dummy %config(noreplace) %{_sysconfdir}/one/tm_dummy/tm_dummy.conf %config(noreplace) %{_sysconfdir}/one/tm_dummy/tm_dummyrc %dir %{_sysconfdir}/one/tm_lvm %config(noreplace) %{_sysconfdir}/one/tm_lvm/tm_lvm.conf %config(noreplace) %{_sysconfdir}/one/tm_lvm/tm_lvmrc %dir %{_sysconfdir}/one/tm_ssh %config(noreplace) %{_sysconfdir}/one/tm_ssh/tm_ssh.conf %config(noreplace) %{_sysconfdir}/one/tm_ssh/tm_sshrc %dir %{_sysconfdir}/one/vmm_ec2 %config(noreplace) %{_sysconfdir}/one/vmm_ec2/vmm_ec2.conf %config(noreplace) %{_sysconfdir}/one/vmm_ec2/vmm_ec2rc %dir %{_sysconfdir}/one/cli %config %{_sysconfdir}/one/cli/*.yaml %{_sysconfdir}/one/group.default %config(noreplace) %{_sysconfdir}/one/ozones-server.conf %config(noreplace) %{_sysconfdir}/one/sunstone-server.conf %{_sysconfdir}/one/sunstone-plugins.yaml %dir %{_sysconfdir}/one/tm_shared %config(noreplace) %{_sysconfdir}/one/tm_shared/tm_shared.conf %config(noreplace) %{_sysconfdir}/one/tm_shared/tm_sharedrc %dir %{_sysconfdir}/one/vmm_exec %config(noreplace) %{_sysconfdir}/one/vmm_exec/vmm_exec_*.conf %config(noreplace) %{_sysconfdir}/one/vmm_exec/vmm_execrc %dir %{_sysconfdir}/one/image %config(noreplace) %{_sysconfdir}/one/image/fs.conf %config(noreplace) %{_sysconfdir}/one/sched.conf %dir %{_sysconfdir}/one/tm_vmware %config(noreplace) %{_sysconfdir}/one/tm_vmware/tm_vmware.conf %config(noreplace) %{_sysconfdir}/one/vmwarerc %{_datadir}/one/install_gems %{_datadir}/one/install_novnc.sh %{_bindir}/econe-describe-images %{_bindir}/econe-describe-instances %{_bindir}/econe-register %{_bindir}/econe-run-instances %{_bindir}/econe-server %{_bindir}/econe-terminate-instances %{_bindir}/econe-upload %{_bindir}/mm_sched %{_bindir}/occi-compute %{_bindir}/occi-network %{_bindir}/occi-server %{_bindir}/occi-storage %{_bindir}/oneacct %{_bindir}/oneacctd %{_bindir}/oneacl %{_bindir}/oned %{_bindir}/onedb %{_bindir}/onegroup %{_bindir}/onehost %{_bindir}/oneimage %{_bindir}/onequota %{_bindir}/onetemplate %{_bindir}/oneuser %{_bindir}/onevdc %{_bindir}/onevm %{_bindir}/onevnet %{_bindir}/onezone %{_bindir}/tty_expect /usr/lib/one/sh/* /usr/lib/one/mads/* /usr/lib/one/ruby/* /usr/lib/one/tm_commands/* /var/lib/one/* /etc/init.d/one %dir /usr/lib/one %dir /usr/lib/one/sh %dir /usr/lib/one/mads %dir /usr/lib/one/ruby %dir /usr/lib/one/tm_commands %dir /var/lib/one %dir %{_datadir}/one %files devel %defattr(-,root,root) %{_mandir}/man1/* %{_datadir}/one/examples/* %dir %{_datadir}/one/examples %files sunstone %defattr(-,root,root,-) /usr/lib/one/sunstone/* /etc/init.d/sunstone %{_bindir}/sunstone-server %dir /usr/lib/one/sunstone %files ozones %defattr(-,root,root,-) /usr/lib/one/ozones/* /etc/init.d/ozones %{_bindir}/ozones-server %dir /usr/lib/one/ozones %pre # cloud administrator setup if ! getent passwd oneadmin &> /dev/null ; then echo "Creating oneadmin user" /usr/sbin/groupadd cloud ONEPWD=$(/usr/bin/pwgen 40 1) /usr/sbin/useradd -c "OpenNebula Cloud Admin" -d /var/lib/one -g cloud -p $ONEPWD oneadmin fi %post if [ ! -d /var/lib/one/.ssh ] ; then %{__mkdir} /var/lib/one/.ssh fi # Setup the ssh infrastructure for the cloud if [ ! -f /var/lib/one/.ssh/id_rsa ]; then /usr/bin/ssh-keygen -q -t rsa -f /var/lib/one/.ssh/id_rsa -N '' fi /bin/cp /var/lib/one/.ssh/id_rsa.pub /var/lib/one/.ssh/authorized_keys echo "Host *" >> /var/lib/one/.ssh/config echo " StrictHostKeyChecking no" >> /var/lib/one/.ssh/config # set the ownership of the management scripts /bin/chown -R oneadmin:cloud /var/lib/one if [ ! -d /var/log/one ]; then %{__mkdir} /var/log/one fi if [ ! -d /var/lock/one ]; then %{__mkdir} /var/lock/one fi /bin/chown -R oneadmin:cloud /var/log/one /bin/chown -R oneadmin:cloud /var/lock/one %changelog * Wed Dec 22 2010 Robert Schweikert <rschweikert@novell.com> - - Initial build.