[PATCH 0/2] Add regression test for building after petrify
by Richard Maw
Repo: git://git.baserock.org/baserock/baserock/morph.git
Ref: baserock/richardmaw/S8957/build-after-petrify-regression-test
SHA1: 800b507a85adf435c45ba175b619e059162913bf
Land: origin/master
Richard Maw (2):
tests.branching: Make defined systems buildable
tests.branching: Add build after petrify test
tests.branching/build-after-petrify.script | 31 ++++++++++++++++++++++++++++
tests.branching/petrify.stdout | 2 +-
tests.branching/setup-second-chunk | 2 +-
3 files changed, 33 insertions(+), 2 deletions(-)
create mode 100755 tests.branching/build-after-petrify.script
--
1.7.10.4
9 years, 4 months
[PATCH] Add a simple cross-bootstrap system for x86
by Jonathan Maw
head: c49070934b8f0f90ec7772e37075828cb272dd97
branch: baserock/jonathan/S8557/cross-bootstrap-system
repo: git://git.baserock.org/baserock/baserock/morphs
Lars Wirzenius (1):
Add cross-bootstrap system and stratum
cross-bootstrap-system-x86_64-generic.morph | 14 ++++++
cross-bootstrap.morph | 72 +++++++++++++++++++++++++++
2 files changed, 86 insertions(+)
create mode 100644 cross-bootstrap-system-x86_64-generic.morph
create mode 100644 cross-bootstrap.morph
--
1.7.10.4
9 years, 4 months
[PATCH] Partially fix cross-bootstrap
by Jonathan Maw
head: b473e32a233cacb04f5a88e32974556d31292ae5
branch: jonathan/fix-cross-bootstrap-rebase
repo: git://git.baserock.org/baserock/baserock/morph
This does not fix cross-bootstrap in all cases. It succeeds in a
chroot on x86_64 and armv7l. My attempts to get it working in a VM
on x86_64 have so far failed.
Jonathan Maw (1):
Make cross-bootstrap successfully build everything
morphlib/plugins/cross-bootstrap_plugin.py | 21 ++++++++++++++-------
1 file changed, 14 insertions(+), 7 deletions(-)
--
1.7.10.4
9 years, 4 months
[PATCHv2 0/9] Make new-petrify work
by Richard Maw
Repo: git://git.baserock.org/baserock/baserock/morph.git
Ref: baserock/richardmaw/S8847/cleanup-petrify-v3
SHA1: dc4bc05fab0cb738b0051d8e3e037ae73cb9f0a6
Land: origin/master
There are 3 versions of petrify:
1. old is before the refactor and is O(2^N)
2. current is O(N) but doesn't fix petrify refs
3. new is in this patch series and actually works
As for speed comparisions:
1. old petrify took on the order of half an hour to petrify
baserock:baserock/morphs
2. new petrify with all the repos cached locally takes 20 seconds
3. new petrify using the cache server takes 30 seconds
4. new petrify with --no-git-update takes 20 seconds
Richard Maw (9):
Remove duplicate yarn
Rename test to fix name clash
MorphSet: Factor traversal logic out of change_ref
MorphSet: add a list_refs() method
MorphSet: Add petrify_chunks() method
MorphSet: Add method for changing refs en-masse
b&m: Refactor petrify to use new morphset methods
MorphSet: add unpetrify_all() method
b&m: Use new MorphSet api in unpetrify
morphlib/morphset.py | 166 ++++++++++++++++++++---
morphlib/morphset_tests.py | 54 ++++++++
morphlib/plugins/branch_and_merge_new_plugin.py | 53 ++------
yarns/branches-workspaces.yarn | 11 +-
4 files changed, 215 insertions(+), 69 deletions(-)
--
1.7.10.4
9 years, 4 months
[PATCH 00/10] Make new-petrify work
by Richard Maw
Repo: git://git.baserock.org/baserock/baserock/morph.git
Ref: baserock/richardmaw/S8847/cleanup-petrify-v2
SHA1: 89746f505557bdb143b6a497d400fe119ed3a0ec
Land: origin/master
This new petrify has the same behaviour as the old one, but with cleaner
code and an O(N) algorithm instead of O(2^N).
The petrify code between old-petrify and this petrify does not work.
This will not work with system branches created before the "B&M: Remember
the source of system branches" patch, since I need more information than
is stored.
If this is an issue, I can prepare a patch that will generate an exception
saying how to fix it, or assume it came from master.
Richard Maw (10):
Remove duplicate yarn
Rename test to fix name clash
b&m: Remember the source of system branches
MorphSet: Factor traversal logic out of change_ref
MorphSet: add a list_refs() method
MorphSet: Add petrify_chunks() method
MorphSet: Add method for changing refs en-masse
b&m: Refactor petrify to use new morphset methods
MorphSet: add unpetrify_all() method
b&m: Use new MorphSet api in unpetrify
morphlib/morphset.py | 167 ++++++++++++++++++++---
morphlib/morphset_tests.py | 54 ++++++++
morphlib/plugins/branch_and_merge_new_plugin.py | 56 +++-----
yarns/branches-workspaces.yarn | 11 +-
4 files changed, 219 insertions(+), 69 deletions(-)
--
1.7.10.4
9 years, 4 months
[PATCHv1 0/6] Re-refactor Petrify and Unpetrify
by Richard Maw
Repo: git://git.baserock.org/baserock/baserock/morph.git
Ref: baserock/richardmaw/S8847/cleanup-petrify
SHA1: 24d73a52ed207a80ddf3c8fd02c891929087d845
Land: origin/master
There's about the same amount of code, but it's hopefully organised
better; and there's more tests and docstrings this time around.
This is a precursor to the branch-from-image rework, since it has a lot
of similarities to petrify.
There are still open questions in this patch series, I have put TODOs
in the commit messages to ensure I don't forget to check whether these
questions are answered during review.
Richard Maw (6):
MorphSet: Factor traversal logic out of change_ref
MorphSet: add a list_refs() method
MorphSet: Add bulk_petrify() method
b&m: Refactor petrify to use new morphset methods
MorphSet: add unpetrify_all() method
b&m: Use new MorphSet api in unpetrify
morphlib/morphset.py | 135 ++++++++++++++++++++---
morphlib/morphset_tests.py | 40 +++++++
morphlib/plugins/branch_and_merge_new_plugin.py | 48 ++------
3 files changed, 164 insertions(+), 59 deletions(-)
--
1.7.10.4
9 years, 4 months
bc -l segfaulting: a fix
by Lars Wirzenius
We noticed that "bc -l" will always segfault. Richard Maw tracked this down,
and noticed that there's an upstream "alpha" release, 1.06.95, from 2006,
which fixes this (and some other) problems. Debian is using that release.
I propose we upgrade bc in Baserock to 1.06.95. This is slightly tricky
since Lorry doesn't support multiple versions for tarball releases at
this time.
I have tested this as follows:
* create a new system branch
* morph edit in that system branch
* build and deploy the devel-system-x86_64-generic system
* in the deployed system, run this and watch it segfault:
echo 1/2 | bc -l
* in the system branch's bc, replace the old sources with the alpha
release (commands copy-pasted from my shell history):
- rm -rf *
- wget http://alpha.gnu.org/gnu/bc/bc-1.06.95.tar.bz2
- tar xf bc-1.06.95.tar.bz2
- mv bc-1.06.95/* .
- rmdir bc-1.06.95
- rm bc-1.06.95.tar.bz2
- git add .
- git rm acconfig.h mkinstalldirs stamp-h.in
- git commit
* build and deploy the devel system again
* in the deployed system, run this and watch it NOT segfault:
echo 1/2 | bc -l
The delta between the two releases is quite large, and it's all
upstream changes: Baserock does not carry a delta for bc.
Would everyone be OK if I merge my branch with the new upstream
release into bc-tarball's baserock/morph? +1 or -1 for this merge?
--
http://www.codethink.co.uk/ http://wiki.baserock.org/ http://www.baserock.com/
9 years, 4 months
[PATCH] Morph: drop useless options
by Lars Wirzenius
repo: git://git.baserock.org/baserock/baserock/morph
branch: liw/S8701-drop-useless-options
commit: 29aa8b049975db3491e772dbcc42edd2893abd45
land: master
card: S8701
We have a couple of obsolete options, which we can now just drop.
If anyone has added the options to their configuration file, they'll
get an error and can remove them.
Lars Wirzenius (1):
Remove --staging-chroot, --staging-filler options
morphlib/app.py | 25 -------------------------
morphlib/buildcommand.py | 13 -------------
2 files changed, 38 deletions(-)
--
1.7.10.4
9 years, 4 months
[PATCHv3] Add glanceclient stratum.
by Pedro Alvarez
Repo: git://git.baserock.org/baserock/baserock/morphs.git
Branch: baserock/pedroalvarez/openstack
Sha1: e6dc789b99c4c5c3fc69c805535cb2d33d7b8df2
I just fixed the typo, and added it to the develpment systems.
This patch adds glanceclient in the development baserock images.
Glanceclient is needed to add the capability of deploy images into an
OpenStack system. With glanceclient the development system may communicate
with the OpenStack server.
Pedro Alvarez (1):
Add glanceclient Stratum morphology.
devel-system-x86_32-generic.morph | 3 ++
devel-system-x86_64-generic.morph | 3 ++
glanceclient.morph | 101 +++++++++++++++++++++++++++++++++++++
3 files changed, 107 insertions(+)
create mode 100644 glanceclient.morph
--
1.7.10.4
9 years, 4 months