[PATCH 0/3] V2: Morph: Refactor "morph init" and "morph workspace"
by Lars Wirzenius
repo: git://git.baserock.org/baserock/baserock/morph
branch: liw/refactor-init-workspace
commit: 0f77afae8b89d3ef57053562d37364c118d9e519
This changes the Workspace API to use factory functions, as suggested
by Daniel. The Workspace class is now very tiny (it only holds the
root attribute; no methods), but that will change in the future.
I will merge this unless someone objects quickly.
Lars Wirzenius (3):
Add a Workspace class
Re-implement "morph init" using the new Workspace class
Re-implement "morph workspace" using the Workspace class
morphlib/__init__.py | 1 +
morphlib/plugins/branch_and_merge_new_plugin.py | 70 +++++++++++++++
morphlib/plugins/branch_and_merge_plugin.py | 52 -----------
morphlib/workspace.py | 107 +++++++++++++++++++++++
morphlib/workspace_tests.py | 85 ++++++++++++++++++
without-test-modules | 1 +
6 files changed, 264 insertions(+), 52 deletions(-)
create mode 100644 morphlib/plugins/branch_and_merge_new_plugin.py
create mode 100644 morphlib/workspace.py
create mode 100644 morphlib/workspace_tests.py
--
1.7.9-rc0
10 years, 2 months
[PATCH 0/3] Morph: Refactor "morph init" and "morph workspace"
by Lars Wirzenius
repo: git://git.baserock.org/baserock/baserock/morph
branch: liw/refactor-init-workspace
commit: dcfb47bd48c994ab53c1a2813ae7fb51887b1ece
This is a first step to refactor/rewrite the branch and merge plugin.
I'd like to get this work integrated in small steps, so no one step
is much work to review.
These patches add a new class, Workspace, with unit tests, which provides
a cleaner interface for operations on a workspace (create, open, find
root directory; with more in the future). That class is then used to
re-implement the "morph init" and "morph workspace" subcommands in a
clearer way than the old implementations.
Lars Wirzenius (3):
Add a Workspace class
Re-implement "morph init" using the new Workspace class
Re-implement "morph workspace" using the Workspace class
morphlib/__init__.py | 1 +
morphlib/plugins/branch_and_merge_new_plugin.py | 72 +++++++++++++++++
morphlib/plugins/branch_and_merge_plugin.py | 52 ------------
morphlib/workspace.py | 97 ++++++++++++++++++++++
morphlib/workspace_tests.py | 98 +++++++++++++++++++++++
without-test-modules | 1 +
6 files changed, 269 insertions(+), 52 deletions(-)
create mode 100644 morphlib/plugins/branch_and_merge_new_plugin.py
create mode 100644 morphlib/workspace.py
create mode 100644 morphlib/workspace_tests.py
--
1.7.9-rc0
10 years, 2 months
[PATCH] Morph: add scenario tests
by Lars Wirzenius
repo: git://git.baserock.org/baserock/baserock/morph
branch: liw/b-and-m-yarns
commit: fac47acd5ab8e3410929e8c36ceaa4ecf070de10
This patch adds some "scneario tests" for Morph, to test (basic)
branch and merge plugin functionality. For background information
about scenario testing and yarn, the tool to run them, see:
https://gitorious.org/cmdtest/cmdtest/blobs/raw/master/README.yarn
Yarn is not in Baserock 9, but it has been added to since then: it is
part of the cmdtest chunk. To run these tests, you need to build and
deploy a current development system. This is why yarn tests are optional
and conditional until Baserock 10 is released: we need to be able to
build BR10 with BR9, and so we can't rely on yarn until BR10 is out.
On the other hand, there's no reason to not add yarn tests now, we
just need to keep the old cmdtest tests around until BR10 is released.
This patch is quite long. That's mainly due to three long files.
I think, however, that they're fairly straight forward. Splitting this
into small, incremental commits was, in my opinion, merely obfuscating
the patch series.
Lars Wirzenius (1):
Add scenario (yarn) tests for most of branching and merging
check | 9 +
scripts/yaml-extract | 76 +++++++++
yarns/branches-workspaces.yarn | 283 +++++++++++++++++++++++++++++++
yarns/implementations.yarn | 356 ++++++++++++++++++++++++++++++++++++++++
yarns/morph.shell-lib | 153 +++++++++++++++++
5 files changed, 877 insertions(+), 0 deletions(-)
create mode 100755 scripts/yaml-extract
create mode 100644 yarns/branches-workspaces.yarn
create mode 100644 yarns/implementations.yarn
create mode 100644 yarns/morph.shell-lib
--
1.7.9-rc0
10 years, 2 months
[PATCH] Add cross-bootstrap plugin
by Jonathan Maw
head: 3ec0ff49ee8a015dd472ede2ed0996009b015c33
branch: jonathan/cross-bootstrap-rebase
repo: git://git.baserock.org/baserock/baserock/morph
This is not the tidiest merge, as there is still quite a bit of code
duplication in cross-bootstrap_plugin.py
Sam Thursfield (1):
Add morph cross-bootstrap
morphlib/__init__.py | 3 +
morphlib/buildcommand.py | 31 +-
morphlib/builder2.py | 117 ++++----
morphlib/builder2_tests.py | 18 --
morphlib/git.py | 2 +
morphlib/morph2.py | 9 +
morphlib/morph2_tests.py | 35 +++
morphlib/morphologyfactory.py | 7 +-
morphlib/plugins/cross-bootstrap_plugin.py | 311 ++++++++++++++++++++
morphlib/plugins/deploy_plugin.py | 3 +-
morphlib/plugins/graphing_plugin.py | 6 +-
morphlib/plugins/show_dependencies_plugin.py | 5 +-
tests.build/bootstrap-mode.script | 119 +-------
.../cross-bootstrap-only-to-supported-archs.exit | 1 +
.../cross-bootstrap-only-to-supported-archs.script | 25 ++
.../cross-bootstrap-only-to-supported-archs.stderr | 1 +
tests.build/cross-bootstrap.script | 27 ++
tests.build/setup-build-essential | 137 +++++++++
without-test-modules | 1 +
19 files changed, 641 insertions(+), 217 deletions(-)
create mode 100644 morphlib/plugins/cross-bootstrap_plugin.py
create mode 100644 tests.build/cross-bootstrap-only-to-supported-archs.exit
create mode 100755 tests.build/cross-bootstrap-only-to-supported-archs.script
create mode 100644 tests.build/cross-bootstrap-only-to-supported-archs.stderr
create mode 100755 tests.build/cross-bootstrap.script
create mode 100755 tests.build/setup-build-essential
--
1.7.10.4
10 years, 2 months
--no-git-update vs ERROR: Repository foo is not cached yet
by Paul Sherwood
I'm trying to build a system with several new repos, debugging the
build as I go.
I'd like to do 'morph build --no-git-update', since this makes my
looptime smaller,
but if the repo i'm trying to get to be built hasn't been cached yet,
the build fails
with "ERROR: Repository foo is not cached yet"
So have to leave git-update on, which means each loop takes me longer.
Please could
we make the no-git-update functionality smart enough to try to pull any
repo that's not
actually cached?
10 years, 2 months
[PATCH] Fix and simplify NIC_CONF
by Tiago Gomes
Accordinly the man page the correct syntax is:
"--network=NETWORK,opt1=val1,opt2=val2"
NETWORK is mandatory when specifying extra options, and
"--network=NETWORK --network=opt1=val1" does not work.
repo: git://git.baserock.org/baserock/baserock/morph
branch: baserock/tiagogomes/nic_conf
commit: 5af235f098caa333daf41533db1d5ce8e8178d38
Tiago Gomes (1):
Fix and simplify NIC_CONF
morphlib/exts/kvm.write | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
--
1.7.10.4
10 years, 2 months
[PATCH] V3 add script to check gitmodules
by Jonathan Maw
head: 49a2c66b679728bb678db85553372fdf4926daa8
branch: jonathan/check-lorried-gitmodules-3
repo: git://git.baserock.org/baserock/baserock/morph
Jonathan Maw (1):
Add a script to check every .gitmodules file in a system branch
scripts/review-gitmodules | 121 +++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 121 insertions(+)
create mode 100755 scripts/review-gitmodules
--
1.7.10.4
10 years, 2 months