On 12/10/2012 11:36 PM, Stéphane Graber wrote: > Hi Daniel, > > You'll find the 0.9.alpha1 pull request below. > > Based on what you had to do last time in Copenhagen, I believe the > following actions are to be done on your side: > > - Properly tag 0.8, currently we only have a commit but no matching > tag, this should be fixed before pulling from staging.
I just forgot to push the tags, it is on my local tree. I am not able to push the tree right now because there is an issue on sourceforge with the owners of the git tree. I opened a ticket for that. > - Review the pull request > - Use "git pull --edit --no-ff --stat git://github.com/lxc/lxc.git", > that should do a real merge, letting you do a proper Sign-off of the > changes. > - Update the version number to 0.9.alpha1 (the version number format > is to avoid breaking RPM based distros) Why 0.9.alpha1 and not 0.9.0-rc1 ? > - Commit and tag > > Major changes include: > - Introduction of the new liblxc API > - Python bindings > - New tools: > - lxc-device > - lxc-start-ephemeral > - python version of lxc-ls > - lxc.autodev support > - oracle template > - reworked lxc-attach > - /etc/lxc/lxc.conf configuration > - Switch to new docbook > - A lot of other improvements, new features and bugfixes (details > below) > > I've been using the staging branch daily for the past few months and as > far as I can tell, all the issues I noticed have been fixed. > All of Serge's tests have also passed against today's staging branch and > same thing for the few tests I usually run here, so it should be a > pretty solid alpha release :) > > Thanks to everyone involved! > > Stéphane > > ---- > > The following changes since commit 4aa7ac35696b87867b1e85410a80527696ff4d64: > > Version 0.8.0 (2012-11-11 03:34:22 +0100) > > are available in the git repository at: > > git://github.com/lxc/lxc.git staging > > for you to fetch changes up to 7323456ec3efe23bb7a84164d3e71d4293998f2c: > > assume LXCPATH took on default localstatedir based value in configure > (2012-12-10 12:34:53 -0500) > > ---------------------------------------------------------------- > Christian Seiler (6): > lxc-start: Add command to retrieve the clone flags used to start > the container. > lxc-attach: Remodel cgroup attach logic and attach to namespaces > again in parent process > lxc-attach: Detect which namespaces to attach to dynamically > lxc-unshare: Move functions to determine clone flags from command > line options to namespace.c > lxc-attach: Add -s option to select namespaces to attach to > lxc-attach: Add -R option to remount /sys and /proc when only > partially attaching > > Diego Elio Pettenò (1): > build: make sure to expand all variables that are substituted. > > Dwight Engen (29): > fix compile without apparmor (against git staging) > fix gcc error: typedef redefinition (against git staging) > fix expansion of LXCPATH,LXCROOTFSMOUNT,LXCTEMPLATEDIR > fix minor spelling error > Better rpm database downgrade logic > Always rebuild rpm database > Fix removal of unneeded startup/shutdown scripts > Honor network type and link from lxc-create -f > Add distro config file /etc/lxc/lxc.conf > Add distro config file /etc/lxc/lxc.conf > Reinstate README file in rootfs directory > Fix package name needed for building docs with RPM > Fix checkconfig to handle kernel memory cgroup name change > Fix fd leak in lxc log > Fix use of list item memory after free > Free allocated configuration memory > Ensure argv passed by createl to create is NULL terminated > Use autoconf LXCPATH instead of hardcoded LXCDIR > Make config api items const > Oracle template: make container also boot under libvirt > Fix busybox template to not have extra aa_profile hunk > Fix build with --enable-tests on Fedora > Include lxc-ubuntu when doing make dist > Create busybox commands as symlinks instead of hardlinks > make install should create $LXCPATH directory > Use LXCPATH and LOCALSTATEDIR instead of hardcoded /var > make install should create /var/cache/lxc directory > lxc.spec: add openssl and rsync as Required since both are used in > lxc-clone > assume LXCPATH took on default localstatedir based value in configure > > Frank Scholten (1): > Updated README and INSTALL. autogen.sh command should be run > before configure. > > Frederic Crozat (1): > ensure btrfs subvolume is removed when container creating fails > > Jan Kiszka (2): > lxc-wait: Add timeout option > Add network-down script > > Natanael Copa (9): > lxc-start: add option -p, --pidfile=FILE > lxc-create: use posix shell instead of bash > lxc-create: fix passing over first argument to template script > lxc-create: do not use 'local' > lxc-info: add option -t, --state-is=STATE to test for a given test > lxc-version: use POSIX shell instead of bash > lxc-checkconfig: use POSIX shell instead of bash > lxc-setcap: use POSIX shell instead of bash > lxc-setuid: use POSIX shell instead of bash > > Peter Simons (2): > Update documentation to Docbook 4.5 > Update documentation to Docbook 4.5 > > Serge Hallyn (39): > Introduce support for seccomp. > confile: support 'lxc.include' option to include other config files > seccomp: include lxcseccomp.h in start.c > fix configure.ac for seccomp and apparmor > Makefile.am: use right .h file name for seccomp > lxc-create: Make location of container rootfs configurable > lxc-wait: initialize timeout to -1 > Add lxc.hook.pre-mount > replace HOOK define with proper code. > check chdir(/) return value > Fix passing non-const char* in for const char* > get_item(utsname): don't dereference utsname if it is NULL > Add lxc_conf_free() > document lxc.hooks in lxc.conf manpage > premount hook is implemented in git > dual-fork for daemonized fork in lxcapi-start > check sscanf return value > check return values of scanf and system > api shutdown: don't c->stop() if already stopped. > Support individual hook types in clear_config_item > add oracle template (From: Dwight Engen) > Fix reverse check: error out only if mkdir(cgroup/lxc) fails NOT > due to -EEXIST > lxc-ssh: fix message about ssh key insertion > Initialize curtime to silence spurious compiler warning > Revert "Fix check against LXCROOTFSMOUNT to use strcmp" > switch use of #define with static char* > dont fail on failure to link kmsg > Add lxc.autodev > fix lxc-ubuntu-cloud option parsing bugs > revert inadvertent un-doing of lxc-clone fix > Description: run MAKEDEV console when doing lxc.autodev > check and warn of return value from fchdir > lxc-clone: use hardlink detection in rsync > templates: use hardlink detection in rsync > lxc_conf logfile and loglevel support > rename physical nics at shutdown > lxc-create: refuse to use a custom rootfs (--dir) which already > exists. > api: add set_cgroup_item and get_cgroup_item (to c api) > dont save loglevel if it is unset > > Stéphane Graber (77): > Merge the liblxc API work by Serge Hallyn. > When starting a container daemonized, wait for it to reach RUNNING > state before returning the result of start(). > Add python-lxc based on the new liblxc API. > Remove duplicate copy of runapitests.bash > Rename runapitests.bash to runapitests.sh and make it use /bin/sh > Add lxc.aa_profile example to all templates > Make building the API tests/examples optional > Change lxc_remove_nic from returning int to void > Remove unused "i" variable in lxc_get_item_nic > Cleanup lxc_wait > Remove unused v1 and v2 variables in main() > Add better example/test of the python3-lxc API > Raise exception when getting Container instance as non-root in > python3-lxc > Remove zombie_handler from python-lxc code > Add lxc-start-ephemeral > Remove hardcoded /var/lib/lxc from lxc-start-ephemeral > Fix previous commit, removing hardcoded /var/lib/lxc from > lxc-start-ephemeral > Prefix the test binaries by lxc-test- > python-lxc: Always convert state passed to wait() to uppercase > lxc-start-ephemeral: Fix typo causing crash at startup > lxc-start-ephemeral: Add missing return call to wait override > lxc-start-ephemeral: Drop stop() calls when shutdown() returns > non-True > lxc-start-ephemeral: Exit with command return code > lxc-start-ephemeral: startup time improvement > api_test.py: Remove workarounds for API bugs > python-lxc: Add missing space between two help lines > Convert remaining file to new docbook format > Revert "Convert remaining file to new docbook format" > Revert "Update documentation to Docbook 4.5" > lxc-start-ephemeral: Wipe the whole container on exit, not just > the rootfs > Set automake flags and CFLAGS > Fix autogen failing because of clean/distclean overrides > Fix check against LXCROOTFSMOUNT to use strcmp > Detect which name to use for docbook2x-man > Update .gitignore for current list of binaries and templates > lxc-ls: Don't exit 1 when no container or help > lxc-create: Support passing a full path to -t > Check return value of all system calls in startone > Add the test binaries to .gitignore > Use clearer error message on failure to create pidfile > python: Add add_device() function > python: Add new lxc-device tool > lxc.conf.sgml.in: Fix typo > Remove all trailing whitespaces. > python: PEP8 compatibility > python: Use builtin len() function for network interfaces > gitignore: Ignore python cache > lxc-ubuntu: Always create the needed locales > lxc-ubuntu: Guess a list of langpacks to install > lxc-ubuntu: Rename from lxc-ubuntu.in > lxc-ubuntu: Fix mixed indent > lxc-ubuntu: Fix wrong variable name > lxc-create: Store template information in config > lxc-create: Script cleanup > Rewrite lxc-ls in python > Install legacy scripts when built without python. > lxc-start-ephemeral: Use argparse errors > lxc-ls: Show a simple error message when non-root > lxc-device: Show an error message when non-root > python: Update to the device related functions > lxc-ls: Update code to allow non-root listing > lxc-archlinux.in: Apply same LXCPATH/LOCALSTATEDIR > oracle template: fixes when using fedora host > Update README > Minor documentation updates > templates: Make generated config consistent > Update for consistent indent > lxc-ubuntu: Don't hardcode path to cache > lxc-archlinux: Don't hardcode /var/lib/lxc in help > templates: Consistent use of locking > python: Remove hardcoded LXCPATH > lxc-create: Allow for empty or unset template name > python3-lxc: Fix build prefix/destdir > python: get_keys() doesn't require a path > python: Add binding for {get|set}_cgroup_item > gitignore: Update for python files > python: Update add_device_node to use the new API > > .gitignore | 44 ++++-- > CONTRIBUTING | 7 +- > COPYING | 16 +- > INSTALL | 4 +- > Makefile.am | 6 +- > README | 37 ++++- > TODO | 2 +- > config/Makefile.am | 15 +- > config/acinclude.m4 | 16 +- > config/lxc.conf.libvirt | 3 + > config/lxc.conf.ubuntu | 3 + > config/lxc.conf.unknown | 1 + > configure.ac | 132 ++++++++++++++-- > doc/FAQ.txt | 4 +- > doc/Makefile.am | 21 ++- > doc/legacy/lxc-ls.sgml.in | 156 +++++++++++++++++++ > doc/lxc-attach.sgml.in | 127 +++++++++++++++- > doc/lxc-cgroup.sgml.in | 6 +- > doc/lxc-checkpoint.sgml.in | 2 +- > doc/lxc-console.sgml.in | 8 +- > doc/lxc-create.sgml.in | 15 +- > doc/lxc-destroy.sgml.in | 6 +- > doc/lxc-execute.sgml.in | 6 +- > doc/lxc-freeze.sgml.in | 6 +- > doc/lxc-kill.sgml.in | 2 +- > doc/lxc-ls.sgml.in | 153 +++++++++++++------ > doc/lxc-monitor.sgml.in | 8 +- > doc/lxc-ps.sgml.in | 12 +- > doc/lxc-restart.sgml.in | 2 +- > doc/lxc-shutdown.sgml.in | 2 +- > doc/lxc-start.sgml.in | 18 ++- > doc/lxc-stop.sgml.in | 8 +- > doc/lxc-unfreeze.sgml.in | 6 +- > doc/lxc-wait.sgml.in | 17 ++- > doc/lxc.conf | 2 +- > doc/lxc.conf.sgml.in | 135 ++++++++++++++++- > doc/lxc.sgml.in | 22 +-- > doc/rootfs/Makefile.am | 2 +- > lxc.spec.in | 6 +- > runapitests.sh | 32 ++++ > src/Makefile.am | 2 +- > src/lxc/Makefile.am | 30 +++- > src/lxc/af_unix.c | 8 +- > src/lxc/arguments.h | 2 + > src/lxc/attach.c | 86 ++++++++++- > src/lxc/attach.h | 3 +- > src/lxc/cgroup.c | 175 +++++++++++++++++++--- > src/lxc/cgroup.h | 3 + > src/lxc/commands.c | 31 +++- > src/lxc/commands.h | 2 + > src/lxc/conf.c | 575 > +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----- > src/lxc/conf.h | 33 +++- > src/lxc/confile.c | 944 > +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---------------- > src/lxc/confile.h | 12 ++ > src/lxc/execute.c | 1 - > src/lxc/genl.c | 4 +- > src/lxc/genl.h | 4 +- > src/lxc/{ => legacy}/lxc-ls.in | 7 +- > src/lxc/list.h | 5 + > src/lxc/log.c | 41 +++++ > src/lxc/log.h | 4 +- > src/lxc/lxc-checkconfig.in | 61 ++++---- > src/lxc/lxc-clone.in | 14 +- > src/lxc/lxc-create.in | 258 > +++++++++++++++++++------------- > src/lxc/lxc-destroy.in | 82 +++++----- > src/lxc/lxc-device | 95 ++++++++++++ > src/lxc/lxc-ls | 251 > +++++++++++++++++++++++++++++++ > src/lxc/lxc-netstat.in | 130 ++++++++-------- > src/lxc/lxc-ps.in | 169 +++++++++++---------- > src/lxc/lxc-setcap.in | 62 ++++---- > src/lxc/lxc-setuid.in | 66 ++++---- > src/lxc/lxc-start-ephemeral.in | 289 > +++++++++++++++++++++++++++++++++++ > src/lxc/lxc-version.in | 2 +- > src/lxc/lxc.h | 25 ++++ > src/lxc/lxc_attach.c | 114 ++++++++++++-- > src/lxc/lxc_info.c | 15 +- > src/lxc/lxc_monitor.c | 2 +- > src/lxc/lxc_start.c | 27 +++- > src/lxc/lxc_unshare.c | 45 ------ > src/lxc/lxc_wait.c | 81 +--------- > src/lxc/lxccontainer.c | 1001 > ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > src/lxc/lxccontainer.h | 79 ++++++++++ > src/lxc/lxclock.c | 105 +++++++++++++ > src/lxc/lxclock.h | 61 ++++++++ > src/lxc/lxcseccomp.h | 41 +++++ > src/lxc/mainloop.c | 4 +- > src/lxc/mainloop.h | 4 +- > src/lxc/monitor.c | 24 ++- > src/lxc/namespace.c | 45 ++++++ > src/lxc/namespace.h | 3 + > src/lxc/network.c | 16 ++ > src/lxc/network.h | 3 +- > src/lxc/nl.c | 14 +- > src/lxc/nl.h | 32 ++-- > src/lxc/rtnl.c | 2 +- > src/lxc/rtnl.h | 4 +- > src/lxc/seccomp.c | 121 +++++++++++++++ > src/lxc/start.c | 88 ++++++++++- > src/lxc/start.h | 1 + > src/lxc/state.c | 115 ++++++++++++++ > src/lxc/state.h | 1 + > src/python-lxc/Makefile.am | 22 +++ > src/python-lxc/examples/api_test.py.in | 158 ++++++++++++++++++++ > src/python-lxc/lxc.c | 620 > +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > src/python-lxc/lxc/__init__.py.in | 468 > +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > src/python-lxc/setup.py | 10 ++ > src/tests/Makefile.am | 23 +++ > src/tests/containertests.c | 262 > ++++++++++++++++++++++++++++++++ > src/tests/createtest.c | 92 ++++++++++++ > src/tests/destroytest.c | 104 +++++++++++++ > src/tests/get_item.c | 308 > ++++++++++++++++++++++++++++++++++++++ > src/tests/getkeys.c | 71 +++++++++ > src/tests/locktests.c | 239 +++++++++++++++++++++++++++++ > src/tests/saveconfig.c | 106 +++++++++++++ > src/tests/shutdowntest.c | 93 ++++++++++++ > src/tests/startone.c | 264 > ++++++++++++++++++++++++++++++++ > templates/Makefile.am | 3 + > templates/lxc-altlinux.in | 134 +++++++++-------- > templates/lxc-archlinux.in | 30 ++-- > templates/lxc-busybox.in | 144 ++++++++---------- > templates/lxc-debian.in | 119 ++++++++------- > templates/lxc-fedora.in | 110 +++++++------- > templates/lxc-lenny.in | 120 +++++++-------- > templates/lxc-opensuse.in | 122 +++++++-------- > templates/lxc-oracle.in | 557 > ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ > templates/lxc-sshd.in | 40 ++--- > templates/lxc-ubuntu-cloud.in | 22 ++- > templates/lxc-ubuntu.in | 68 +++++---- > 128 files changed, 9498 insertions(+), 1405 deletions(-) > create mode 100644 config/lxc.conf.libvirt > create mode 100644 config/lxc.conf.ubuntu > create mode 100644 config/lxc.conf.unknown > create mode 100644 doc/legacy/lxc-ls.sgml.in > create mode 100644 runapitests.sh > rename src/lxc/{ => legacy}/lxc-ls.in (96%) > create mode 100644 src/lxc/lxc-device > create mode 100644 src/lxc/lxc-ls > create mode 100644 src/lxc/lxc-start-ephemeral.in > create mode 100644 src/lxc/lxccontainer.c > create mode 100644 src/lxc/lxccontainer.h > create mode 100644 src/lxc/lxclock.c > create mode 100644 src/lxc/lxclock.h > create mode 100644 src/lxc/lxcseccomp.h > create mode 100644 src/lxc/seccomp.c > create mode 100644 src/python-lxc/Makefile.am > create mode 100644 src/python-lxc/examples/api_test.py.in > create mode 100644 src/python-lxc/lxc.c > create mode 100644 src/python-lxc/lxc/__init__.py.in > create mode 100644 src/python-lxc/setup.py > create mode 100644 src/tests/Makefile.am > create mode 100644 src/tests/containertests.c > create mode 100644 src/tests/createtest.c > create mode 100644 src/tests/destroytest.c > create mode 100644 src/tests/get_item.c > create mode 100644 src/tests/getkeys.c > create mode 100644 src/tests/locktests.c > create mode 100644 src/tests/saveconfig.c > create mode 100644 src/tests/shutdowntest.c > create mode 100644 src/tests/startone.c > create mode 100644 templates/lxc-oracle.in > > > ------------------------------------------------------------------------------ LogMeIn Rescue: Anywhere, Anytime Remote support for IT. Free Trial Remotely access PCs and mobile devices and provide instant support Improve your efficiency, and focus on delivering more value-add services Discover what IT Professionals Know. Rescue delivers http://p.sf.net/sfu/logmein_12329d2d _______________________________________________ Lxc-devel mailing list Lxc-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/lxc-devel