X-Git-Url: http://git.linux-vserver.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=scripts%2Fvserver-build.yum;h=23fe4368e1e3e28a43b4c691f569e646c7ef7e81;hb=591ac183dae62631476d29a789db680f9363a2ef;hp=8fccd40e2d357f208e6d11ea4cfbb967d5db5c85;hpb=9c78378bebc1a9f3d400f422df8ede9efea57dea;p=util-vserver.git diff --git a/scripts/vserver-build.yum b/scripts/vserver-build.yum index 8fccd40..23fe436 100644 --- a/scripts/vserver-build.yum +++ b/scripts/vserver-build.yum @@ -27,7 +27,7 @@ while true; do (-d) DISTRIBUTION=$2; shift;; (--debug) set -x;; (--) shift; break ;; - (*) echo "vserver-build.yum-rpm: internal error: unrecognized option '$1'" >&2 + (*) echo "vserver-build.yum: internal error: unrecognized option '$1'" >&2 exit 1 ;; esac @@ -53,13 +53,38 @@ setup_writeOption "$VSERVER_NAME" setup_writeInitialFstab test -z "$BUILD_INITPRE" || "$BUILD_INITPRE" "$SETUP_CONFDIR" "$UTIL_VSERVER_VARS" + +if $_VSERVER_INFO - FEATURE persistent; then + $_VSPACE --new --mount --fs -- \ + $_VCONTEXT --create ${SETUP_CONTEXT:+--xid "$SETUP_CONTEXT"} --silent -- \ + $_VUNAME --set --xid self -t context="rpm-fake $SETUP_CONFDIR" -- \ + $_VSPACE --set --mount --fs -- \ + $_SAVE_CTXINFO "$SETUP_CONFDIR" \ + $_VATTRIBUTE --set --xid self --secure --flag persistent -- \ + $_VCONTEXT --xid self --migrate-self --endsetup -- \ + /bin/true + RPM_FAKE_CTX=`$_CAT $SETUP_CONFDIR/run` + export RPM_FAKE_CTX + base._addGeneratedFile "`$_READLINK $SETUP_CONFDIR/run`" + base.pushCleanup $_VATTRIBUTE --xid "$RPM_FAKE_CTX" --flag '!persistent' +fi + rpm.initDB "$SETUP_CONFDIR" rpm.importGPGPubKeys "$SETUP_CONFDIR" \ "$__CONFDIR/.distributions/$DISTRIBUTION/pubkeys" \ "$__CONFDIR/.distributions/.common/pubkeys" \ "$__DISTRIBDIR/$DISTRIBUTION/pubkeys" yum.installBasePackages "$SETUP_CONFDIR" "$PKGINSTALLDIR" + +test -z "$1" || $_VYUM "$SETUP_CONFDIR" -- -y install "$@" + $_VYUM "$SETUP_CONFDIR" -- clean all + +if $_VSERVER_INFO - FEATURE persistent; then + base.popCleanup + $_VATTRIBUTE --xid "$RPM_FAKE_CTX" --flag '!persistent' +fi + test -z "$BUILD_INITPOST" || "$BUILD_INITPOST" "$SETUP_CONFDIR" "$UTIL_VSERVER_VARS" base.setSuccess