/[smeserver]/rpms/dehydrated/sme9/dehydrated.spec
ViewVC logotype

Contents of /rpms/dehydrated/sme9/dehydrated.spec

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.7 - (show annotations) (download)
Wed Apr 11 19:26:54 2018 UTC (6 years, 6 months ago) by jpp
Branch: MAIN
CVS Tags: dehydrated-0_6_1-12_el6_sme
Changes since 1.6: +2 -2 lines
* Wed Apr 11 2018 Jean-Philipe Pialasse <tests@pialasse.com> 0.6.1-12.sme
- upgrade to upstream version [SME: 10565]

1 Name: dehydrated
2 %define version 0.6.1
3 %define release 12
4 Version: %{version}
5 Release: %{release}%{?dist}
6 Summary: ACME client in bash
7
8 Group: Application/System
9 License: MIT
10 URL: https://github.com/lukas2511/dehydrated
11 Source0: dehydrated-%{version}.tar.gz
12 Source1: integration.tgz
13
14 BuildArch: noarch
15 BuildRoot: /var/tmp/%{name}-%{version}-%{release}-buildroot
16
17 BuildRequires: httpd
18 Requires: openssl
19 Requires: sed
20 Requires: /bin/awk
21 Requires: curl
22 Requires: /bin/mktemp
23
24 Conflicts: letsencrypt.sh
25 Obsoletes: letsencrypt.sh
26
27 %if 0%{?fedora} >= 11 || 0%{?rhel} >= 5
28 %global useselinux 1
29 %else
30 %global useselinux 0
31 %endif
32
33 %description
34 This is a client for signing certificates with an ACME server
35 (currently only provided by Let's Encrypt) implemented as a
36 relatively simple bash-script.
37
38 %prep
39 #unpack source 1
40 %setup -n dehydrated-%{version}
41 # unpack integration package aka source 1; do not delete previous -D, and disable default unpacking -T
42 # this wil unpack the integration file in the previous unpacked dehydrated folder
43 %setup -T -D -a 1
44
45 %build
46 sed -i -e "s|#BASEDIR=.*|BASEDIR=%{_localstatedir}/lib/%{name}/certificates|" \
47 -e "s|#WELLKNOWN=.*|WELLKNOWN=%{_localstatedir}/lib/%{name}/challenges|" \
48 -e "s|#HOOK=.*|HOOK=%{_bindir}/le_hooks.sh|" \
49 -e "s|#DOMAINS_TXT=.*|DOMAINS_TXT=%{_sysconfdir}/%{name}/domains.txt|" \
50 docs/examples/config
51
52 %install
53 install -d $RPM_BUILD_ROOT/%{_localstatedir}/lib/%{name}/challenges
54 install -d $RPM_BUILD_ROOT/%{_localstatedir}/lib/%{name}/certificates
55 install -D dehydrated $RPM_BUILD_ROOT/%{_bindir}/%{name}
56 install integration/dehydrated_hooks $RPM_BUILD_ROOT/%{_bindir}/dehydrated_hooks
57 install integration/dehydrated_revoke $RPM_BUILD_ROOT/%{_bindir}/dehydrated_revoke
58 install -d $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/hooks_deploy_cert.d
59 install -d $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/hooks_clean_challenge.d
60 install -D -m 0644 integration/httpd.sh.sample $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/hooks_deploy_cert.d/10httpd.sh.sample
61 install -D -m 0644 docs/examples/config $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/config
62 install -D -m 0644 docs/examples/domains.txt $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/domains.txt
63 install -d $RPM_BUILD_ROOT/%{_sysconfdir}/cron.daily/
64 cat <<"_EOF" > $RPM_BUILD_ROOT/%{_sysconfdir}/cron.daily/%{name}
65
66 #!/bin/sh
67 # Uncomment to enable auto-renewal
68 # %{_bindir}/%{name} -c 2>&1 | awk '{ print strftime(), $0; fflush(); }' >> %{_localstatedir}/log/%{name}.log
69
70 # Uncomment this to auto revoke old certs
71 # %{_bindir}/dehydrated_revoke 2>&1 | awk '{ print strftime(), $0; fflush(); }' >> %{_localstatedir}/log/%{name}.log
72
73 _EOF
74 install -d $RPM_BUILD_ROOT/%{_sysconfdir}/httpd/conf.d
75 cat <<"_EOF" > $RPM_BUILD_ROOT/%{_sysconfdir}/httpd/conf.d/dehydrated.conf
76
77 Alias /.well-known/acme-challenge/ %{_localstatedir}/lib/%{name}/challenges/
78
79 <Directory %{_localstatedir}/lib/%{name}/challenges>
80 Options None
81 AllowOverride None
82 Header set Content-Type "application/jose+json"
83 <IfModule mod_authz_core.c>
84 # Apache 2.4
85 Require all granted
86 </IfModule>
87 <IfModule !mod_authz_core.c>
88 # Apache 2.2
89 Order deny,allow
90 Allow from all
91 </IfModule>
92 </Directory>
93 _EOF
94 install -d -m 750 $RPM_BUILD_ROOT/%{_sysconfdir}/logrotate.d
95 cat <<"_EOF" > $RPM_BUILD_ROOT/%{_sysconfdir}/logrotate.d/%{name}
96 /var/log/%{name}.log {
97 missingok
98 copytruncate
99 rotate 12
100 compress
101 weekly
102 create 0660 root root
103 }
104 _EOF
105
106 %post
107 %if %{useselinux}
108 (
109 # New File context
110 semanage fcontext -a -t var_lib_t "%{_localstatedir}/lib/dehydrated(/.*)?"
111 # files created by app
112 restorecon -R %{_localstatedir}/lib/dehydrated
113 ) &>/dev/null || :
114 %endif
115
116 # Migrate from letsencrypt.sh
117 if [ -e %{_sysconfdir}/letsencrypt.sh/config ]; then
118 sed -e 's/letsencrypt.sh/dehydrated/g' \
119 -e 's/le_hooks.sh/dehydrated_hooks/g' \
120 %{_sysconfdir}/letsencrypt.sh/config > %{_sysconfdir}/%{name}/config
121 fi
122 if [ -e %{_sysconfdir}/letsencrypt.sh/domains.txt ]; then
123 cat %{_sysconfdir}/letsencrypt.sh/domains.txt > %{_sysconfdir}/%{name}/domains.txt
124 fi
125 if [ -d %{_localstatedir}/lib/letsencrypt.sh/certificates/certs ]; then
126 mv %{_localstatedir}/lib/letsencrypt.sh/certificates/* %{_localstatedir}/lib/%{name}/certificates/
127 fi
128 sed -i -e 's|%{_localstatedir}/lib/letsencrypt.sh|%{_localstatedir}/lib/%{name}|g' %{_sysconfdir}/httpd/conf.d/ssl.conf
129 if [ -d %{_sysconfdir}/letsencrypt.sh/hooks_deploy_cert.d/ ]; then
130 find %{_sysconfdir}/letsencrypt.sh/hooks_deploy_cert.d/ -type f -perm /111 -exec mv "{}" %{_sysconfdir}/%{name}/hooks_deploy_cert.d/ \;
131 fi
132 if [ -d %{_sysconfdir}/letsencrypt.sh/hooks_clean_challenge.d/ ]; then
133 find %{_sysconfdir}/letsencrypt.sh/hooks_clean_challenge.d/ -type f -perm /111 -exec mv "{}" %{_sysconfdir}/%{name}/hooks_clean_challenge.d/ \;
134 fi
135
136 %postun
137 %if %{useselinux}
138 if [ "$1" -eq "0" ]; then
139 # Remove the File Context
140 (
141 semanage fcontext -d "%{_localstatedir}/lib/dehydrated(/.*)?"
142 ) &>/dev/null || :
143 fi
144 %endif
145
146 %files
147 %doc LICENSE README.md docs/examples/hook.sh
148 %dir %attr(0755,root,root) %{_sysconfdir}/%{name}/hooks_clean_challenge.d/
149 %attr(0644, root,root) %{_sysconfdir}/%{name}/hooks_deploy_cert.d/*
150 %config(noreplace) %{_sysconfdir}/%{name}/domains.txt
151 %config(noreplace) %{_sysconfdir}/%{name}/config
152 %config(noreplace) %attr(0755,root,root) %{_sysconfdir}/cron.daily/%{name}
153 %config(noreplace) %{_sysconfdir}/httpd/conf.d/%{name}.conf
154 %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
155 %attr(0755,root,root) %{_bindir}/%{name}
156 %attr(0755,root,root) %{_bindir}/dehydrated_hooks
157 %attr(0755,root,root) %{_bindir}/dehydrated_revoke
158 %dir %attr(0750,root,apache) %{_localstatedir}/lib/%{name}/challenges
159 %dir %attr(0750,root,root) %{_localstatedir}/lib/%{name}/certificates
160
161 %changelog
162 * Wed Apr 11 2018 Jean-Philipe Pialasse <tests@pialasse.com> 0.6.1-12.sme
163 - upgrade to upstream version [SME: 10565]
164
165 * Fri Feb 16 2018 Jean-Philipe Pialasse <tests@pialasse.com> 0.5.0-3.sme
166 - fix Dehydrated caused rate limits to be reached [SME: 10521] patch0
167
168 * Fri Feb 16 2018 Jean-Philipe Pialasse <tests@pialasse.com> 0.5.0-1.sme
169 - upgrade to upstream version [SME: 10521]
170 - update architecture of sources and release/version number
171 according to Charlie Brady recomendations see [SME 9901]
172
173 * Mon Feb 06 2017 Jean-Philipe Pialasse <tests@pialasse.com> - 0.4.0.20170205.git1163864.sme
174 - update dehydrated to 0.4 [SME: 10080]
175 - see https://github.com/lukas2511/dehydrated/releases/tag/v0.4.0
176
177 * Fri Jan 06 2017 Jean-Philipe Pialasse <tests@pialasse.com> - 0.3.0.20160914.gitcaeed7d-4.sme
178 - Initial import in SME Server Buildsys
179
180 * Mon Oct 24 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.3.0.20160914.gitcaeed7d-3
181 - Fix warning when installing dehydrated without upgrading from letsencrypt.sh
182
183 * Mon Sep 19 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.3.0.20160914.gitcaeed7d-2
184 - Fix find command to work with older find versions (on el5), replace -executable with -perm /111
185
186 * Wed Sep 14 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.3.0.20160914.gitcaeed7d-1
187 - Renamed to dehydrated
188
189 * Wed Aug 24 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.0.20160803.gitafabfff-2
190 - Set var_lib_t context to files
191
192 * Wed Aug 3 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.0.20160803.gitafabfff-1
193 - Update to git afabfff
194
195 * Mon Jun 6 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.0.20160531.gitec48906-4
196 - Default to enable HOOK in config
197
198 * Fri Jun 3 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.0.20160531.gitec48906-3
199 - Add missing exec permission on daily cronjob script
200
201 * Wed Jun 1 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.0.20160531.gitec48906-2
202 - Fix le_revoke.sh script to use config instead of config.sh
203
204 * Tue May 31 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.0.20160531.gitec48906-1
205 - Update to git ec48906
206
207 * Fri May 13 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.0.20160513.gita286741-1
208 - Update to git a286741
209
210 * Wed Mar 30 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.0.20160330.gitdca25e8-1
211 - Update to git dca25e8
212 - Fix arg shifting in le_hooks script
213
214 * Tue Feb 23 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.0.20160223.git2099c77-1
215 - Update to GIT git2099c77
216
217 * Sat Jan 30 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.0.20160127.git79ff846-2
218 - Rename httpd.sh hook to 10httpd.sh
219 - Provide le_revoke.sh script to revoke old certificates
220 - Add timestamp to logs using awk
221
222 * Fri Jan 29 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.0.20160127.git79ff846-1
223 - Use date based version number
224
225 * Wed Jan 27 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.0.3.git79ff846-1
226 - Update to git 79ff846
227
228 * Mon Jan 25 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.0.2.git3432f60-1
229 - Add hooks directory
230
231 * Mon Jan 25 2016 Daniel Berteaud <daniel@firewall-services.com> - 0.0.1.git3432f60-1
232 - First package

admin@koozali.org
ViewVC Help
Powered by ViewVC 1.2.1 RSS 2.0 feed