From 966052d1598ba596f1fee879790e75fb778cfe1f Mon Sep 17 00:00:00 2001 From: Saul Wold Date: Mon, 16 Sep 2019 10:51:03 -0700 Subject: [PATCH] Add spec & change files for openSUSE These will be used with the Open Build Service (OBS) an _service will be used to automagically generate the tarball. OBS is a generic system to build and distribute binary packages from sources [0], StarlingX OBS Project: - Cloud:starlingx:2.0 [1] [0] openbuildservice.org [1] https://build.opensuse.org/project/show/Cloud:StarlingX:2.0 Story: 2006508 Task: 36650 Task: 36651 Task: 36652 Task: 36653 Change-Id: Ie59e8403a6f3173a678f5fd1cd5cf03df4a7e961 Signed-off-by: Saul Wold --- storageconfig/opensuse/storageconfig.changes | 4 + storageconfig/opensuse/storageconfig.spec | 67 +++++++ sysinv/cgts-client/opensuse/cgts-client.spec | 4 +- .../opensuse/sysinv-agent.changes | 4 + .../sysinv-agent/opensuse/sysinv-agent.spec | 63 +++++++ sysinv/sysinv/opensuse/sysinv.changes | 9 + sysinv/sysinv/opensuse/sysinv.spec | 170 ++++++++++++++++++ tsconfig/opensuse/tsconfig.changes | 4 + tsconfig/opensuse/tsconfig.spec | 50 ++++++ 9 files changed, 373 insertions(+), 2 deletions(-) create mode 100644 storageconfig/opensuse/storageconfig.changes create mode 100644 storageconfig/opensuse/storageconfig.spec create mode 100644 sysinv/sysinv-agent/opensuse/sysinv-agent.changes create mode 100644 sysinv/sysinv-agent/opensuse/sysinv-agent.spec create mode 100644 sysinv/sysinv/opensuse/sysinv.changes create mode 100644 sysinv/sysinv/opensuse/sysinv.spec create mode 100644 tsconfig/opensuse/tsconfig.changes create mode 100644 tsconfig/opensuse/tsconfig.spec diff --git a/storageconfig/opensuse/storageconfig.changes b/storageconfig/opensuse/storageconfig.changes new file mode 100644 index 0000000000..c0986bf066 --- /dev/null +++ b/storageconfig/opensuse/storageconfig.changes @@ -0,0 +1,4 @@ +------------------------------------------------------------------- +Thu Jun 13 08:14:42 UTC 2019 - xe1gyq@gmail.com + +- 1.0 Initial Commit diff --git a/storageconfig/opensuse/storageconfig.spec b/storageconfig/opensuse/storageconfig.spec new file mode 100644 index 0000000000..04880e03d1 --- /dev/null +++ b/storageconfig/opensuse/storageconfig.spec @@ -0,0 +1,67 @@ +%define local_etc_initd /etc/init.d/ +%define local_etc_goenabledd /etc/goenabled.d/ +%define debug_package %{nil} + +Name: storageconfig +Version: 1.0 +Release: 1 +License: Apache-2.0 +Summary: Initial Storage Node Configuration +Url: https://opendev.org/starlingx/config +Group: Development/Tools/Other +Source: %{name}-%{version}.tar.gz + +BuildRequires: systemd-devel +Requires: systemd +BuildRequires: insserv-compat + +BuildArch: noarch + +%description +StarlingX initial storage node configuration + +%prep +%setup -n %{name}-%{version}/%{name} + +%build + +%install +make install \ + INITDDIR=%{buildroot}%{local_etc_initd} \ + GOENABLEDDIR=%{buildroot}%{local_etc_goenabledd} \ + SYSTEMDDIR=%{buildroot}%{_unitdir} + +install -dD -m 0755 %{buildroot}%{_sbindir} +ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcstorageconfig +ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rcstorage_config + +%pre +%service_add_pre storageconfig.service + +%post +%service_add_post storageconfig.service + +%preun +%stop_on_removal +%service_del_preun storageconfig.service + +%postun +%restart_on_update +%insserv_cleanup +%service_del_postun storageconfig.service + +%clean +rm -rf %{buildroot} + +%files +%defattr(-,root,root,-) +%doc LICENSE +%dir %{local_etc_initd}/ +%dir %{local_etc_goenabledd}/ +%{local_etc_initd}/* +%{local_etc_goenabledd}/* +%{_sbindir}/rcstorageconfig +%{_sbindir}/rcstorage_config +%{_unitdir}/* + +%changelog diff --git a/sysinv/cgts-client/opensuse/cgts-client.spec b/sysinv/cgts-client/opensuse/cgts-client.spec index 3f7dccd71b..5e7b970800 100644 --- a/sysinv/cgts-client/opensuse/cgts-client.spec +++ b/sysinv/cgts-client/opensuse/cgts-client.spec @@ -5,7 +5,7 @@ Release: 2 License: Apache-2.0 Group: System/Base URL: https://www.starlingx.io -Source0: config-1.0.tar.gz +Source0: %{name}-%{version}.tar.gz BuildRequires: python-setuptools BuildRequires: python-pbr @@ -28,7 +28,7 @@ System Client and command line interface %define debug_package %{nil} %prep -%setup -n config/sysinv/cgts-client/cgts-client +%setup -n %{name}-%{version}/%{name} # Remove bundled egg-info rm -rf *.egg-info diff --git a/sysinv/sysinv-agent/opensuse/sysinv-agent.changes b/sysinv/sysinv-agent/opensuse/sysinv-agent.changes new file mode 100644 index 0000000000..a364d4dbfa --- /dev/null +++ b/sysinv/sysinv-agent/opensuse/sysinv-agent.changes @@ -0,0 +1,4 @@ +------------------------------------------------------------------- +Fri Jun 7 01:08:32 UTC 2019 - sgw@linux.intel.com + +- 1.0 Initial Commit diff --git a/sysinv/sysinv-agent/opensuse/sysinv-agent.spec b/sysinv/sysinv-agent/opensuse/sysinv-agent.spec new file mode 100644 index 0000000000..ccdc0e400f --- /dev/null +++ b/sysinv/sysinv-agent/opensuse/sysinv-agent.spec @@ -0,0 +1,63 @@ +Summary: StarlingX Host Inventory Init Package +Name: sysinv-agent +Version: 1.0 +Release: %{tis_patch_ver}%{?_tis_dist} +License: Apache-2.0 +Group: Development/Tools/Other +URL: https://opendev.org/starlingx/config +Source0: %{name}-%{version}.tar.gz + +BuildRequires: systemd-devel + +BuildArch: noarch + +%description +StarlingX Host Inventory Init Agent Package + +%define local_etc_initd /etc/init.d/ +%define local_etc_pmond /etc/pmon.d/ + +%define debug_package %{nil} + +%prep +%setup + +%build + +%install +# compute init scripts +install -d -m 755 %{buildroot}%{local_etc_initd} +install -p -D -m 755 sysinv-agent %{buildroot}%{local_etc_initd}/sysinv-agent + +install -d -m 755 %{buildroot}%{local_etc_pmond} +install -p -D -m 644 sysinv-agent.conf %{buildroot}%{local_etc_pmond}/sysinv-agent.conf +install -p -D -m 644 sysinv-agent.service %{buildroot}%{_unitdir}/sysinv-agent.service + +#%%post +#/usr/bin/systemctl enable sysinv-agent.service >/dev/null 2>&1 + +%clean +rm -rf $RPM_BUILD_ROOT + +%pre +%service_add_pre sysinv-agent.service sysinv-agent.target + +%post +%service_add_post sysinv-agent.service sysinv-agent.target + +%preun +%service_del_preun sysinv-agent.service sysinv-agent.target + +%postun +%service_del_postun sysinv-agent.service sysinv-agent.target + + +%files +%defattr(-,root,root,-) +%doc LICENSE +%dir %{local_etc_pmond} +%{local_etc_initd}/sysinv-agent +%config %{local_etc_pmond}/sysinv-agent.conf +%{_unitdir}/sysinv-agent.service + +%changelog diff --git a/sysinv/sysinv/opensuse/sysinv.changes b/sysinv/sysinv/opensuse/sysinv.changes new file mode 100644 index 0000000000..4c68dbc485 --- /dev/null +++ b/sysinv/sysinv/opensuse/sysinv.changes @@ -0,0 +1,9 @@ +------------------------------------------------------------------- +Thu Jun 20 17:16:06 UTC 2019 - Marcela Rosales + +- Modify Requires: use python2-* for python packages + +------------------------------------------------------------------- +Tue Jun 4 23:37:05 UTC 2019 - sgw@linux.intel.com + +- Initial Commit diff --git a/sysinv/sysinv/opensuse/sysinv.spec b/sysinv/sysinv/opensuse/sysinv.spec new file mode 100644 index 0000000000..c917516796 --- /dev/null +++ b/sysinv/sysinv/opensuse/sysinv.spec @@ -0,0 +1,170 @@ +Summary: System Inventory +Name: sysinv +Version: 1.0 +Release: %{tis_patch_ver}%{?_tis_dist} +License: Apache-2.0 +Group: Development/Tools/Other +URL: https://opendev.org/starlingx/update +Source0: %{name}-%{version}.tar.gz + +BuildRequires: python-setuptools +BuildRequires: python-pbr +BuildRequires: python2-pip +BuildRequires: systemd +Requires: python-parted +Requires: python2-docker +Requires: python2-eventlet +Requires: python2-ipaddr +Requires: python2-keyring +Requires: python2-kubernetes +Requires: python2-netaddr +Requires: python2-pyudev +Requires: python2-pbr +Requires: python2-WebTest +Requires: python2-WSME +Requires: python2-six +Requires: python2-mox3 +Requires: python2-oslo.config +Requires: python2-oslo.concurrency +Requires: python2-oslo.db +Requires: python2-oslo.log +Requires: python2-oslo.utils +Requires: python2-pecan +Requires: tsconfig + +%description +StarlingX System Inventory + +%define local_bindir /usr/bin/ +%define local_etc_goenabledd /etc/goenabled.d/ +%define local_etc_sysinv /etc/sysinv/ +%define local_etc_motdd /etc/motd.d/ +%define pythonroot /usr/lib64/python2.7/site-packages +%define ocf_resourced /usr/lib/ocf/resource.d + +%define debug_package %{nil} + +%prep +%setup -n %{name}-%{version}/%{name} + +# Remove bundled egg-info +rm -rf *.egg-info + +%build +export PBR_VERSION=%{version} +%{__python} setup.py build + +%install +export PBR_VERSION=%{version} +%{__python} setup.py install --root=%{buildroot} \ + --install-lib=%{pythonroot} \ + --prefix=/usr \ + --install-data=/usr/share \ + --single-version-externally-managed + +install -d -m 755 %{buildroot}%{local_etc_goenabledd} +install -p -D -m 755 etc/sysinv/sysinv_goenabled_check.sh %{buildroot}%{local_etc_goenabledd}/sysinv_goenabled_check.sh + +install -d -m 755 %{buildroot}%{local_etc_sysinv} +install -p -D -m 644 etc/sysinv/policy.json %{buildroot}%{local_etc_sysinv}/policy.json +install -p -D -m 640 etc/sysinv/profileSchema.xsd %{buildroot}%{local_etc_sysinv}/profileSchema.xsd + +install -p -D -m 644 etc/sysinv/crushmap-storage-model.txt %{buildroot}%{local_etc_sysinv}/crushmap-storage-model.txt +install -p -D -m 644 etc/sysinv/crushmap-controller-model.txt %{buildroot}%{local_etc_sysinv}/crushmap-controller-model.txt +install -p -D -m 644 etc/sysinv/crushmap-aio-sx.txt %{buildroot}%{local_etc_sysinv}/crushmap-aio-sx.txt + +install -d -m 755 %{buildroot}%{local_etc_motdd} +install -p -D -m 755 etc/sysinv/motd-system %{buildroot}%{local_etc_motdd}/10-system + +install -d -m 755 %{buildroot}%{local_etc_sysinv}/upgrades +install -p -D -m 755 etc/sysinv/delete_load.sh %{buildroot}%{local_etc_sysinv}/upgrades/delete_load.sh + +install -m 755 -p -D scripts/sysinv-api %{buildroot}/usr/lib/ocf/resource.d/platform/sysinv-api +install -m 755 -p -D scripts/sysinv-conductor %{buildroot}/usr/lib/ocf/resource.d/platform/sysinv-conductor + +install -m 644 -p -D scripts/sysinv-api.service %{buildroot}%{_unitdir}/sysinv-api.service +install -m 644 -p -D scripts/sysinv-conductor.service %{buildroot}%{_unitdir}/sysinv-conductor.service + +#install -p -D -m 755 %%{buildroot}/usr/bin/sysinv-api %%{buildroot}/usr/bin/sysinv-api +#install -p -D -m 755 %%{buildroot}/usr/bin/sysinv-agent %%{buildroot}/usr/bin/sysinv-agent +#install -p -D -m 755 %%{buildroot}/usr/bin/sysinv-conductor %%{buildroot}/usr/bin/sysinv-conductor + +install -d -m 755 %{buildroot}%{local_bindir} +install -p -D -m 755 sysinv/cmd/partition_info.sh %{buildroot}%{local_bindir}/partition_info.sh +install -p -D -m 755 sysinv/cmd/manage-partitions %{buildroot}%{local_bindir}/manage-partitions +install -p -D -m 755 sysinv/cmd/query_pci_id %{buildroot}%{local_bindir}/query_pci_id + +# Add once she-bang is fixed +#chmod 755 %%{buildroot}%%{pythonroot}/sysinv/cmd/agent.py +#chmod 755 %%{buildroot}%%{pythonroot}/sysinv/cmd/conductor.py +#chmod 755 %%{buildroot}%%{pythonroot}/sysinv/cmd/dbsync.py +#chmod 755 %%{buildroot}%%{pythonroot}/sysinv/cmd/dnsmasq_lease_update.py +#chmod 755 %%{buildroot}%%{pythonroot}/sysinv/cmd/helm.py +#chmod 755 %%{buildroot}%%{pythonroot}/sysinv/cmd/puppet.py +#chmod 755 %%{buildroot}%%{pythonroot}/sysinv/cmd/sysinv_deploy_helper.py +#chmod 755 %%{buildroot}%%{pythonroot}/sysinv/cmd/upgrade.py +#chmod 755 %%{buildroot}%%{pythonroot}/sysinv/openstack/common/rootwrap/cmd.py +#chmod 755 %%{buildroot}%%{pythonroot}/sysinv/openstack/common/rpc/zmq_receiver.py + + +%clean +echo "CLEAN CALLED" +rm -rf $RPM_BUILD_ROOT + +%files +%defattr(-,root,root,-) +%doc LICENSE + +%{local_bindir}/* + +%{pythonroot}/%{name} + +%{pythonroot}/%{name}-%{version}*.egg-info + +%dir %{local_etc_goenabledd} +%{local_etc_goenabledd}/* + +%dir %{local_etc_sysinv} +%config %{local_etc_sysinv}/* + +%dir %{local_etc_motdd} +%{local_etc_motdd}/* + +# SM OCF Start/Stop/Monitor Scripts +%dir /usr/lib/ocf +%dir %{ocf_resourced} +%dir %{ocf_resourced}/platform +%{ocf_resourced}/platform/sysinv-api +%{ocf_resourced}/platform/sysinv-conductor + +# systemctl service files +%{_unitdir}/sysinv-api.service +%{_unitdir}/sysinv-conductor.service + +%{_bindir}/sysinv-agent +%{_bindir}/sysinv-api +%{_bindir}/sysinv-conductor +%{_bindir}/sysinv-dbsync +%{_bindir}/sysinv-dnsmasq-lease-update +%{_bindir}/sysinv-rootwrap +%{_bindir}/sysinv-upgrade +%{_bindir}/sysinv-puppet +%{_bindir}/sysinv-helm + +%pre +%service_add_pre sysinv-api.service sysinv-api.target +%service_add_pre sysinv-conductor.service sysinv-conductor.target + +%post +%service_add_post sysinv-api.service sysinv-api.target +%service_add_post sysinv-conductor.service sysinv-conductor.target + +%preun +%service_del_preun sysinv-api.service sysinv-api.target +%service_del_preun sysinv-conductor.service sysinv-conductor.target + +%postun +%service_del_postun sysinv-api.service sysinv-api.target +%service_del_postun sysinv-conductor.service sysinv-conductor.target + +%changelog diff --git a/tsconfig/opensuse/tsconfig.changes b/tsconfig/opensuse/tsconfig.changes new file mode 100644 index 0000000000..228f4e7d9d --- /dev/null +++ b/tsconfig/opensuse/tsconfig.changes @@ -0,0 +1,4 @@ +------------------------------------------------------------------- +Mon Jun 3 14:29:02 UTC 2019 - sgw@bigsur.com + +- Initial Commit diff --git a/tsconfig/opensuse/tsconfig.spec b/tsconfig/opensuse/tsconfig.spec new file mode 100644 index 0000000000..ff57c81806 --- /dev/null +++ b/tsconfig/opensuse/tsconfig.spec @@ -0,0 +1,50 @@ +Summary: StarlingX Config Info +Name: tsconfig +Version: 1.0 +Release: %{tis_patch_ver}%{?_tis_dist} +License: Apache-2.0 +Group: Development/Languages/Python +URL: https://opendev.org/starlingx/update +Source0: %{name}-%{version}.tar.gz + +%define debug_package %{nil} + +BuildRequires: python-setuptools +BuildRequires: python2-pip + +%description +StarlingX Project Config Info + +%define local_dir /usr/ +%define local_bindir %{local_dir}/bin/ +%define pythonroot /usr/lib64/python2.7/site-packages + +%prep +%setup -n %{name}-%{version}/%{name} + +%build +%{__python} setup.py build + +%install +%{__python} setup.py install --root=$RPM_BUILD_ROOT \ + --install-lib=%{pythonroot} \ + --prefix=/usr \ + --install-data=/usr/share \ + --single-version-externally-managed + +install -d -m 755 %{buildroot}%{local_bindir} +install -p -D -m 700 scripts/tsconfig %{buildroot}%{local_bindir}/tsconfig + +%clean +rm -rf $RPM_BUILD_ROOT + +%files +%defattr(-,root,root,-) +%doc LICENSE +%{local_bindir}/* +%dir %{pythonroot}/%{name} +%{pythonroot}/%{name}/* +%dir %{pythonroot}/%{name}-%{version}.0-py2.7.egg-info +%{pythonroot}/%{name}-%{version}.0-py2.7.egg-info/* + +%changelog