On Fri, 30 Nov 2012 17:01:59 -0500 Stéphane Graber <stgra...@ubuntu.com> wrote:
> Change lxc-create to add the name of the template, checksum and any > parameters > to the container's configuration. > This makes it easier to debug and figure out exactly how a container > was built. > > Signed-off-by: Stéphane Graber <stgra...@ubuntu.com> > --- > src/lxc/lxc-create.in | 36 +++++++++++++++++++++++------------- > 1 file changed, 23 insertions(+), 13 deletions(-) > > diff --git a/src/lxc/lxc-create.in b/src/lxc/lxc-create.in > index 30f0c22..7a50633 100644 > --- a/src/lxc/lxc-create.in > +++ b/src/lxc/lxc-create.in > @@ -281,7 +281,29 @@ if [ ! -r "$lxc_config" ]; then > exit 1 > fi > -cp $lxc_config $lxc_path/$lxc_name/config > +# Allow for a path to be provided as the template name > +if [ -x $lxc_template ]; then if [ -x "$lxc_template" ]; then other wise will posix shell barf if $lxc_template is empty. > + template_path=$lxc_template > +else > + template_path=${templatedir}/lxc-$lxc_template > +fi > + > +if ! [ -x "$template_path" ]; then > + echo "$(basename $0): unknown template '$lxc_template'" >&2 > + cleanup > +fi > + > +if [ ! -z $lxc_template ]; then Same here. Do: if [ ! -z "$lxc_template" ]; then > + sum=$(sha1sum $template_path | cut -d ' ' -f1) > + echo "# Template used to create this container: $lxc_template" >> > $lxc_path/$lxc_name/config > + if [ -n "$*" ]; then I'm not sure this is ok. I'd do: if [ $# -gt 0 ]; then > + echo "# Parameters passed to the template: $*" >> echo "# Parameters passed to the template: $@" >> > $lxc_path/$lxc_name/config > + fi > + echo "# Checksum of the template script (SHA-1): $sum" >> > $lxc_path/$lxc_name/config > + echo "" >> $lxc_path/$lxc_name/config > +fi > + > +cat $lxc_config >> $lxc_path/$lxc_name/config > if [ -n "$custom_rootfs" ]; then > if grep -q "lxc.rootfs" $lxc_path/$lxc_name/config ; then > @@ -301,18 +323,6 @@ if [ $backingstore = "lvm" ]; then > fi > if [ ! -z $lxc_template ]; then > - # Allow for a path to be provided as the template name > - if [ -x $lxc_template ]; then > - template_path=$lxc_template > - else > - template_path=${templatedir}/lxc-$lxc_template > - fi > - > - if ! [ -x "$template_path" ]; then > - echo "$(basename $0): unknown template '$lxc_template'" >&2 > - cleanup > - fi > - > $template_path --path=$lxc_path/$lxc_name --name=$lxc_name $* > if [ $? -ne 0 ]; then > echo "$(basename $0): failed to execute template > '$lxc_template'" >&2 ------------------------------------------------------------------------------ Keep yourself connected to Go Parallel: TUNE You got it built. Now make it sing. Tune shows you how. http://goparallel.sourceforge.net _______________________________________________ Lxc-devel mailing list Lxc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-devel