From 039ba92c891ffa2ea33526cb5015fc02af2e9131 Mon Sep 17 00:00:00 2001 From: Franco Fichtner Date: Sat, 2 Sep 2017 15:48:24 +0200 Subject: [PATCH] Framework: merge improvements from master --- Makefile | 1 + Mk/plugins.mk | 31 +++++++++++++++++++++++-------- README.md | 2 ++ Templates/actions.d | 5 +---- Templates/models | 1 + Templates/templates | 2 ++ 6 files changed, 30 insertions(+), 12 deletions(-) create mode 100644 Templates/models create mode 100644 Templates/templates diff --git a/Makefile b/Makefile index 134452a61..96dac8180 100644 --- a/Makefile +++ b/Makefile @@ -15,6 +15,7 @@ list: @echo ${PLUGIN_DIR} -- $$(${MAKE} -C ${PLUGIN_DIR} -V PLUGIN_COMMENT) .endfor +# shared targets that are sane to run from the root directory TARGETS= lint sweep style style-fix clean .for TARGET in ${TARGETS} diff --git a/Mk/plugins.mk b/Mk/plugins.mk index 04cbc582a..c71b16fdf 100644 --- a/Mk/plugins.mk +++ b/Mk/plugins.mk @@ -115,10 +115,7 @@ scripts-auto: done; \ fi @if [ -d ${.CURDIR}/src/opnsense/service/conf/actions.d ]; then \ - for SCRIPT in +POST_INSTALL +POST_DEINSTALL; do \ - cat ${TEMPLATESDIR}/actions.d >> \ - ${DESTDIR}/$${SCRIPT}; \ - done; \ + cat ${TEMPLATESDIR}/actions.d >> ${DESTDIR}/+POST_INSTALL; \ fi @if [ -d ${.CURDIR}/src/etc/rc.loader.d ]; then \ for SCRIPT in +POST_INSTALL +POST_DEINSTALL; do \ @@ -126,12 +123,19 @@ scripts-auto: ${DESTDIR}/$${SCRIPT}; \ done; \ fi + @if [ -d ${.CURDIR}/src/opnsense/mvc/app/models ]; then \ + for FILE in $$(cd ${.CURDIR}/src/opnsense/mvc/app/models && \ + find -s . -depth 2 -type d); do \ + cat ${TEMPLATESDIR}/models | \ + sed "s:%%ARG%%:$${FILE#./}:g" >> \ + ${DESTDIR}/+POST_INSTALL; \ + done; \ + fi @if [ -d ${.CURDIR}/src/opnsense/service/templates ]; then \ for FILE in $$(cd ${.CURDIR}/src/opnsense/service/templates && \ - find -s . -mindepth 2 -type d); do \ - echo "echo -n \"Reloading template $${FILE#./}: \"" >> \ - ${DESTDIR}/+POST_INSTALL; \ - echo "/usr/local/sbin/configctl template reload $${FILE#./}" >> \ + find -s . -depth 2 -type d); do \ + cat ${TEMPLATESDIR}/templates | \ + sed "s:%%ARG%%:$${FILE#./}:g" >> \ ${DESTDIR}/+POST_INSTALL; \ done; \ fi @@ -207,6 +211,17 @@ package: check @${PKG} create -v -m ${WRKSRC} -r ${WRKSRC} \ -p ${WRKSRC}/plist -o ${PKGDIR} +upgrade-check: check + @if ! ${PKG} info ${PLUGIN_PKGNAME} > /dev/null; then \ + echo ">>> Cannot find package. Please run 'pkg install ${PLUGIN_PKGNAME}'" >&2; \ + exit 1; \ + fi + @rm -rf ${PKGDIR} + +upgrade: upgrade-check package + @${PKG} delete -fy ${PLUGIN_PKGNAME} + @${PKG} add ${PKGDIR}/*.txz + mount: check mount_unionfs ${.CURDIR}/src ${DESTDIR}${LOCALBASE} diff --git a/README.md b/README.md index ba97b4cff..0750932db 100644 --- a/README.md +++ b/README.md @@ -37,6 +37,7 @@ net/ftp-proxy -- Control ftp-proxy processes net/haproxy -- Reliable, high performance TCP/HTTP load balancer net/igmp-proxy -- IGMP-Proxy Service net/l2tp -- L2TP server based on MPD5 +net/mdns-repeater -- Proxy multicast DNS between networks net/pppoe -- PPPoE server based on MPD5 net/pptp -- PPTP server based on MPD5 net/quagga -- Quagga Routing Suite @@ -93,6 +94,7 @@ The make targets for any plugin directory: * install: install to target directory * lint: run syntax checks * package: creates a package +* upgrade: upgrades existing package * remove: remove known files from target directory * style-fix: apply style fixes * style: run style checks diff --git a/Templates/actions.d b/Templates/actions.d index d2b4bc49f..e05a6ed7a 100644 --- a/Templates/actions.d +++ b/Templates/actions.d @@ -1,4 +1 @@ -echo "Restarting configd" -if /usr/local/etc/rc.d/configd status > /dev/null; then - /usr/local/etc/rc.d/configd restart -fi +/usr/local/etc/rc.d/configd restart diff --git a/Templates/models b/Templates/models new file mode 100644 index 000000000..4a2e2de4d --- /dev/null +++ b/Templates/models @@ -0,0 +1 @@ +/usr/local/opnsense/mvc/script/run_migrations.php %%ARG%% diff --git a/Templates/templates b/Templates/templates new file mode 100644 index 000000000..636ea1374 --- /dev/null +++ b/Templates/templates @@ -0,0 +1,2 @@ +echo -n "Reloading template %%ARG%%: " +/usr/local/sbin/configctl template reload %%ARG%%