Index: head/sysutils/pot/Makefile =================================================================== --- head/sysutils/pot/Makefile (revision 532660) +++ head/sysutils/pot/Makefile (revision 532661) @@ -1,67 +1,67 @@ # Created by: Luca Pizzamiglio # $FreeBSD$ PORTNAME= pot -PORTVERSION= 0.10.4 -PORTREVISION= 1 +PORTVERSION= 0.11.1 +PORTREVISION= 0 CATEGORIES= sysutils MAINTAINER= pizzamig@FreeBSD.org COMMENT= Container framework for FreeBSD LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE RUN_DEPENDS= potnet:sysutils/potnet \ ncat:security/nmap \ ${LOCALBASE}/share/freebsd/MANIFESTS/amd64-amd64-11.2-RELEASE:misc/freebsd-release-manifests -USE_RC_SUBR= pot +USE_RC_SUBR= pot pot_early USE_GITHUB= yes GH_ACCOUNT= pizzamig NO_ARCH= yes NO_BUILD= yes OPTIONS_DEFINE= DOCS ZSH ZSH_DESC= Zsh Autocompletion support OPTIONS_DEFAULT= ZSH OPTIONS_SUB= yes PORTDOCS= * do-install: ${INSTALL_SCRIPT} ${WRKSRC}/bin/pot \ ${STAGEDIR}${PREFIX}/bin/ ${MKDIR} ${STAGEDIR}${DATADIR} ( cd ${WRKSRC}/share/pot && ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR}) ${MKDIR} ${STAGEDIR}${ETCDIR} ${MKDIR} ${STAGEDIR}${ETCDIR}/flavours ${INSTALL_DATA} ${WRKSRC}/etc/pot/pot.default.conf \ ${STAGEDIR}${ETCDIR} ${INSTALL_DATA} ${WRKSRC}/etc/pot/pot.conf.sample \ ${STAGEDIR}${ETCDIR} ${INSTALL_SCRIPT} ${WRKSRC}/etc/pot/flavours/dns.sh \ ${STAGEDIR}${ETCDIR}/flavours ${INSTALL_DATA} ${WRKSRC}/etc/pot/flavours/dns \ ${STAGEDIR}${ETCDIR}/flavours ${INSTALL_SCRIPT} ${WRKSRC}/etc/pot/flavours/fbsd-update.sh \ ${STAGEDIR}${ETCDIR}/flavours ${INSTALL_SCRIPT} ${WRKSRC}/etc/pot/flavours/slim.sh \ ${STAGEDIR}${ETCDIR}/flavours do-install-ZSH-on: ( cd ${WRKSRC}/share/zsh && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/share/zsh) post-install-DOCS-on: ${MKDIR} ${STAGEDIR}${DOCSDIR}/ ${INSTALL_DATA} ${WRKSRC}/share/doc/pot/Installation.md \ ${STAGEDIR}${DOCSDIR}/ ${INSTALL_DATA} ${WRKSRC}/share/doc/pot/QuickStart.md \ ${STAGEDIR}${DOCSDIR}/ ${INSTALL_DATA} ${WRKSRC}/share/doc/pot/Images.md \ ${STAGEDIR}${DOCSDIR}/ .include Index: head/sysutils/pot/distinfo =================================================================== --- head/sysutils/pot/distinfo (revision 532660) +++ head/sysutils/pot/distinfo (revision 532661) @@ -1,3 +1,3 @@ -TIMESTAMP = 1582539340 -SHA256 (pizzamig-pot-0.10.4_GH0.tar.gz) = 767abb10f41936487f53e69d7f03b64136733e4570f7ee51202d0813680aca4b -SIZE (pizzamig-pot-0.10.4_GH0.tar.gz) = 150694 +TIMESTAMP = 1587327646 +SHA256 (pizzamig-pot-0.11.1_GH0.tar.gz) = 76b4acd2ac37f35ce533208e6fc51625542adf69e95aa6b02b12a97485eaa106 +SIZE (pizzamig-pot-0.11.1_GH0.tar.gz) = 152172 Index: head/sysutils/pot/files/pot.in =================================================================== --- head/sysutils/pot/files/pot.in (revision 532660) +++ head/sysutils/pot/files/pot.in (revision 532661) @@ -1,86 +1,92 @@ #!/bin/sh # $FreeBSD$ # PROVIDE: pot -# REQUIRE: NETWORKING syslogd pf -# BEFORE: ntpdate +# REQUIRE: NETWORKING LOGIN FILESYSTEM +# BEFORE: securelevel # KEYWORD: shutdown nojail . /etc/rc.subr PATH=$PATH:%%PREFIX%%/bin name="pot" desc="Pot containers" procname="pot" rcvar=pot_enable start_cmd="pot_start" stop_cmd="pot_stop" restart_cmd="pot_restart" status_cmd="pot_status" -start_precmd="pot_deprecated_start" -stop_postcmd="pot_deprecated_stop" load_rc_config $name : ${pot_enable:=NO} -: ${pot_list:=""} -pot_deprecated_start() +pot_start() { - if [ -n "$pot_list" ]; then - echo "pot_list is deprecated! please use pot set-attr to set the start-at-boot attribute to your pot" - fi + local _pname _dyn_pot_list _start + _dyn_pot_list=$(%%PREFIX%%/bin/pot ls -q) + for _pname in $_dyn_pot_list ; do + if [ "$( %%PREFIX%%/bin/pot get-attr -p "$_pname" -A start-at-boot -q )" = "YES" ]; then + %%PREFIX%%/bin/pot start "$_pname" + fi + done } -pot_deprecated_stop() +pot_stop() { - if [ -n "$pot_list" ]; then - echo "pot_list is deprecated! please use pot set-attr to set the start-at-boot attribute to your pot" - fi + local _pname _dyn_pot_list _start + _dyn_pot_list=$(%%PREFIX%%/bin/pot ls -q) + for _pname in $_dyn_pot_list ; do + if [ "$( %%PREFIX%%/bin/pot get-attr -p "$_pname" -A start-at-boot -q )" = "YES" ]; then + %%PREFIX%%/bin/pot stop "$_pname" + fi + done } -pot_start() +pot_early_start() { local _pname _dyn_pot_list _start _dyn_pot_list=$(%%PREFIX%%/bin/pot ls -q) for _pname in $_dyn_pot_list ; do - if _start=$( %%PREFIX%%/bin/pot get-attr -p "$_pname" -A start-at-boot -q ) && [ "$_start" = "YES" ]; then + if [ "$( %%PREFIX%%/bin/pot get-attr -p "$_pname" -A early-start-at-boot -q )" = "YES" ]; then %%PREFIX%%/bin/pot start "$_pname" fi done } -pot_stop() +pot_early_stop() { local _pname _dyn_pot_list _start _dyn_pot_list=$(%%PREFIX%%/bin/pot ls -q) for _pname in $_dyn_pot_list ; do - if _start=$( %%PREFIX%%/bin/pot get-attr -p "$_pname" -A start-at-boot -q ) && [ "$_start" = "YES" ]; then + if [ "$( %%PREFIX%%/bin/pot get-attr -p "$_pname" -A early-start-at-boot -q )" = "YES" ]; then %%PREFIX%%/bin/pot stop "$_pname" fi done } pot_restart() { pot_stop - pot_deprecated_stop + pot_early_stop sleep 5 + pot_early_start pot_start - pot_deprecated_start } pot_status() { - local _pname _dyn_pot_list _start + local _pname _dyn_pot_list for _pname in $_dyn_pot_list ; do - if _start=$( %%PREFIX%%/bin/pot get-attr -p "$_pname" -A start-at-boot -q ) && [ "$_start" = "YES" ]; then + if [ "$( %%PREFIX%%/bin/pot get-attr -p "$_pname" -A early-start-at-boot -q )" = "YES" ] || + [ "$( %%PREFIX%%/bin/pot get-attr -p "$_pname" -A start-at-boot -q )" = "YES" ]; then if %%PREFIX%%/bin/pot info -qrp "$_pname" ; then echo "pot $_pname is up and running" else echo "pot $_pname is not running" fi fi done } run_rc_command "$1" Index: head/sysutils/pot/files/pot_early.in =================================================================== --- head/sysutils/pot/files/pot_early.in (nonexistent) +++ head/sysutils/pot/files/pot_early.in (revision 532661) @@ -0,0 +1,44 @@ +#!/bin/sh +# $FreeBSD$ + +# PROVIDE: pot_early +# REQUIRE: NETWORKING syslogd pf +# BEFORE: ntpdate +# KEYWORD: shutdown nojail + +. /etc/rc.subr + +PATH=$PATH:/usr/local/bin +name="pot_early" +desc="Pot containers - early start" +procname="pot" +rcvar=pot_enable +start_cmd="pot_early_start" +stop_cmd="pot_early_stop" + +load_rc_config $name +: ${pot_enable:=NO} + +pot_early_start() +{ + local _pname _dyn_pot_list _start + _dyn_pot_list=$(%%PREFIX%%/bin/pot ls -q) + for _pname in $_dyn_pot_list ; do + if [ "$( %%PREFIX%%/bin/pot get-attr -p "$_pname" -A early-start-at-boot -q )" = "YES" ]; then + %%PREFIX%%/bin/pot start "$_pname" + fi + done +} + +pot_early_stop() +{ + local _pname _dyn_pot_list _start + _dyn_pot_list=$(%%PREFIX%%/bin/pot ls -q) + for _pname in $_dyn_pot_list ; do + if [ "$( %%PREFIX%%/bin/pot get-attr -p "$_pname" -A early-start-at-boot -q )" = "YES" ]; then + %%PREFIX%%/bin/pot stop "$_pname" + fi + done +} + +run_rc_command "$1" Property changes on: head/sysutils/pot/files/pot_early.in ___________________________________________________________________ Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:keywords ## -0,0 +1 ## +FreeBSD=%H \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/sysutils/pot/pkg-plist =================================================================== --- head/sysutils/pot/pkg-plist (revision 532660) +++ head/sysutils/pot/pkg-plist (revision 532661) @@ -1,52 +1,53 @@ bin/pot %%ETCDIR%%/flavours/dns.sh %%ETCDIR%%/flavours/dns %%ETCDIR%%/flavours/fbsd-update.sh %%ETCDIR%%/flavours/slim.sh @sample %%ETCDIR%%/pot.conf.sample %%ETCDIR%%/pot.default.conf %%DATADIR%%/add-dep.sh %%DATADIR%%/clone-fscomp.sh %%DATADIR%%/clone.sh %%DATADIR%%/common.sh %%DATADIR%%/config.sh %%DATADIR%%/copy-in.sh %%DATADIR%%/create-base.sh %%DATADIR%%/create-dns.sh %%DATADIR%%/create-fscomp.sh %%DATADIR%%/create-private-bridge.sh %%DATADIR%%/create.sh %%DATADIR%%/de-init.sh %%DATADIR%%/destroy.sh %%DATADIR%%/export.sh %%DATADIR%%/export-ports.sh %%DATADIR%%/get-attribute.sh %%DATADIR%%/get-rss.sh %%DATADIR%%/help.sh %%DATADIR%%/import.sh %%DATADIR%%/info.sh %%DATADIR%%/init.sh %%DATADIR%%/list.sh %%DATADIR%%/mount-in.sh +%%DATADIR%%/network.sh %%DATADIR%%/prepare.sh %%DATADIR%%/prune.sh %%DATADIR%%/ps.sh %%DATADIR%%/purge-snapshots.sh %%DATADIR%%/rename.sh %%DATADIR%%/revert.sh %%DATADIR%%/set-attribute.sh %%DATADIR%%/set-cmd.sh %%DATADIR%%/set-env.sh %%DATADIR%%/set-hook.sh %%DATADIR%%/set-hosts.sh %%DATADIR%%/set-rss.sh %%DATADIR%%/show.sh %%DATADIR%%/snapshot.sh %%DATADIR%%/start.sh %%DATADIR%%/stop.sh %%DATADIR%%/term.sh %%DATADIR%%/top.sh %%DATADIR%%/update-config.sh %%DATADIR%%/version.sh %%DATADIR%%/vnet-start.sh %%ZSH%%share/zsh/site-functions/_pot