0) Benji and I Tuesday radically simplified "get". It only inits the repo and makes a lightweight checkout for launchpad from a local no-trees branch. It is useful for people wanting a vanilla install of what we believe to be the best way to develop. Other people can use simple commands (e.g. bzr init-repo . && bzr branch lp:launchpad devel) to get different setups, and they should work fine with our other tools.
1) Brad and I renamed "get" to "initrepo" because we thought this was more descriptive. We also moved the bzr locale.conf initialization from inithost/install to initrepo, because that was more appropriate now. 2) We agreed that we would in fact make an inituser. We thought that something well factored now would be easy to combine into "do everything" commands. On the other hand, something poorly factored would be harder to divide later. That said, I did realize that I wanted to be able to use "testing" (-> "initall" or something?) myself. 3) In order to get rid of the install command, which only really has a responsibility to lxcinstall in our plans, we will move everything out of it except for the last bits that have to happen, largely as root (setting up the database and make install). These are the things that eventually Robert wants to fold into inithost. Because it is a wart from his perspective but useful, my suggested rename for this minimal install command is something like "finishinithost" (clearly warty but kinda usable). 4) We talked about how commands overlapped. This might be useful to make things clearer for everyone. Story: assiduous, careful developer wants to use lxc with lightweight checkouts lp-setup initlxc # this calls inithost in the container; SUDO ssh `lp-lxc-ip -i eth0 -n lpdev` lp-setup inituser # SUDO lp-setup initrepo cd launchpad/sandbox lp-setup update lp-setup finishinithost # SUDO; eventually will go away Story: developer wants lxc with lightweight checkouts and the defaults. NICE TO HAVE lp-setup initall # SUDO Story: developer wants lxc with branches lp-setup initlxc # this calls inithost in the container ssh `lp-lxc-ip -i eth0 -n lpdev` lp-setup inituser OPTIONAL: lp-setup initrepo -s setup_bzr_locations bzr initrepo launchpad cd launchpad bzr branch lp:launchpad devel cd devel lp-setup update lp-setup finishinithost # SUDO; eventually will go away (ALTERNATE/NICE TO HAVE: we support lp-setup initrepo --no-checkout) Story: we want a testing environment for juju buildbot (this sets up a branch, not a lightweight checkout) lp-setup initall --testing # SUDO Story: webops people set testing environment up in data center # Webops runs the equivalent to lp-setup initlxc with puppet and manual changes ssh `lp-lxc-ip -i eth0 -n lpdev` lp-setup inithost # SUDO; detects lxc and installs necessary bits lp-setup inituser bzr init-repo launchpad cd launchpad bzr branch lp:launchpad devel cd devel lp-setup update lp-setup finishinithost # SUDO; eventually will go away Story: developer wants lightweight checkout without lxc lp-setup inithost # SUDO lp-setup inituser lp-setup initrepo cd launchpad/sandbox lp-setup update lp-setup finishinithost # SUDO; eventually will go away Story: developer wants branches without lxc lp-setup inithost # SUDO lp-setup inituser OPTIONAL: lp-setup initrepo -s setup_bzr_locations bzr init-repo launchpad cd launchpad bzr branch lp:launchpad devel cd devel lp-setup update lp-setup finishinithost # SUDO; eventually will go away Maybe initrepo should be init-repo to match bzr; and then make the others match too (hyphens). -- Mailing list: https://launchpad.net/~yellow Post to : [email protected] Unsubscribe : https://launchpad.net/~yellow More help : https://help.launchpad.net/ListHelp

