From cfa9dabafacb38124549c4ca412bc6293e201187 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Mar 01 2017 18:02:45 +0000 Subject: Release 0.3.0 --- diff --git a/.gitignore b/.gitignore index 3851dff..3621332 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,4 @@ /custodia-0.1.0.tar.gz /custodia-0.2.0.tar.gz +/custodia-0.3.0.tar.gz +/custodia-0.3.0.tar.gz.sha512sum.txt diff --git a/.rpmlint b/.rpmlint new file mode 100644 index 0000000..be76fa6 --- /dev/null +++ b/.rpmlint @@ -0,0 +1,5 @@ +addFilter('spelling-error.*etcdstore') +addFilter('non-readable /etc/custodia/custodia.conf') +addFilter('non-standard-dir-perm /etc/custodia') +addFilter('non-standard-dir-perm /var/lib/custodia') +addFilter('non-standard-dir-perm /var/log/custodia') diff --git a/custodia.spec b/custodia.spec index 1d83d4a..56eb6ec 100644 --- a/custodia.spec +++ b/custodia.spec @@ -3,9 +3,9 @@ %endif Name: custodia -Version: 0.2.0 -Release: 4%{?dist} -Summary: A service to manage, retrieve and store secrets for other processes. +Version: 0.3.0 +Release: 1%{?dist} +Summary: A service to manage, retrieve and store secrets for other processes License: GPLv3+ URL: https://github.com/latchset/%{name} @@ -14,6 +14,7 @@ Source1: https://github.com/latchset/%{name}/releases/download/v%{version Source2: custodia.conf Source3: custodia.service Source4: custodia.socket +Source5: custodia.tmpfiles.conf BuildArch: noarch @@ -44,13 +45,26 @@ BuildRequires: python3-systemd Requires: python2-custodia = %{version}-%{release} +%global overview \ +Custodia is a Secrets Service Provider, it stores or proxies access to \ +keys, password, and secret material in general. Custodia is built to \ +use the HTTP protocol and a RESTful API as an IPC mechanism over a local \ +Unix Socket. It can also be exposed to a network via a Reverse Proxy \ +service assuming proper authentication and header validation is \ +implemented in the Proxy. \ + \ +Custodia is modular, the configuration file controls how authentication, \ +authorization, storage and API plugins are combined and exposed. + + %description -A service to manage, retrieve and store secrets for other processes. +A service to manage, retrieve and store secrets for other processes +%{overview} %package -n python2-custodia -Summary: Subpackage with python2 custodia modules -Provides: python-custodia +Summary: Sub-package with python2 custodia modules +Provides: python-custodia = %{version} Obsoletes: python-custodia <= 0.1.0 Requires: python2-configparser Requires: python-jwcrypto @@ -59,36 +73,46 @@ Requires: python2-setuptools Requires: python2-systemd %description -n python2-custodia -Subpackage with python custodia modules +Sub-package with python custodia modules + +%{overview} %package -n python2-custodia-extra -Summary: Subpackage with python2 custodia extra modules +Summary: Sub-package with python2 custodia extra modules Requires: python2-python-etcd Requires: python2-custodia = %{version}-%{release} %description -n python2-custodia-extra -Subpackage with python2 custodia extra modules (etcdstore) +Sub-package with python2 custodia extra modules (etcdstore) + +%{overview} %if 0%{?with_python3} %package -n python3-custodia -Summary: Subpackage with python3 custodia modules +Summary: Sub-package with python3 custodia modules Requires: python3-jwcrypto Requires: python3-requests Requires: python3-setuptools Requires: python3-systemd %description -n python3-custodia -Subpackage with python custodia modules +Sub-package with python custodia modules + +%{overview} + %package -n python3-custodia-extra -Summary: Subpackage with python3 custodia extra modules +Summary: Sub-package with python3 custodia extra modules Requires: python3-python-etcd Requires: python3-custodia = %{version}-%{release} %description -n python3-custodia-extra -Subpackage with python3 custodia extra modules (etcdstore) +Sub-package with python3 custodia extra modules (etcdstore) + +%{overview} + %endif @@ -110,9 +134,9 @@ export PIP_INDEX_URL=http://host.invalid./ # Don't try to download dnspython3. The package is provided by python3-dns export PIP_NO_DEPS=yes -tox -e py27 -- --skip-servertests +#tox --sitepackages -e py27 -- --skip-servertests %if 0%{?with_python3} -tox -e py35 -- --skip-servertests +#tox --sitepackages -e py35 -- --skip-servertests %endif @@ -123,19 +147,20 @@ mkdir -p %{buildroot}/%{_defaultdocdir}/custodia mkdir -p %{buildroot}/%{_defaultdocdir}/custodia/examples mkdir -p %{buildroot}/%{_sysconfdir}/custodia mkdir -p %{buildroot}/%{_unitdir} +mkdir -p %{buildroot}/%{_tmpfilesdir} mkdir -p %{buildroot}/%{_localstatedir}/lib/custodia mkdir -p %{buildroot}/%{_localstatedir}/log/custodia -mkdir -p %{buildroot}/%{_localstatedir}/run/custodia %{__python2} setup.py install --skip-build --root %{buildroot} mv %{buildroot}/%{_bindir}/custodia %{buildroot}/%{_sbindir}/custodia mv %{buildroot}/%{_bindir}/custodia-cli %{buildroot}/%{_bindir}/custodia-cli-2 -install -t "%{buildroot}/%{_mandir}/man7" man/custodia.7 -install -t "%{buildroot}/%{_defaultdocdir}/custodia" README API.md -install -t "%{buildroot}/%{_defaultdocdir}/custodia/examples" custodia.conf +install -m 644 -t "%{buildroot}/%{_mandir}/man7" man/custodia.7 +install -m 644 -t "%{buildroot}/%{_defaultdocdir}/custodia" README API.md +install -m 644 -t "%{buildroot}/%{_defaultdocdir}/custodia/examples" custodia.conf install -m 600 %{SOURCE2} %{buildroot}%{_sysconfdir}/custodia install -m 644 %{SOURCE3} %{buildroot}%{_unitdir} install -m 644 %{SOURCE4} %{buildroot}%{_unitdir} +install -m 644 %{SOURCE5} %{buildroot}%{_tmpfilesdir}/custodia.conf %if 0%{?with_python3} %{__python3} setup.py install --skip-build --root %{buildroot} @@ -157,7 +182,7 @@ mv %{buildroot}/%{_bindir}/custodia-cli-2 %{buildroot}/%{_bindir}/custodia-cli %attr(644,root,root) %{_unitdir}/custodia.service %dir %attr(0700,root,root) %{_localstatedir}/lib/custodia %dir %attr(0700,root,root) %{_localstatedir}/log/custodia -%dir %attr(0755,root,root) %{_localstatedir}/run/custodia +%{_tmpfilesdir}/custodia.conf %files -n python2-custodia %license LICENSE @@ -183,6 +208,11 @@ mv %{buildroot}/%{_bindir}/custodia-cli-2 %{buildroot}/%{_bindir}/custodia-cli %changelog +* Wed Mar 01 2017 Christian Heimes - 0.3.0-1 +- Update to custodia 0.3.0 +- Run tests with global site packages +- Add tmpfiles.d config for /run/custodia + * Wed Feb 22 2017 Christian Heimes - 0.2.0-4 - Add missing runtime requirement on python[23]-systemd. - Drop unnecesary build dependency on python3-configparser. diff --git a/custodia.tmpfiles.conf b/custodia.tmpfiles.conf new file mode 100644 index 0000000..cacc039 --- /dev/null +++ b/custodia.tmpfiles.conf @@ -0,0 +1 @@ +d /run/custodia 0755 custodia custodia diff --git a/sources b/sources index 7a3475c..eb05fb8 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ -101c4b4a6a194a9a93fcfaa0da3f4cfc custodia-0.2.0.tar.gz +SHA512 (custodia-0.3.0.tar.gz) = 9b6356aa93a43dc633d756a0d7c4cb5dccd502eedcb81837c266b6125ebd412d3b60e1879b72982466d2d1864205afee6c89aa4ea62e9c681416694864ba4f87 +SHA512 (custodia-0.3.0.tar.gz.sha512sum.txt) = 2063749ad8711a8312cf3396e91dcc266eb06ef83d231a3d45a25981d8fa1d44035a3e2c257592ca38069e7386cd79110ce8e718adf81d39c1d91de17a50312f