321 lines
11 KiB
RPMSpec
321 lines
11 KiB
RPMSpec
%define name nailgun
|
|
%{!?version: %define version 7.0.0}
|
|
%{!?release: %define release 1}
|
|
|
|
Summary: Nailgun package
|
|
Name: %{name}
|
|
Version: %{version}
|
|
Release: %{release}
|
|
Source0: %{name}-%{version}.tar.gz
|
|
License: Apache
|
|
Group: Development/Libraries
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot
|
|
Prefix: %{_prefix}
|
|
BuildRequires: python-setuptools
|
|
BuildRequires: git
|
|
BuildRequires: nodejs
|
|
BuildArch: noarch
|
|
Requires: python-alembic >= 0.6.2
|
|
Requires: python-amqplib >= 1.0.2
|
|
Requires: python-anyjson >= 0.3.3
|
|
Requires: python-argparse >= 1.2.1
|
|
Requires: python-babel >= 1.3
|
|
Requires: python-crypto >= 2.6.1
|
|
Requires: python-decorator >= 3.4.0
|
|
Requires: python-fysom >= 1.0.11
|
|
Requires: python-iso8601 >= 0.1.9
|
|
Requires: python-jinja2 >= 2.7
|
|
Requires: python-jsonschema >= 2.3.0
|
|
Requires: python-keystoneclient >= 0.11
|
|
Requires: python-keystonemiddleware >= 1.2.0
|
|
Requires: python-kombu >= 1:3.0.16
|
|
Requires: python-mako >= 0.9.1
|
|
Requires: python-markupsafe >= 0.18
|
|
Requires: python-netaddr >= 0.7.10
|
|
Requires: python-netifaces >= 0.8
|
|
Requires: python-oslo-config >= 1:1.2.1
|
|
Requires: python-oslo-serialization >= 1.0.0
|
|
Requires: python-paste >= 1.7.5.1
|
|
Requires: python-ply >= 3.4
|
|
Requires: python-psycopg2 >= 2.5.1
|
|
Requires: python-requests >= 1.2.3
|
|
Requires: python-simplejson >= 3.3.0
|
|
Requires: python-six >= 1.5.2
|
|
Requires: python-sqlalchemy >= 0.7.9
|
|
Requires: python-stevedore >= 0.14
|
|
Requires: python-urllib3 >= 1.7
|
|
Requires: python-webpy >= 0.37
|
|
Requires: python-wsgilog >= 0.3
|
|
Requires: python-wsgiref >= 0.1.2
|
|
Requires: PyYAML >= 3.10
|
|
Requires: python-novaclient >= 2.17.0
|
|
Requires: python-networkx-core >= 1.8.0
|
|
Requires: python-cinderclient >= 1.0.7
|
|
Requires: pydot-ng >= 1.0.0
|
|
Requires: python-ordereddict >= 1.1
|
|
# Workaroud for babel bug
|
|
Requires: pytz
|
|
|
|
BuildRequires: nodejs-bower
|
|
BuildRequires: nodejs-casperjs
|
|
BuildRequires: nodejs-esprima-fb
|
|
BuildRequires: nodejs-event-stream
|
|
BuildRequires: nodejs-glob
|
|
BuildRequires: nodejs-gulp
|
|
BuildRequires: nodejs-gulp-autoprefixer
|
|
BuildRequires: nodejs-gulp-bower
|
|
BuildRequires: nodejs-gulp-filter
|
|
BuildRequires: nodejs-gulp-intermediate
|
|
BuildRequires: nodejs-gulp-jison
|
|
BuildRequires: nodejs-gulp-jscs
|
|
BuildRequires: nodejs-gulp-jshint
|
|
BuildRequires: nodejs-gulp-less
|
|
BuildRequires: nodejs-gulp-lintspaces
|
|
BuildRequires: nodejs-gulp-react
|
|
BuildRequires: nodejs-gulp-replace
|
|
BuildRequires: nodejs-gulp-shell
|
|
BuildRequires: nodejs-gulp-util
|
|
BuildRequires: nodejs-intern
|
|
BuildRequires: nodejs-jshint-stylish
|
|
BuildRequires: nodejs-lodash-node
|
|
BuildRequires: nodejs-main-bower-files
|
|
BuildRequires: nodejs-minimist
|
|
BuildRequires: nodejs-phantomjs
|
|
BuildRequires: nodejs-requirejs
|
|
BuildRequires: nodejs-rimraf
|
|
BuildRequires: nodejs-run-sequence
|
|
BuildRequires: nodejs-selenium-standalone
|
|
BuildRequires: nodejs-uglify-js
|
|
BuildRequires: nodejs-libjs-jquery
|
|
BuildRequires: nodejs-libjs-js-cookie
|
|
BuildRequires: nodejs-libjs-classnames
|
|
BuildRequires: nodejs-libjs-react
|
|
BuildRequires: nodejs-libjs-requirejs
|
|
BuildRequires: nodejs-libjs-requirejs-plugins
|
|
BuildRequires: nodejs-libjs-requirejs-text
|
|
BuildRequires: nodejs-libjs-require-css
|
|
BuildRequires: nodejs-libjs-jsx-requirejs-plugin
|
|
BuildRequires: nodejs-libjs-routefilter
|
|
BuildRequires: nodejs-libjs-lodash
|
|
BuildRequires: nodejs-libjs-autoNumeric
|
|
BuildRequires: nodejs-libjs-backbone
|
|
BuildRequires: nodejs-libjs-backbone.stickit
|
|
BuildRequires: nodejs-libjs-i18next
|
|
BuildRequires: nodejs-libjs-less
|
|
BuildRequires: nodejs-libjs-bootstrap
|
|
BuildRequires: nodejs-libjs-open-sans-fontface
|
|
BuildRequires: nodejs-libjs-react-dnd
|
|
BuildRequires: nodejs-libjs-es5-shim
|
|
BuildRequires: nodejs-libjs-sinon
|
|
BuildRequires: nodejs-libjs-underscore
|
|
|
|
%description
|
|
Nailgun package
|
|
|
|
%prep
|
|
%setup -cq -n %{name}-%{version}
|
|
|
|
cp -R /usr/lib/node_modules/ %{_builddir}/%{name}-%{version}/nailgun/node_modules/
|
|
cp -R /usr/lib/bower_components/ %{_builddir}/%{name}-%{version}/nailgun/bower_components/
|
|
|
|
%build
|
|
cd %{_builddir}/%{name}-%{version}/nailgun && %{_builddir}/%{name}-%{version}/nailgun/node_modules/gulp/bin/gulp.js build --static-dir=compressed_static
|
|
[ -n %{_builddir} ] && rm -rf %{_builddir}/%{name}-%{version}/nailgun/static
|
|
mv %{_builddir}/%{name}-%{version}/nailgun/compressed_static %{_builddir}/%{name}-%{version}/nailgun/static
|
|
cd %{_builddir}/%{name}-%{version}/nailgun && python setup.py build
|
|
cd %{_builddir}/%{name}-%{version}/network_checker && python setup.py build
|
|
cd %{_builddir}/%{name}-%{version}/shotgun && python setup.py build
|
|
cd %{_builddir}/%{name}-%{version}/fuelmenu && python setup.py build
|
|
cd %{_builddir}/%{name}-%{version}/fuel_upgrade_system/fuel_package_updates && python setup.py build
|
|
|
|
%install
|
|
cd %{_builddir}/%{name}-%{version}/nailgun && python setup.py install --single-version-externally-managed -O1 --root=$RPM_BUILD_ROOT --record=%{_builddir}/%{name}-%{version}/nailgun/INSTALLED_FILES
|
|
cd %{_builddir}/%{name}-%{version}/network_checker && python setup.py install --single-version-externally-managed -O1 --root=$RPM_BUILD_ROOT --record=%{_builddir}/%{name}-%{version}/network_checker/INSTALLED_FILES
|
|
cd %{_builddir}/%{name}-%{version}/shotgun && python setup.py install --single-version-externally-managed -O1 --root=$RPM_BUILD_ROOT --record=%{_builddir}/%{name}-%{version}/shotgun/INSTALLED_FILES
|
|
cd %{_builddir}/%{name}-%{version}/fuelmenu && python setup.py install --single-version-externally-managed -O1 --root=$RPM_BUILD_ROOT --record=%{_builddir}/%{name}-%{version}/fuelmenu/INSTALLED_FILES
|
|
cd %{_builddir}/%{name}-%{version}/fuel_upgrade_system/fuel_package_updates && python setup.py install --single-version-externally-managed -O1 --root=$RPM_BUILD_ROOT --record=%{_builddir}/%{name}-%{version}/fuel_upgrade_system/fuel_package_updates/INSTALLED_FILES
|
|
mkdir -p %{buildroot}/opt/nailgun/bin
|
|
mkdir -p %{buildroot}/etc/cron.d
|
|
mkdir -p %{buildroot}/etc/fuel
|
|
install -d -m 755 %{buildroot}/etc/fuel
|
|
install -m 600 %{_builddir}/%{name}-%{version}/fuelmenu/fuelmenu/settings.yaml %{buildroot}/etc/fuel/astute.yaml
|
|
install -m 755 %{_builddir}/%{name}-%{version}/bin/agent %{buildroot}/opt/nailgun/bin/agent
|
|
install -m 755 %{_builddir}/%{name}-%{version}/bin/fencing-agent.rb %{buildroot}/opt/nailgun/bin/fencing-agent.rb
|
|
install -m 644 %{_builddir}/%{name}-%{version}/bin/nailgun-agent.cron %{buildroot}/etc/cron.d/nailgun-agent
|
|
install -m 644 %{_builddir}/%{name}-%{version}/bin/fencing-agent.cron %{buildroot}/etc/cron.d/fencing-agent
|
|
install -p -D -m 755 %{_builddir}/%{name}-%{version}/bin/download-debian-installer %{buildroot}%{_bindir}/download-debian-installer
|
|
|
|
|
|
%clean
|
|
rm -rf $RPM_BUILD_ROOT
|
|
|
|
%files -f %{_builddir}/%{name}-%{version}/nailgun/INSTALLED_FILES
|
|
%defattr(0755,root,root)
|
|
|
|
|
|
%package -n nailgun-agent
|
|
|
|
Summary: Nailgun startup agent
|
|
Version: %{version}
|
|
Release: %{release}
|
|
License: GPLv2
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}
|
|
URL: http://mirantis.com
|
|
Requires: rubygem-rethtool
|
|
Requires: rubygem-ohai
|
|
Requires: rubygem-httpclient
|
|
Requires: rubygem-ipaddress
|
|
Requires: rubygem-json
|
|
Requires: rubygems
|
|
Requires: ethtool
|
|
|
|
%description -n nailgun-agent
|
|
Nailgun startup agent that register node at Nailgun and make a little setup
|
|
of other services.
|
|
|
|
%files -n nailgun-agent
|
|
/etc/cron.d/nailgun-agent
|
|
/opt/nailgun/bin/agent
|
|
|
|
%package -n nailgun-net-check
|
|
|
|
Summary: Network checking package for CentOS6.x
|
|
Version: %{version}
|
|
Release: %{release}
|
|
License: GPLv2
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
|
|
URL: http://github.com/Mirantis
|
|
Requires: vconfig
|
|
Requires: scapy
|
|
Requires: python-argparse
|
|
Requires: python-pypcap
|
|
Requires: python-cliff-tablib
|
|
Requires: python-stevedore
|
|
Requires: python-daemonize
|
|
Requires: python-yaml
|
|
Requires: tcpdump
|
|
Requires: python-requests
|
|
Requires: python-netifaces
|
|
|
|
|
|
%description -n nailgun-net-check
|
|
This is a network tool that helps to verify networks connectivity
|
|
between hosts in network.
|
|
|
|
%files -n nailgun-net-check -f %{_builddir}/%{name}-%{version}/network_checker/INSTALLED_FILES
|
|
%defattr(-,root,root)
|
|
|
|
%package -n shotgun
|
|
|
|
Summary: Shotgun package
|
|
Version: %{version}
|
|
Release: %{release}
|
|
URL: http://mirantis.com
|
|
License: Apache
|
|
Group: Development/Libraries
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot
|
|
Prefix: %{_prefix}
|
|
BuildArch: noarch
|
|
Requires: postgresql
|
|
Requires: python-fabric >= 1.10.0
|
|
Requires: python-argparse
|
|
Requires: tar
|
|
Requires: gzip
|
|
Requires: bzip2
|
|
Requires: openssh-clients
|
|
Requires: xz
|
|
|
|
%description -n shotgun
|
|
Shotgun package.
|
|
|
|
%files -n shotgun -f %{_builddir}/%{name}-%{version}/shotgun/INSTALLED_FILES
|
|
%defattr(-,root,root)
|
|
|
|
%package -n fuelmenu
|
|
|
|
Summary: Console utility for pre-configuration of Fuel server
|
|
Version: %{version}
|
|
Release: %{release}
|
|
License: Apache
|
|
Group: Development/Libraries
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
|
|
Prefix: %{_prefix}
|
|
BuildArch: noarch
|
|
Vendor: Matthew Mosesohn <mmosesohn@mirantis.com>
|
|
BuildRequires: python-setuptools
|
|
Requires: bind-utils
|
|
Requires: nailgun-net-check
|
|
Requires: ntp
|
|
Requires: python-setuptools
|
|
Requires: python-netaddr
|
|
Requires: python-netifaces
|
|
Requires: python-urwid >= 1.1.0
|
|
Requires: PyYAML
|
|
Requires: python-ordereddict
|
|
|
|
%description -n fuelmenu
|
|
Summary: Console utility for pre-configuration of Fuel server
|
|
|
|
%files -n fuelmenu -f %{_builddir}/%{name}-%{version}/fuelmenu/INSTALLED_FILES
|
|
%defattr(-,root,root)
|
|
%config(noreplace) /etc/fuel/astute.yaml
|
|
|
|
|
|
%package -n fencing-agent
|
|
Summary: Fencing agent
|
|
Version: %{version}
|
|
Release: %{release}
|
|
License: GPLv2
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}
|
|
URL: http://mirantis.com
|
|
Requires: rubygem-ohai
|
|
|
|
%description -n fencing-agent
|
|
Fuel fencing agent
|
|
|
|
%files -n fencing-agent
|
|
/opt/nailgun/bin/fencing-agent.rb
|
|
/etc/cron.d/fencing-agent
|
|
%defattr(-,root,root)
|
|
|
|
|
|
%package -n fuel-package-updates
|
|
|
|
Summary: Fuel package update downloader
|
|
Version: %{version}
|
|
Release: %{release}
|
|
License: Apache
|
|
Group: Development/Libraries
|
|
Prefix: %{_prefix}
|
|
BuildArch: noarch
|
|
Requires: python-keystoneclient >= 0.11
|
|
Requires: python-keystonemiddleware >= 1.2.0
|
|
Requires: python-ordereddict >= 1.1
|
|
|
|
%description -n fuel-package-updates
|
|
Command line utility to download apt/yum repositories for Fuel
|
|
|
|
%files -n fuel-package-updates -f %{_builddir}/%{name}-%{version}/fuel_upgrade_system/fuel_package_updates/INSTALLED_FILES
|
|
%defattr(0755,root,root)
|
|
|
|
%package -n fuel-provisioning-scripts
|
|
|
|
Summary: Fuel provisioning scripts
|
|
Version: %{version}
|
|
Release: %{release}
|
|
URL: http://mirantis.com
|
|
License: Apache
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-buildroot
|
|
Prefix: %{_prefix}
|
|
BuildArch: noarch
|
|
Requires: wget
|
|
|
|
%description -n fuel-provisioning-scripts
|
|
Fuel provisioning scripts package.
|
|
This is a part of Fuel All-in-one Controle plane
|
|
for Openstack. For more info go to http://wiki.openstack.org/Fuel
|
|
|
|
%files -n fuel-provisioning-scripts
|
|
%defattr(-,root,root)
|
|
%{_bindir}/download-debian-installer
|