From ca0a5df6b44170c9e804b53945c4653342da7032b207445d9763f8164ff03cde Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= Date: Thu, 4 Oct 2012 08:52:41 +0000 Subject: [PATCH 1/9] - update to 3.0.4b2 New features: - XML editing capabilities. See the documentation for edit_xml body. Note the new dependency: libxml2. - Implement inheritance of local classes by bundles called using "usebundle". By default classes are not inherited. See the examples/unit_inherit.cf for an example. - Moved from Nova/Enterprise: - POSIX ACL support, - "outputs" promise type, - remote syslog support. - packages_default_arch_command hook in packages promises, to specify default architecture of the packages on the system. - packages_version_less_command / packages_version_equal_command hooks in packages promises, to specify external command for native package manager versions comparison - Running in Solaris zone is now detected and classes "zone" and "zone_" are created in this case. - VirtualBox support added to guest_environment promises. - guest_environment promises are supported under OS X. - The "depends_on" attribute is now active, for the partal ordering of promises. If a promise depends on another (referred by handle) it will only be considered if the depends_on list is either kept or repaired already. ** WARNING: When upgrading, make sure that any existing use of depends_on does not make some promises being unintentionally ignored. This can happen if you are currently refering to non-existant or never-run handles in depends_on attributes. OBS-URL: https://build.opensuse.org/package/show/systemsmanagement/cfengine?expand=0&rev=20 --- cf-execd.service | 9 +++ cf-monitord.service | 9 +++ cf-serverd.service | 9 +++ cf3-Reference.pdf | 4 +- cf3-conceptguide.pdf | 3 + cf3-glossary.pdf | 3 + cf3-quickstart.pdf | 3 + cf3-solutions.pdf | 3 + cf3-tutorial.pdf | 3 + cfengine-3.2.4.tar.gz | 3 - cfengine-3.4.0b2.tar.bz2 | 3 + cfengine.changes | 42 +++++++++++ cfengine.spec | 153 +++++++++++++++++++++++++++------------ 13 files changed, 197 insertions(+), 50 deletions(-) create mode 100644 cf-execd.service create mode 100644 cf-monitord.service create mode 100644 cf-serverd.service create mode 100644 cf3-conceptguide.pdf create mode 100644 cf3-glossary.pdf create mode 100644 cf3-quickstart.pdf create mode 100644 cf3-solutions.pdf create mode 100644 cf3-tutorial.pdf delete mode 100644 cfengine-3.2.4.tar.gz create mode 100644 cfengine-3.4.0b2.tar.bz2 diff --git a/cf-execd.service b/cf-execd.service new file mode 100644 index 0000000..9c77067 --- /dev/null +++ b/cf-execd.service @@ -0,0 +1,9 @@ +[Unit] +Description=CFEngine Execution Daemon +After=syslog.target + +[Service] +ExecStart=/usr/sbin/cf-execd + +[Install] +WantedBy=multi-user.target diff --git a/cf-monitord.service b/cf-monitord.service new file mode 100644 index 0000000..5d2670c --- /dev/null +++ b/cf-monitord.service @@ -0,0 +1,9 @@ +[Unit] +Description=CFEngine Monitoring Daemon +After=syslog.target + +[Service] +ExecStart=/usr/sbin/cf-monitord + +[Install] +WantedBy=multi-user.target diff --git a/cf-serverd.service b/cf-serverd.service new file mode 100644 index 0000000..c112715 --- /dev/null +++ b/cf-serverd.service @@ -0,0 +1,9 @@ +[Unit] +Description=CFEngine Server Daemon +After=syslog.target + +[Service] +ExecStart=/usr/sbin/cf-serverd + +[Install] +WantedBy=multi-user.target diff --git a/cf3-Reference.pdf b/cf3-Reference.pdf index dc3e855..9bd19b9 100644 --- a/cf3-Reference.pdf +++ b/cf3-Reference.pdf @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:a523780fff9f66811e29f10a9642d0653cd6c09ca55558717bd3e02470cfea2e -size 7522390 +oid sha256:1789439f4cdfc5eea231bde0d81457a41d7095435f3c9f3ed48de9721db8c303 +size 7992964 diff --git a/cf3-conceptguide.pdf b/cf3-conceptguide.pdf new file mode 100644 index 0000000..c16f91f --- /dev/null +++ b/cf3-conceptguide.pdf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68224b883d6f01eb0c7802fdc70cbabd8a453a733b337aea326e2bc35f93e6dd +size 981077 diff --git a/cf3-glossary.pdf b/cf3-glossary.pdf new file mode 100644 index 0000000..a7859b2 --- /dev/null +++ b/cf3-glossary.pdf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b82a5bdcf95c9973a25bd2c268dce34e874372c2009347b65a73883c101a4710 +size 157217 diff --git a/cf3-quickstart.pdf b/cf3-quickstart.pdf new file mode 100644 index 0000000..812e96e --- /dev/null +++ b/cf3-quickstart.pdf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8a5c6bbd2a6dd2406255202b4b9c90a1f59c2e3468e4fc26c0b15b04c6d8467d +size 419346 diff --git a/cf3-solutions.pdf b/cf3-solutions.pdf new file mode 100644 index 0000000..dc4399d --- /dev/null +++ b/cf3-solutions.pdf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d780f36796cc32a8620ccaa6d5ae9c5ad8ee8fde4c2074561a56682cdceee627 +size 2355908 diff --git a/cf3-tutorial.pdf b/cf3-tutorial.pdf new file mode 100644 index 0000000..f441bc7 --- /dev/null +++ b/cf3-tutorial.pdf @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d52d7f385f087a416b964eb0ac465ccc13f7aab4518af7e830f8144d7eb1859f +size 1201108 diff --git a/cfengine-3.2.4.tar.gz b/cfengine-3.2.4.tar.gz deleted file mode 100644 index feea3f1..0000000 --- a/cfengine-3.2.4.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:261cd300c0a8e22dfdb215da81633d80f3c4579e659f186f0da3d09fd2e4f272 -size 1134299 diff --git a/cfengine-3.4.0b2.tar.bz2 b/cfengine-3.4.0b2.tar.bz2 new file mode 100644 index 0000000..50910fd --- /dev/null +++ b/cfengine-3.4.0b2.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a38fdf1ed79648630841ec8736e83b5439af7b399a509a0f12d0abf763b88b64 +size 4253260 diff --git a/cfengine.changes b/cfengine.changes index 6d9881f..1e29fc3 100644 --- a/cfengine.changes +++ b/cfengine.changes @@ -1,3 +1,45 @@ +------------------------------------------------------------------- +Thu Oct 4 08:48:10 UTC 2012 - kkaempf@suse.com + +- update to 3.0.4b2 + New features: + - XML editing capabilities. See the documentation for edit_xml + body. Note the new dependency: libxml2. + - Implement inheritance of local classes by bundles called using + "usebundle". By default classes are not inherited. See the + examples/unit_inherit.cf for an example. + - Moved from Nova/Enterprise: + - POSIX ACL support, + - "outputs" promise type, + - remote syslog support. + - packages_default_arch_command hook in packages promises, to + specify default architecture of the packages on the system. + - packages_version_less_command / packages_version_equal_command hooks + in packages promises, to specify external command for native package + manager versions comparison + - Running in Solaris zone is now detected and classes "zone" and + "zone_" are created in this case. + - VirtualBox support added to guest_environment promises. + - guest_environment promises are supported under OS X. + - The "depends_on" attribute is now active, for the partal ordering + of promises. If a promise depends on another (referred by handle) + it will only be considered if the depends_on list is either kept + or repaired already. + + ** WARNING: When upgrading, make sure that any existing use + of depends_on does not make some promises being + unintentionally ignored. + This can happen if you are currently refering to non-existant or + never-run handles in depends_on attributes. + - methods return values, initial implementation + - New format for cf-key -s, includes timestamp of last connection + + Changed functionality: + - cf-execd -F switch no longer implies 'run once'. New -O/--once + option is added to achieve this behaviour. This makes cf-execd + easier to run from systemd, launchd and other supervision + systems. + ------------------------------------------------------------------- Wed Feb 15 13:49:18 UTC 2012 - chris@computersalat.de diff --git a/cfengine.spec b/cfengine.spec index 38caabe..21680ca 100644 --- a/cfengine.spec +++ b/cfengine.spec @@ -22,22 +22,34 @@ Name: cfengine %define basedir /var/lib/%{name} %define workdir %{basedir}/work -Summary: A Tool to Maintain Complicated Networks +Summary: CFEngine automates large-scale IT computing infrastructure License: GPL-3.0 Group: Productivity/Networking/System -Version: 3.2.4 +Version: 3.4.0b2 Release: 0 Url: http://www.cfengine.org/ -Source: %{name}-%{version}.tar.gz +Source: %{name}-%{version}.tar.bz2 Source1: http://www.cfengine.org/manuals/cf3-Reference.pdf -Source2: cf-monitord -Source3: cf-execd -Source4: cf-serverd +Source2: http://www.cfengine.org/manuals/cf3-conceptguide.pdf +Source3: http://www.cfengine.org/manuals/cf3-glossary.pdf +Source4: http://www.cfengine.org/manuals/cf3-quickstart.pdf +Source5: http://www.cfengine.org/manuals/cf3-solutions.pdf +Source6: http://www.cfengine.org/manuals/cf3-tutorial.pdf +%if 0%{?suse_version} >= 1210 +Source7: cf-execd.service +Source8: cf-monitord.service +Source9: cf-serverd.service +%else +Source7: cf-monitord +Source8: cf-execd +Source9: cf-serverd +%endif Source10: %{name}.cron BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: bison BuildRequires: db-devel BuildRequires: flex +BuildRequires: libtokyocabinet-devel BuildRequires: libtool BuildRequires: mysql-devel BuildRequires: openssl-devel @@ -54,11 +66,20 @@ PreReq: %install_info_prereq BuildRequires: texlive %endif +%if 0%{?suse_version} >= 1210 +BuildRequires: systemd +%{?systemd_requires} +%endif + %description -GNU cfengine is an abstract programming language for system -administrators of huge heterogeneous networks. With cfengine, system -administrators have an easy and elegant way to maintain complicated -networks. +CFEngine automates large-scale IT computing infrastructure: ensuring +the availability, security and compliance of mission-critical +applications and services. Based on popular and flexible open source +configuration management software, CFEngine configuration management +products are highly scalable through decentralized, autonomous agents +that can continuously monitor, self-repair, and update the IT +infrastructure of a global multi-site enterprise - with negligible +impact on system resources or performance. %package -n %{libsoname} Summary: Shared library of cfengine @@ -83,20 +104,20 @@ This package contains the files needed to compile programs that use the libguess library. %package doc -Summary: A Tool to Maintain Complicated Networks (docs) +Summary: CFEngine automates large-scale IT computing infrastructure - documentation Group: Productivity/Networking/System %if 0%{?rhel_version} || 0%{?centos_version} -BuildRequires: texinfo BuildRequires: tetex BuildRequires: tetex-dvips BuildRequires: tetex-latex +BuildRequires: texinfo %endif %description doc Full documentation for cfengine %package server -Summary: Files needed for cfengine server +Summary: CFEngine automates large-scale IT computing infrastructure - server Group: Productivity/Networking/System Requires: %{name} = %{version}-%{release} @@ -112,15 +133,6 @@ This package contains the files of the cfengine server. ### http://www.fsf.org/about/contact/ find ./examples -type f -name "*.cf" -exec perl -p -i -e 's|\r\n|\n|,s|^# Foundation.*|# Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110-1335, USA|' {} \; -### FIXME -# there are 3 different cfengine_stdlib.cf -## as of 3.2.4 -# ./examples/cfengine_stdlib.cf - Rev: 95 -# ./examples/example_config/cfengine_stdlib.cf - Rev: 61 -# ./masterfiles/cfengine_stdlib.cf - Rev: 84 -%{__cp} -a ./examples/cfengine_stdlib.cf ./examples/example_config/ -%{__cp} -a ./examples/cfengine_stdlib.cf ./masterfiles/ - %build %if 0%{?suse_version} %{suse_update_config -f} @@ -147,14 +159,17 @@ CC=gcc CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" \ %{__install} -d %{buildroot}/%{basedir}/{backup,failsafe,config} #%{__install} -d %{buildroot}/%{basedir}/config/{development,production} -# install missing AUTHORS LICENSE {S:1} -%{__install} -m0644 AUTHORS LICENSE %{S:1} %{buildroot}/%{_docdir}/%{name}/ - # install cron file %{__install} -D -m0644 %{S:10} %{buildroot}/%{_sysconfdir}/cron.d/%{name} +%if 0%{?suse_version} > 1210 +# install systemd scripts +%{__install} -D -m 0644 %{S:7} %{buildroot}/%_unitdir/cf-execd.service +%{__install} -D -m 0644 %{S:8} %{buildroot}/%_unitdir/cf-monitord.service +%{__install} -D -m 0644 %{S:9} %{buildroot}/%_unitdir/cf-serverd.service +%else # install init scripts -%{__install} -m 0755 %{S:2} %{S:3} %{S:4} %{buildroot}/etc/init.d/ +%{__install} -m 0755 %{S:7} %{S:8} %{S:9} %{buildroot}/etc/init.d/ %{__ln_s} -f ../../etc/init.d/cf-monitord %{buildroot}/%{_sbindir}/rccf-monitord %{__ln_s} -f ../../etc/init.d/cf-execd %{buildroot}/%{_sbindir}/rccf-execd %{__ln_s} -f ../../etc/init.d/cf-serverd %{buildroot}/%{_sbindir}/rccf-serverd @@ -163,24 +178,63 @@ sed -i\ -e "s,@workdir@,%{workdir},g"\ -e "s,@basedir@,%{basedir},g" \ %{buildroot}/etc/init.d/cf-* %{buildroot}/etc/cron.d/%{name} +%endif # create symlinks for sbin_PROGRAMS -for i in cf-agent cf-execd cf-key cf-know cf-monitord cf-promises cf-report cf-runagent cf-serverd; do - %{__ln_s} -f ../../../../..%{_sbindir}/${i} %{buildroot}%{workdir}/bin/${i} -done +# WHY ? +#for i in cf-agent cf-execd cf-key cf-know cf-monitord cf-promises cf-report cf-runagent cf-serverd; do +# %{__ln_s} -f ../../../../..%{_sbindir}/${i} %{buildroot}%{workdir}/bin/${i} +#done # mv all masterfiles/*.cf to masterfiles/*.cf.default -pushd %{buildroot}%{basedir}/masterfiles -for j in $(ls -1); do - cp -a * ../work/inputs/ - mv ${j} ${j}.default -done +#pushd %{buildroot}%{basedir}/masterfiles +#for j in $(ls -1); do +# cp -a * ../work/inputs/ +# mv ${j} ${j}.default +#done ## FIXME: what is the purpose of theses libs ? ## are they really needed ? #rm -rf %{buildroot}/%{_libdir}/libpromises.la #{__rm} -rf %{buildroot}/%{_libdir}/libpromises.a +# systemd +%if 0%{?suse_version} >= 1210 + +%pre +%service_add_pre cf-execd.service cf-monitord.service + +%post +%service_add_post cf-execd.service cf-monitord.service +%if 0%{?suse_version} > 1010 +%install_info --name=%{name} --info-dir=%{_infodir} %{_infodir}/cf3-reference.info.gz +%endif +/sbin/ldconfig + +%preun +%service_del_preun cf-execd.service cf-monitord.service + +%postun +%service_del_postun cf-execd.service cf-monitord.service +%if 0%{?suse_version} > 1010 +%install_info_delete --name=%{name} --info-dir=%{_infodir} %{_infodir}/cf3-reference.info.gz +%endif +/sbin/ldconfig + +%pre server +%service_add_pre cf-serverd.service + +%post server +%service_add_post cf-serverd.service + +%preun server +%service_del_preun cf-serverd.service + +%postun server +%service_del_postun cf-serverd.service + +%else # !systemd + %preun %if 0%{?suse_version} %stop_on_removal cf-monitord @@ -234,21 +288,27 @@ done fi %endif +%endif # !systemd + %post -n %{libsoname} -p /sbin/ldconfig %postun -n %{libsoname} -p /sbin/ldconfig %files %defattr(-,root,root) -%{_docdir}/%{name}/LICENSE -%exclude %{_docdir}/%{name}/AUTHORS -%exclude %{_docdir}/%{name}/ChangeLog -%exclude %{_docdir}/%{name}/README -%exclude %{_docdir}/%{name}/example_config -%exclude %{_docdir}/%{name}/examples +%doc LICENSE +%doc README /usr/sbin/* %exclude /usr/sbin/cf-serverd +%if 0%{?suse_version} >= 1210 +%_unitdir/cf-execd.service +%_unitdir/cf-monitord.service +%else %exclude /usr/sbin/rccf-serverd +%exclude /etc/init.d/cf-serverd +%config %attr(0755,root,root) /etc/init.d/* +%endif + %{_mandir}/man?/* %dir %{basedir} %{basedir} @@ -259,8 +319,6 @@ done #%exclude %{basedir}/failsafe %exclude %{workdir}/bin/cf-serverd %config(noreplace) /etc/cron.d/%{name} -%config %attr(0755,root,root) /etc/init.d/* -%exclude /etc/init.d/cf-serverd %files -n %{libsoname} %defattr(-,root,root) @@ -273,16 +331,21 @@ done %files doc %defattr(-,root,root) -%{_docdir}/%{name} -%exclude %{_docdir}/%{name}/LICENSE +%doc %{S:1} +%doc example_config +%doc examples %files server %defattr(-,root,root) %{basedir}/backup %{basedir}/config /usr/sbin/cf-serverd -/usr/sbin/rccf-serverd %{workdir}/bin/cf-serverd +%if 0%{?suse_version} >= 1210 +%_unitdir/cf-serverd.service +%else /etc/init.d/cf-serverd +/usr/sbin/rccf-serverd +%endif %changelog From 10b8374e24de9e59da0b335787385275c3d02bee0ffac19eb7c8f10ad632b9a7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= Date: Fri, 5 Oct 2012 12:21:25 +0000 Subject: [PATCH 2/9] - honor filesystem hierachy standard (FHS): build with --enable-fhs OBS-URL: https://build.opensuse.org/package/show/systemsmanagement/cfengine?expand=0&rev=21 --- cfengine.changes | 2 ++ cfengine.spec | 50 ++++++++++++++++++++++++++++++++---------------- 2 files changed, 35 insertions(+), 17 deletions(-) diff --git a/cfengine.changes b/cfengine.changes index 1e29fc3..6fbe2bf 100644 --- a/cfengine.changes +++ b/cfengine.changes @@ -1,6 +1,8 @@ ------------------------------------------------------------------- Thu Oct 4 08:48:10 UTC 2012 - kkaempf@suse.com +- honor filesystem hierachy standard (FHS): build with --enable-fhs + - update to 3.0.4b2 New features: - XML editing capabilities. See the documentation for edit_xml diff --git a/cfengine.spec b/cfengine.spec index 21680ca..a7fb3c0 100644 --- a/cfengine.spec +++ b/cfengine.spec @@ -51,6 +51,7 @@ BuildRequires: db-devel BuildRequires: flex BuildRequires: libtokyocabinet-devel BuildRequires: libtool +BuildRequires: libxml2-devel BuildRequires: mysql-devel BuildRequires: openssl-devel BuildRequires: pcre-devel @@ -141,6 +142,8 @@ find ./examples -type f -name "*.cf" -exec perl -p -i -e 's|\r\n|\n|,s|^# Founda CC=gcc CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" \ %configure \ --disable-static \ + --enable-fhs \ + --with-libxml2 \ --datadir=/var/lib \ --docdir=%{_docdir}/%{name} \ --with-workdir=%{workdir} @@ -153,7 +156,7 @@ CC=gcc CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" \ [ -d %{buildroot} ] && [ "%{buildroot}" != "/" ] && %{__rm} -rf %{buildroot} %endif %{__make} "DESTDIR=%{buildroot}" install -%{__install} -d %{buildroot}/{usr/sbin,etc/init.d,%{workdir}/{bin,inputs}} +%{__install} -d %{buildroot}/{usr/sbin,%{workdir}/{bin,inputs}} # create dirs needed for better organizing dirs and files %{__install} -d %{buildroot}/%{basedir}/{backup,failsafe,config} @@ -169,6 +172,7 @@ CC=gcc CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" \ %{__install} -D -m 0644 %{S:9} %{buildroot}/%_unitdir/cf-serverd.service %else # install init scripts +%{__install} -d %{buildroot}/etc/init.d %{__install} -m 0755 %{S:7} %{S:8} %{S:9} %{buildroot}/etc/init.d/ %{__ln_s} -f ../../etc/init.d/cf-monitord %{buildroot}/%{_sbindir}/rccf-monitord %{__ln_s} -f ../../etc/init.d/cf-execd %{buildroot}/%{_sbindir}/rccf-execd @@ -180,6 +184,10 @@ sed -i\ %{buildroot}/etc/init.d/cf-* %{buildroot}/etc/cron.d/%{name} %endif +# install docs +%{__install} -d %{buildroot}/%{_docdir}/%{name} +%{__install} -m 0644 %{S:1} %{S:2} %{S:3} %{S:4} %{S:5} %{S:6} %{buildroot}/%{_docdir}/%{name} + # create symlinks for sbin_PROGRAMS # WHY ? #for i in cf-agent cf-execd cf-key cf-know cf-monitord cf-promises cf-report cf-runagent cf-serverd; do @@ -193,11 +201,12 @@ sed -i\ # mv ${j} ${j}.default #done -## FIXME: what is the purpose of theses libs ? -## are they really needed ? -#rm -rf %{buildroot}/%{_libdir}/libpromises.la +rm -rf %{buildroot}/%{_libdir}/%{name}/libpromises.la #{__rm} -rf %{buildroot}/%{_libdir}/libpromises.a +rm -rf %{buildroot}/%{_datadir}/%{name}/ChangeLog +rm -rf %{buildroot}/%{_datadir}/%{name}/README + # systemd %if 0%{?suse_version} >= 1210 @@ -298,52 +307,59 @@ sed -i\ %defattr(-,root,root) %doc LICENSE %doc README -/usr/sbin/* -%exclude /usr/sbin/cf-serverd +%doc ChangeLog +%exclude %{_docdir}/%{name}/*.pdf +%{_sbindir}/cf-agent +%{_sbindir}/cf-execd +%{_sbindir}/cf-key +%{_sbindir}/cf-monitord +%{_sbindir}/cf-promises +%{_sbindir}/cf-report +%{_sbindir}/cf-runagent %if 0%{?suse_version} >= 1210 %_unitdir/cf-execd.service %_unitdir/cf-monitord.service %else -%exclude /usr/sbin/rccf-serverd %exclude /etc/init.d/cf-serverd %config %attr(0755,root,root) /etc/init.d/* %endif %{_mandir}/man?/* %dir %{basedir} -%{basedir} +%dir %{_datadir}/%{name} +%{_datadir}/%{name}/* #%dir %{workdir} #%{workdir}/* %exclude %{basedir}/backup %exclude %{basedir}/config #%exclude %{basedir}/failsafe -%exclude %{workdir}/bin/cf-serverd +#%exclude %{workdir}/bin/cf-serverd %config(noreplace) /etc/cron.d/%{name} %files -n %{libsoname} %defattr(-,root,root) -%{_libdir}/%{libname}.la -%{_libdir}/%{libname}.so.* +%dir %{_libdir}/%{name} +%{_libdir}/%{name}/%{libname}.so.* %files devel %defattr(-,root,root) -%{_libdir}/%{libname}.so +%{_libdir}/%{name}/%{libname}.so %files doc %defattr(-,root,root) -%doc %{S:1} -%doc example_config -%doc examples +%doc %{_docdir}/%{name}/*.pdf +%dir %{_datadir}/doc/%{name} +%{_datadir}/doc/%{name}/* %files server %defattr(-,root,root) %{basedir}/backup %{basedir}/config -/usr/sbin/cf-serverd -%{workdir}/bin/cf-serverd +%{_sbindir}/cf-serverd %if 0%{?suse_version} >= 1210 %_unitdir/cf-serverd.service %else +%{workdir}/bin/cf-serverd /etc/init.d/cf-serverd /usr/sbin/rccf-serverd %endif From 3e2875e4b504ac51c0c8ce2b13e645bf3edcbee0e3c24b899583d41ebc2420ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= Date: Fri, 5 Oct 2012 12:43:48 +0000 Subject: [PATCH 3/9] fix SLE_11 build OBS-URL: https://build.opensuse.org/package/show/systemsmanagement/cfengine?expand=0&rev=22 --- cfengine.spec | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/cfengine.spec b/cfengine.spec index a7fb3c0..c41e636 100644 --- a/cfengine.spec +++ b/cfengine.spec @@ -52,7 +52,14 @@ BuildRequires: flex BuildRequires: libtokyocabinet-devel BuildRequires: libtool BuildRequires: libxml2-devel +# Disable mysql for SLE_11: +# configure: error: MySQL client library exports symbols clashing with +# OpenSSL. Get the update from distribution provider, recompile MySQL +# library or disable MySQL connector. See +# http://bugs.mysql.com/bug.php?id=65055 for details. +%if 0%{?suse_version} != 1110 BuildRequires: mysql-devel +%endif BuildRequires: openssl-devel BuildRequires: pcre-devel BuildRequires: postgresql-devel @@ -185,8 +192,8 @@ sed -i\ %endif # install docs -%{__install} -d %{buildroot}/%{_docdir}/%{name} -%{__install} -m 0644 %{S:1} %{S:2} %{S:3} %{S:4} %{S:5} %{S:6} %{buildroot}/%{_docdir}/%{name} +%{__install} -d %{buildroot}/%{_datadir}/doc/%{name} +%{__install} -m 0644 %{S:1} %{S:2} %{S:3} %{S:4} %{S:5} %{S:6} %{buildroot}/%{_datadir}/doc/%{name} # create symlinks for sbin_PROGRAMS # WHY ? @@ -308,7 +315,6 @@ rm -rf %{buildroot}/%{_datadir}/%{name}/README %doc LICENSE %doc README %doc ChangeLog -%exclude %{_docdir}/%{name}/*.pdf %{_sbindir}/cf-agent %{_sbindir}/cf-execd %{_sbindir}/cf-key @@ -322,6 +328,8 @@ rm -rf %{buildroot}/%{_datadir}/%{name}/README %else %exclude /etc/init.d/cf-serverd %config %attr(0755,root,root) /etc/init.d/* +%{_sbindir}/rccf-execd +%{_sbindir}/rccf-monitord %endif %{_mandir}/man?/* @@ -347,7 +355,6 @@ rm -rf %{buildroot}/%{_datadir}/%{name}/README %files doc %defattr(-,root,root) -%doc %{_docdir}/%{name}/*.pdf %dir %{_datadir}/doc/%{name} %{_datadir}/doc/%{name}/* @@ -359,9 +366,8 @@ rm -rf %{buildroot}/%{_datadir}/%{name}/README %if 0%{?suse_version} >= 1210 %_unitdir/cf-serverd.service %else -%{workdir}/bin/cf-serverd /etc/init.d/cf-serverd -/usr/sbin/rccf-serverd +%{_sbindir}/rccf-serverd %endif %changelog From 8cee06dbaaaf341cf4a6a59450190e38303f9a1faa1027d618af1dc0075aff2a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= Date: Mon, 8 Oct 2012 13:04:19 +0000 Subject: [PATCH 4/9] - honor filesystem hierachy standard (FHS): - build with --enable-fhs - honor documentation - install in /var/cfengine - support systemd where applicable OBS-URL: https://build.opensuse.org/package/show/systemsmanagement/cfengine?expand=0&rev=23 --- cfengine.changes | 8 ++++++- cfengine.spec | 55 ++++++++++++++++++++++++++++++------------------ 2 files changed, 42 insertions(+), 21 deletions(-) diff --git a/cfengine.changes b/cfengine.changes index 6fbe2bf..4f33e73 100644 --- a/cfengine.changes +++ b/cfengine.changes @@ -1,7 +1,13 @@ ------------------------------------------------------------------- Thu Oct 4 08:48:10 UTC 2012 - kkaempf@suse.com -- honor filesystem hierachy standard (FHS): build with --enable-fhs +- honor filesystem hierachy standard (FHS): + - build with --enable-fhs + +- honor documentation + - install in /var/cfengine + +- support systemd where applicable - update to 3.0.4b2 New features: diff --git a/cfengine.spec b/cfengine.spec index c41e636..dd4f257 100644 --- a/cfengine.spec +++ b/cfengine.spec @@ -19,8 +19,10 @@ Name: cfengine %define libname libpromises %define libsoname %{libname}1 -%define basedir /var/lib/%{name} -%define workdir %{basedir}/work + +# Yes, its not FHS conformant but in sync with cfengine documentation +%define basedir /var/%{name} +%define workdir %{basedir} Summary: CFEngine automates large-scale IT computing infrastructure License: GPL-3.0 @@ -151,7 +153,7 @@ CC=gcc CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" \ --disable-static \ --enable-fhs \ --with-libxml2 \ - --datadir=/var/lib \ + --datadir=/var \ --docdir=%{_docdir}/%{name} \ --with-workdir=%{workdir} %{__make} %{?_smp_mflags} @@ -163,7 +165,7 @@ CC=gcc CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" \ [ -d %{buildroot} ] && [ "%{buildroot}" != "/" ] && %{__rm} -rf %{buildroot} %endif %{__make} "DESTDIR=%{buildroot}" install -%{__install} -d %{buildroot}/{usr/sbin,%{workdir}/{bin,inputs}} +%{__install} -d %{buildroot}/{usr/sbin,%{workdir}/{bin,inputs,reports}} # create dirs needed for better organizing dirs and files %{__install} -d %{buildroot}/%{basedir}/{backup,failsafe,config} @@ -196,21 +198,21 @@ sed -i\ %{__install} -m 0644 %{S:1} %{S:2} %{S:3} %{S:4} %{S:5} %{S:6} %{buildroot}/%{_datadir}/doc/%{name} # create symlinks for sbin_PROGRAMS -# WHY ? -#for i in cf-agent cf-execd cf-key cf-know cf-monitord cf-promises cf-report cf-runagent cf-serverd; do -# %{__ln_s} -f ../../../../..%{_sbindir}/${i} %{buildroot}%{workdir}/bin/${i} -#done +# because: cf-promises needs to be installed in /var/cfengine/work/bin for pre-validation of full configuration +for i in cf-agent cf-execd cf-key cf-monitord cf-promises cf-report cf-runagent cf-serverd; do + %{__ln_s} -f ../../..%{_sbindir}/${i} %{buildroot}%{workdir}/bin/${i} +done -# mv all masterfiles/*.cf to masterfiles/*.cf.default -#pushd %{buildroot}%{basedir}/masterfiles -#for j in $(ls -1); do -# cp -a * ../work/inputs/ -# mv ${j} ${j}.default -#done +# Install masterfiles (as %config(noreplace) ) +%{__install} -d %{buildroot}/%{basedir}/masterfiles +%{__install} -m 0644 masterfiles/def.cf %{buildroot}/%{basedir}/masterfiles +%{__install} -m 0644 masterfiles/promises.cf %{buildroot}/%{basedir}/masterfiles +%{__install} -m 0644 masterfiles/libraries/cfengine_stdlib.cf %{buildroot}/%{basedir}/masterfiles +%{__install} -m 0644 masterfiles/failsafe/failsafe.cf %{buildroot}/%{basedir}/masterfiles rm -rf %{buildroot}/%{_libdir}/%{name}/libpromises.la -#{__rm} -rf %{buildroot}/%{_libdir}/libpromises.a +# will appear in %docdir rm -rf %{buildroot}/%{_datadir}/%{name}/ChangeLog rm -rf %{buildroot}/%{_datadir}/%{name}/README @@ -241,6 +243,11 @@ rm -rf %{buildroot}/%{_datadir}/%{name}/README %service_add_pre cf-serverd.service %post server +if [ ${1:-0} -ne 1 ]; then + cp -a /usr/share/cfengine/CoreBase/controls /var/cfengine/inputs + cp -a /usr/share/cfengine/CoreBase/libraries /var/cfengine/inputs + cp -a /usr/share/cfengine/CoreBase/services /var/cfengine/inputs +fi %service_add_post cf-serverd.service %preun server @@ -334,16 +341,23 @@ rm -rf %{buildroot}/%{_datadir}/%{name}/README %{_mandir}/man?/* %dir %{basedir} -%dir %{_datadir}/%{name} -%{_datadir}/%{name}/* -#%dir %{workdir} -#%{workdir}/* +/var/%{name} %exclude %{basedir}/backup %exclude %{basedir}/config #%exclude %{basedir}/failsafe -#%exclude %{workdir}/bin/cf-serverd + +%dir %{_datadir}/%{name} +%{_datadir}/%{name}/* + +%dir %{workdir} +%{workdir}/* +%exclude %{workdir}/bin/cf-serverd + %config(noreplace) /etc/cron.d/%{name} +%dir %{basedir}/masterfiles +%config(noreplace) %{basedir}/masterfiles/*.cf + %files -n %{libsoname} %defattr(-,root,root) %dir %{_libdir}/%{name} @@ -363,6 +377,7 @@ rm -rf %{buildroot}/%{_datadir}/%{name}/README %{basedir}/backup %{basedir}/config %{_sbindir}/cf-serverd +%{workdir}/bin/cf-serverd %if 0%{?suse_version} >= 1210 %_unitdir/cf-serverd.service %else From 9a3c9e7e10c8288176139b7f5a4617299e793c00b156674ed2062a49abe768c5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= Date: Mon, 8 Oct 2012 14:31:45 +0000 Subject: [PATCH 5/9] - workaround for potential buffer overflow OBS-URL: https://build.opensuse.org/package/show/systemsmanagement/cfengine?expand=0&rev=24 --- cfengine-3.4.0b2.patch | 12 ++++++++++++ cfengine.changes | 5 +++++ cfengine.spec | 3 +++ 3 files changed, 20 insertions(+) create mode 100644 cfengine-3.4.0b2.patch diff --git a/cfengine-3.4.0b2.patch b/cfengine-3.4.0b2.patch new file mode 100644 index 0000000..7a8c7ca --- /dev/null +++ b/cfengine-3.4.0b2.patch @@ -0,0 +1,12 @@ +diff -wruN -x '*~' -x '*.o' -x '*.a' -x '*.so' -x '*.so.[0-9]' -x autom4te.cache -x .deps -x .libs -x Makefile -x Makefile.in ../orig-cfengine-3.4.0b2/src/server.c ./src/server.c +--- ../orig-cfengine-3.4.0b2/src/server.c 2012-10-01 17:53:14.000000000 +0200 ++++ ./src/server.c 2012-10-08 16:27:48.661757672 +0200 +@@ -2359,7 +2359,7 @@ + + if (strlen(ReadLastNode(filename)) > CF_MAXLINKSIZE) + { +- snprintf(sendbuffer, CF_BUFSIZE * 2, "BAD: Filename suspiciously long [%s]\n", filename); ++ snprintf(sendbuffer, CF_BUFSIZE, "BAD: Filename suspiciously long [%s]\n", filename); + CfOut(cf_error, "", "%s", sendbuffer); + SendTransaction(conn->sd_reply, sendbuffer, 0, CF_DONE); + return -1; diff --git a/cfengine.changes b/cfengine.changes index 4f33e73..7512796 100644 --- a/cfengine.changes +++ b/cfengine.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Mon Oct 8 14:31:23 UTC 2012 - kkaempf@suse.com + +- workaround for potential buffer overflow + ------------------------------------------------------------------- Thu Oct 4 08:48:10 UTC 2012 - kkaempf@suse.com diff --git a/cfengine.spec b/cfengine.spec index dd4f257..168d7a7 100644 --- a/cfengine.spec +++ b/cfengine.spec @@ -31,6 +31,7 @@ Version: 3.4.0b2 Release: 0 Url: http://www.cfengine.org/ Source: %{name}-%{version}.tar.bz2 +Patch: %{name}-%{version}.patch Source1: http://www.cfengine.org/manuals/cf3-Reference.pdf Source2: http://www.cfengine.org/manuals/cf3-conceptguide.pdf Source3: http://www.cfengine.org/manuals/cf3-glossary.pdf @@ -137,6 +138,8 @@ This package contains the files of the cfengine server. %prep %setup -q +# Buffer overflow at server.c:2362 +%patch -p1 ##### rpmlint #### wrong-file-end-of-line-encoding #### incorrect-fsf-address From e57c0569499d3cfa0d7e2fbb03f21a11ef7d6928cb031e8e8168896776fff7b1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= Date: Sun, 21 Oct 2012 10:08:48 +0000 Subject: [PATCH 6/9] - fix systemd check (use systemd for openSUSE 12.1 too) OBS-URL: https://build.opensuse.org/package/show/systemsmanagement/cfengine?expand=0&rev=25 --- cfengine.changes | 5 +++++ cfengine.spec | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/cfengine.changes b/cfengine.changes index 7512796..cbb9ce3 100644 --- a/cfengine.changes +++ b/cfengine.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Sun Oct 21 10:07:18 UTC 2012 - kkaempf@suse.com + +- fix systemd check (use systemd for openSUSE 12.1 too) + ------------------------------------------------------------------- Mon Oct 8 14:31:23 UTC 2012 - kkaempf@suse.com diff --git a/cfengine.spec b/cfengine.spec index 168d7a7..ca41084 100644 --- a/cfengine.spec +++ b/cfengine.spec @@ -177,7 +177,7 @@ CC=gcc CFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" \ # install cron file %{__install} -D -m0644 %{S:10} %{buildroot}/%{_sysconfdir}/cron.d/%{name} -%if 0%{?suse_version} > 1210 +%if 0%{?suse_version} >= 1210 # install systemd scripts %{__install} -D -m 0644 %{S:7} %{buildroot}/%_unitdir/cf-execd.service %{__install} -D -m 0644 %{S:8} %{buildroot}/%_unitdir/cf-monitord.service From ce568e02ed0834415cf7bc3557ef5ae8221677404aca584bc81e3c80a828ed03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= Date: Thu, 29 Nov 2012 08:18:22 +0000 Subject: [PATCH 7/9] - update to 3.4.0 final OBS-URL: https://build.opensuse.org/package/show/systemsmanagement/cfengine?expand=0&rev=26 --- cfengine-3.4.0.patch | 24 ++++++++++++++++++++++++ cfengine-3.4.0.tar.bz2 | 3 +++ cfengine-3.4.0b2.patch | 12 ------------ cfengine-3.4.0b2.tar.bz2 | 3 --- cfengine.changes | 5 +++++ cfengine.spec | 3 ++- 6 files changed, 34 insertions(+), 16 deletions(-) create mode 100644 cfengine-3.4.0.patch create mode 100644 cfengine-3.4.0.tar.bz2 delete mode 100644 cfengine-3.4.0b2.patch delete mode 100644 cfengine-3.4.0b2.tar.bz2 diff --git a/cfengine-3.4.0.patch b/cfengine-3.4.0.patch new file mode 100644 index 0000000..948b244 --- /dev/null +++ b/cfengine-3.4.0.patch @@ -0,0 +1,24 @@ +diff -wruN -x '*~' -x '*.o' -x '*.a' -x '*.so' -x '*.so.[0-9]' -x autom4te.cache -x .deps -x .libs -x Makefile -x Makefile.in ../orig-cfengine-3.4.0/src/files_select.c ./src/files_select.c +--- ../orig-cfengine-3.4.0/src/files_select.c 2012-11-26 12:13:20.000000000 +0100 ++++ ./src/files_select.c 2012-11-29 09:15:53.859129139 +0100 +@@ -285,7 +285,7 @@ + + #ifndef MINGW // no uids on Windows + char buffer[CF_SMALLBUF]; +- snprintf(buffer, CF_BUFSIZE, "%jd", (uintmax_t) lstatptr->st_uid); ++ snprintf(buffer, CF_SMALLBUF, "%jd", (uintmax_t) lstatptr->st_uid); + PrependAlphaList(&leafattrib, buffer); + #endif /* MINGW */ + +diff -wruN -x '*~' -x '*.o' -x '*.a' -x '*.so' -x '*.so.[0-9]' -x autom4te.cache -x .deps -x .libs -x Makefile -x Makefile.in ../orig-cfengine-3.4.0/src/server.c ./src/server.c +--- ../orig-cfengine-3.4.0/src/server.c 2012-11-26 12:13:20.000000000 +0100 ++++ ./src/server.c 2012-11-29 08:49:31.871817185 +0100 +@@ -2367,7 +2367,7 @@ + + if (strlen(ReadLastNode(filename)) > CF_MAXLINKSIZE) + { +- snprintf(sendbuffer, CF_BUFSIZE * 2, "BAD: Filename suspiciously long [%s]\n", filename); ++ snprintf(sendbuffer, CF_BUFSIZE, "BAD: Filename suspiciously long [%s]\n", filename); + CfOut(cf_error, "", "%s", sendbuffer); + SendTransaction(conn->sd_reply, sendbuffer, 0, CF_DONE); + return -1; diff --git a/cfengine-3.4.0.tar.bz2 b/cfengine-3.4.0.tar.bz2 new file mode 100644 index 0000000..b5db3ed --- /dev/null +++ b/cfengine-3.4.0.tar.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:75c113b37988529634237b3bc349aa69dfcb3c69ed92f649a0e6f2e97d72b025 +size 4263916 diff --git a/cfengine-3.4.0b2.patch b/cfengine-3.4.0b2.patch deleted file mode 100644 index 7a8c7ca..0000000 --- a/cfengine-3.4.0b2.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -wruN -x '*~' -x '*.o' -x '*.a' -x '*.so' -x '*.so.[0-9]' -x autom4te.cache -x .deps -x .libs -x Makefile -x Makefile.in ../orig-cfengine-3.4.0b2/src/server.c ./src/server.c ---- ../orig-cfengine-3.4.0b2/src/server.c 2012-10-01 17:53:14.000000000 +0200 -+++ ./src/server.c 2012-10-08 16:27:48.661757672 +0200 -@@ -2359,7 +2359,7 @@ - - if (strlen(ReadLastNode(filename)) > CF_MAXLINKSIZE) - { -- snprintf(sendbuffer, CF_BUFSIZE * 2, "BAD: Filename suspiciously long [%s]\n", filename); -+ snprintf(sendbuffer, CF_BUFSIZE, "BAD: Filename suspiciously long [%s]\n", filename); - CfOut(cf_error, "", "%s", sendbuffer); - SendTransaction(conn->sd_reply, sendbuffer, 0, CF_DONE); - return -1; diff --git a/cfengine-3.4.0b2.tar.bz2 b/cfengine-3.4.0b2.tar.bz2 deleted file mode 100644 index 50910fd..0000000 --- a/cfengine-3.4.0b2.tar.bz2 +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:a38fdf1ed79648630841ec8736e83b5439af7b399a509a0f12d0abf763b88b64 -size 4253260 diff --git a/cfengine.changes b/cfengine.changes index cbb9ce3..89adad9 100644 --- a/cfengine.changes +++ b/cfengine.changes @@ -1,3 +1,8 @@ +------------------------------------------------------------------- +Thu Nov 29 07:48:20 UTC 2012 - kkaempf@suse.com + +- update to 3.4.0 final + ------------------------------------------------------------------- Sun Oct 21 10:07:18 UTC 2012 - kkaempf@suse.com diff --git a/cfengine.spec b/cfengine.spec index ca41084..aa9a329 100644 --- a/cfengine.spec +++ b/cfengine.spec @@ -27,7 +27,7 @@ Name: cfengine Summary: CFEngine automates large-scale IT computing infrastructure License: GPL-3.0 Group: Productivity/Networking/System -Version: 3.4.0b2 +Version: 3.4.0 Release: 0 Url: http://www.cfengine.org/ Source: %{name}-%{version}.tar.bz2 @@ -332,6 +332,7 @@ fi %{_sbindir}/cf-promises %{_sbindir}/cf-report %{_sbindir}/cf-runagent +%{_sbindir}/rpmvercmp %if 0%{?suse_version} >= 1210 %_unitdir/cf-execd.service %_unitdir/cf-monitord.service From bb854620f519870f20be15aa27567a981e0ca5d34758bab281ae67d841900f5d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= Date: Thu, 29 Nov 2012 08:19:20 +0000 Subject: [PATCH 8/9] comment on patch OBS-URL: https://build.opensuse.org/package/show/systemsmanagement/cfengine?expand=0&rev=27 --- cfengine.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/cfengine.spec b/cfengine.spec index aa9a329..0d3586f 100644 --- a/cfengine.spec +++ b/cfengine.spec @@ -31,6 +31,7 @@ Version: 3.4.0 Release: 0 Url: http://www.cfengine.org/ Source: %{name}-%{version}.tar.bz2 +# fix possible buffer overflows, reported upstream, kkaempf@suse.de Patch: %{name}-%{version}.patch Source1: http://www.cfengine.org/manuals/cf3-Reference.pdf Source2: http://www.cfengine.org/manuals/cf3-conceptguide.pdf From 49af7dc3f9bece97d06c49f100c7a3834b3bd7977f4e7a5b744a917de6592cfe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Klaus=20K=C3=A4mpf?= Date: Thu, 29 Nov 2012 08:31:45 +0000 Subject: [PATCH 9/9] refresh PDFs OBS-URL: https://build.opensuse.org/package/show/systemsmanagement/cfengine?expand=0&rev=28 --- cf3-Reference.pdf | 4 ++-- cf3-conceptguide.pdf | 4 ++-- cf3-glossary.pdf | 4 ++-- cf3-quickstart.pdf | 4 ++-- cf3-solutions.pdf | 4 ++-- cf3-tutorial.pdf | 4 ++-- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/cf3-Reference.pdf b/cf3-Reference.pdf index 9bd19b9..e450ae1 100644 --- a/cf3-Reference.pdf +++ b/cf3-Reference.pdf @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1789439f4cdfc5eea231bde0d81457a41d7095435f3c9f3ed48de9721db8c303 -size 7992964 +oid sha256:fd7df0011fd6285788a5fcebe6ec1a78136b9454ed276c5eb3c6f6199b826d58 +size 8162816 diff --git a/cf3-conceptguide.pdf b/cf3-conceptguide.pdf index c16f91f..34b22b5 100644 --- a/cf3-conceptguide.pdf +++ b/cf3-conceptguide.pdf @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:68224b883d6f01eb0c7802fdc70cbabd8a453a733b337aea326e2bc35f93e6dd -size 981077 +oid sha256:db9eaaa9557fb2b8f61d501a548a3de3dd80334798c9037fb094889906690500 +size 981075 diff --git a/cf3-glossary.pdf b/cf3-glossary.pdf index a7859b2..de9212c 100644 --- a/cf3-glossary.pdf +++ b/cf3-glossary.pdf @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:b82a5bdcf95c9973a25bd2c268dce34e874372c2009347b65a73883c101a4710 -size 157217 +oid sha256:dcbb2eabf797e84ae77cc7bf25698084691c2a9f4702ac3ad6cc21eb8012fed2 +size 157132 diff --git a/cf3-quickstart.pdf b/cf3-quickstart.pdf index 812e96e..dddb037 100644 --- a/cf3-quickstart.pdf +++ b/cf3-quickstart.pdf @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:8a5c6bbd2a6dd2406255202b4b9c90a1f59c2e3468e4fc26c0b15b04c6d8467d -size 419346 +oid sha256:bb8774b41abdc19eb403b5c63ebb18f79cad25662de76740af29cf2cd4e33c08 +size 420062 diff --git a/cf3-solutions.pdf b/cf3-solutions.pdf index dc4399d..5349960 100644 --- a/cf3-solutions.pdf +++ b/cf3-solutions.pdf @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d780f36796cc32a8620ccaa6d5ae9c5ad8ee8fde4c2074561a56682cdceee627 -size 2355908 +oid sha256:bf70b99c4bf6f36a45ee8359dcad6d50e5b931aae915c47035ed826e9587319b +size 2355867 diff --git a/cf3-tutorial.pdf b/cf3-tutorial.pdf index f441bc7..deee58c 100644 --- a/cf3-tutorial.pdf +++ b/cf3-tutorial.pdf @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:d52d7f385f087a416b964eb0ac465ccc13f7aab4518af7e830f8144d7eb1859f -size 1201108 +oid sha256:9456f84e31dfa425bccfce5848eaf63221189079369c569f53f63eee16626f26 +size 1201485