[PATCH] Rename stratum 'sources' field to 'chunks'
by Sam Thursfield
Repository: git://roadtrain.codethink.co.uk/baserock/morph
Branch: samthursfield/stratum-sources-to-chunks
Sha1: ecefb2d1936221ccf21cbad6db2fe73cd229f4f5
A branch with the same name in baserock:morphs can be used for
testing; I will merge it when this branch is merged.
Sam Thursfield (1):
Strata contain "chunks", not "sources"
README | 8 ++++----
morphlib/app.py | 2 +-
morphlib/artifactresolver.py | 2 +-
morphlib/artifactresolver_tests.py | 16 ++++++++--------
morphlib/cachekeycomputer_tests.py | 4 ++--
morphlib/morph2.py | 5 ++---
morphlib/morph2_tests.py | 12 ++++++------
morphlib/morphologyfactory.py | 2 +-
morphlib/plugins/branch_and_merge_plugin.py | 8 ++++----
scripts/clean-git-cache | 4 ++--
tests.as-root/disk-builds-rootfs-and-kernel.script | 2 +-
tests.as-root/make-patch.script | 2 +-
.../rootfs-tarball-builds-rootfs-and-kernel.script | 2 +-
tests.as-root/setup | 2 +-
.../syslinux-disk-builds-rootfs-and-kernel.script | 2 +-
.../syslinux-fails-if-no-mbr-found.script | 2 +-
tests.as-root/system-overlap.script | 4 ++--
tests.branching/edit-updates-stratum.stdout | 11 ++++++-----
tests.branching/petrify.stdout | 8 ++++----
tests.branching/setup | 2 +-
tests/build-stratum-with-submodules.script | 2 +-
tests/hello-stratum.morph | 2 +-
tests/morphless-chunks.script | 2 +-
tests/setup | 2 +-
tests/show-dependencies.setup | 4 ++--
tests/stratum-overlap-warns.setup | 2 +-
26 files changed, 57 insertions(+), 57 deletions(-)
--
1.7.7.6
10 years, 6 months
[PATCH 0/8] Make branch/merge commands more flexible
by Jannis Pohlmann
Repository: git://roadtrain.codethink.co.uk/baserock/morph
Branch: jannis/initial-branch-and-merge-work
SHA1: 20cc64cdce1e5e846827b50861d348d1da7bd445
These patches provide step by step improvements of various commands
related to branching and merging. Most importantly, it improves the
detection of the current system branch and makes it possible to branch
off other repositories rather than baserock:morphs, which had been
hard-coded so far.
Jannis Pohlmann (8):
Create mine directory if it does not exists when running "morph init"
Rename the "morph minedir" command to "morph workspace"
Use .morph-system-branch directories to identify branch directories
Make "morph show-system-branch" anywhere in a workspace, if possible
Make "morph checkout" require a repository parameter
Remember repository that was branched off from for merging and
editing
Add mandatory repository parameter to "morph branch"
Rename internal function added in a previous commit
doc/branching-merging-systems.mdwn | 26 +--
morphlib/plugins/branch_and_merge_plugin.py | 232 ++++++++++++++-------
...reates-new-system-branch-not-from-master.script | 10 +-
...reates-new-system-branch-not-from-master.stdout | 12 +-
.../branch-creates-new-system-branch.script | 10 +-
.../branch-creates-new-system-branch.stdout | 10 +-
.../branch-when-branchdir-exists-locally.script | 4 +-
tests.branching/checkout-existing-branch.script | 8 +-
tests.branching/checkout-existing-branch.stdout | 10 +-
tests.branching/checkout-non-aliased-repos.script | 61 ++++++
tests.branching/checkout-non-aliased-repos.stdout | 38 ++++
.../edit-checkouts-existing-chunk.script | 12 +-
tests.branching/edit-clones-chunk.script | 23 +-
tests.branching/edit-updates-stratum.script | 7 +-
tests.branching/edit-uses-ref-from-stratum.script | 7 +-
tests.branching/init-cwd.script | 4 +-
tests.branching/init-default.script | 4 +-
tests.branching/init-existing.script | 4 +-
tests.branching/init-newdir.exit | 1 -
tests.branching/init-newdir.script | 6 +-
tests.branching/init-newdir.stderr | 1 -
tests.branching/init-newdir.stdout | 2 +
tests.branching/init-nonempty.script | 4 +-
tests.branching/init-nonempty.stderr | 2 +-
.../merge-explicitly-named-repos.script | 15 +-
tests.branching/minedir-not-found.script | 4 +-
tests.branching/minedir-not-found.stderr | 2 +-
tests.branching/minedir.script | 8 +-
tests.branching/minedir.stdout | 2 +-
tests.branching/petrify.script | 6 +-
tests.branching/setup | 11 +-
...show-system-branch-fails-outside-workspace.exit | 1 +
...ow-system-branch-fails-outside-workspace.script | 33 +++
...ow-system-branch-fails-outside-workspace.stderr | 1 +
...stem-branch-fails-when-branch-is-ambiguous.exit | 1 +
...em-branch-fails-when-branch-is-ambiguous.script | 32 +++
...em-branch-fails-when-branch-is-ambiguous.stderr | 1 +
.../show-system-branch-shows-name-correctly.script | 31 ---
.../show-system-branch-shows-name-correctly.stdout | 1 -
...anch-works-anywhere-with-a-single-branch.script | 31 +++
...anch-works-anywhere-with-a-single-branch.stdout | 1 +
...rks-in-different-directories-in-a-branch.script | 57 +++++
...rks-in-different-directories-in-a-branch.stdout | 6 +
tests.branching/workflow.script | 15 +-
44 files changed, 536 insertions(+), 221 deletions(-)
create mode 100755 tests.branching/checkout-non-aliased-repos.script
create mode 100644 tests.branching/checkout-non-aliased-repos.stdout
delete mode 100644 tests.branching/init-newdir.exit
delete mode 100644 tests.branching/init-newdir.stderr
create mode 100644 tests.branching/init-newdir.stdout
create mode 100644 tests.branching/show-system-branch-fails-outside-workspace.exit
create mode 100755 tests.branching/show-system-branch-fails-outside-workspace.script
create mode 100644 tests.branching/show-system-branch-fails-outside-workspace.stderr
create mode 100644 tests.branching/show-system-branch-fails-when-branch-is-ambiguous.exit
create mode 100755 tests.branching/show-system-branch-fails-when-branch-is-ambiguous.script
create mode 100644 tests.branching/show-system-branch-fails-when-branch-is-ambiguous.stderr
delete mode 100755 tests.branching/show-system-branch-shows-name-correctly.script
delete mode 100644 tests.branching/show-system-branch-shows-name-correctly.stdout
create mode 100755 tests.branching/show-system-branch-works-anywhere-with-a-single-branch.script
create mode 100644 tests.branching/show-system-branch-works-anywhere-with-a-single-branch.stdout
create mode 100755 tests.branching/show-system-branch-works-in-different-directories-in-a-branch.script
create mode 100644 tests.branching/show-system-branch-works-in-different-directories-in-a-branch.stdout
--
1.7.11.4
10 years, 6 months
[PATCH 0/2] Helper scripts
by Sam Thursfield
Repository: git://roadtrain.codethink.co.uk/baserock/morph
Branch: samthursfield/scripts
Sha1: dabca9a5bf30c3eb9564e7130938c88bc7e4ab6b
Here are two helper scripts which are useful when you find your /src
partition is completely full. In the long term, Morph should handle
trimming the caches, but these tools work quite well for me.
I have another script currently at https://github.com/ssssam/tony/
which synchronises the gnomeOS branch with jhbuild. I'm not
proposing this for inclusion in the Morph tree at this point
because it's needlessly complex and messy, but it's a good starting
point in the future if anyone else needs to programatically edit
morphologies in the future.
Sam Thursfield (2):
Add scripts/clean-artifact-cache
Add scripts/clean-git-cache
scripts/clean-artifact-cache | 94 +++++++++++++++++
scripts/clean-git-cache | 238 ++++++++++++++++++++++++++++++++++++++++++
2 files changed, 332 insertions(+), 0 deletions(-)
create mode 100755 scripts/clean-artifact-cache
create mode 100755 scripts/clean-git-cache
--
1.7.7.6
10 years, 6 months
[PATCH] Create mine directory on demand in "morph init"
by Jannis Pohlmann
Repository: git://git.baserock.org/baserock/morph
Ref: jannis/create-mine-with-morph-init
SHA1: 05b0ccd3bd679ece06610e7edff8a5c8196d833c
Jannis Pohlmann (1):
Create mine directory if it does not exists when running "morph init"
morphlib/plugins/branch_and_merge_plugin.py | 9 +++++++--
tests.branching/init-newdir.exit | 1 -
tests.branching/init-newdir.script | 6 +++---
tests.branching/init-newdir.stderr | 1 -
tests.branching/init-newdir.stdout | 2 ++
5 files changed, 12 insertions(+), 7 deletions(-)
delete mode 100644 tests.branching/init-newdir.exit
delete mode 100644 tests.branching/init-newdir.stderr
create mode 100644 tests.branching/init-newdir.stdout
--
1.7.11.2
10 years, 6 months
[PATCH 0/5] Faster build system autodetection
by Sam Thursfield
Repository: git://roadtrain.codethink.co.uk/baserock/morph
Branch: samthursfield/S4350-faster-build-system-autodetect
Sha1: a907be75dca2d0ca7adac0a025432cbe4eb2e529
I've rewritten build system autodetection to avoid running git cat-file
as often.
The original two patches try to cat the chunk morphology, and if it does
not exist, run ls-tree and try to autodetect a build system. The last
patch instead will always run ls-tree so that no blobs need to be read
from the repo at all if there is no chunk morphology.
Time for "Figuring out the right build order" to execute:
master gnomeos branch
old code: 3 seconds 64 seconds
method 1: 3 seconds 50 seconds
method 2: 3 seconds 35 seconds
35 seconds per build is still quite slow. This may be the overhead of
spawning the external git commands instead of using a library to read
from the repos in-process.
Sam Thursfield (5):
buildsystem: Fix incorrect testcase
Support 'git ls-tree' in local and remote repos
Use git ls-tree to autodetect build system
Refactor build system code for easier testing
Always ls-tree before trying to cat-file
morphlib/buildsystem.py | 23 +++++------
morphlib/buildsystem_tests.py | 66 +++++---------------------------
morphlib/cachedrepo.py | 22 +++++++++++
morphlib/cachedrepo_tests.py | 23 +++++++++++
morphlib/morphologyfactory.py | 71 ++++++++++++----------------------
morphlib/morphologyfactory_tests.py | 23 ++++++++++-
morphlib/remoterepocache.py | 18 +++++++++
morphlib/remoterepocache_tests.py | 28 ++++++++++++++
8 files changed, 159 insertions(+), 115 deletions(-)
--
1.7.7.6
10 years, 6 months
RE: morph update-gits
by Jannis Pohlmann
Hey,
I think we should deprecate or drop early if we feel something is not good enough. I vote for update-morphs and update-repo. 'gits' never made much sense (says the guy who wrote the command initially ;)).
- Jannis
(Sorry for top posting this time.)
-----Original Message-----
From: Sam Thursfield
Sent: 2012/08/22, 17:26
To: baserock-dev(a)baserock.org
Subject: Re: morph update-gits
On 08/22/2012 04:46 PM, Richard Maw wrote:
> On Wed, Aug 22, 2012 at 04:26:06PM +0100, Sam Thursfield wrote:
>> Could I change the command so that the last two parameters are
>> optional, and, if not supplied, just the specified repo is updated?
>
> That's effectively overloading the `update-gits` command to do two
> conceptually different things, since the old behaviour is a traversal
> of morphologies, while the new behaviour is just at the repository
> level.
>
> The old bahaviour is probably better called `update-morphs`, but
> I don't think we should go about deprecating commands.
>
> How about instead adding a new command, `update-repo`, which
> updates all the repositories listed on the command line, so you
> can update multiple at once?
I'm not sure which is less confusing. 'repo' vs. 'git' is not a
differentiation which really makes sense to me.
Updating multiple repos in one go would be kind of useful, though .. I'm
happy either way
Sam
_______________________________________________
baserock-dev mailing list
baserock-dev(a)baserock.org
http://vlists.pepperfish.net/cgi-bin/mailman/listinfo/baserock-dev-basero...
10 years, 6 months
Adding Ruby
by Joe Burmeister
Hi,
So adding Ruby to Baserock.
Ruby has a build dependency on Ruby. There is miniruby that mitigates
this some, but not completely, because some of the files used to make
miniruby are generated from Ruby files....
The way this is resolved in the tarball is for these generated files to
come in the tarball pre-baked.
This is the solution I went for in Baserock too. The branch is
"baserock/v1_9_3_194-bootstrap"
Only other minor issue was that the ./configure file used "cat -e" when
processing a file. This is a issue because Baserock uses Busybox's cat,
which only has what is required by POSIX, which is only "-u" and nothing
else. This isn't a big problem though because Busybox also included
vcat, which has -e (but not -u).
Currently how things stand is the configure.in in
"baserock/v1_9_3_194-bootstrap" has a tiny change of cat to vcat on one
line.
So, er, discuss? :-)
Joe
10 years, 7 months
[PATCH] Add Vala to devel
by Sam Thursfield
Repository: git://git.baserock.org/baserock/morphs
Branch: samthursfield/vala
Sha1: c5a2ac079d40fdc3839c05c4d7ffda2dee139ef1
Tested with full rebootstrap of 64-bit system.
Sam Thursfield (1):
Add Vala to devel
bootstrap-pass2.morph | 8 ++++++++
devel.morph | 10 ++++++++++
2 files changed, 18 insertions(+), 0 deletions(-)
--
1.7.7.6
10 years, 7 months
morph update-gits
by Sam Thursfield
Hi
I often want to update just one or two git repos. When you are building
everything from master, it's unworkable to update every repo every time
you commit a change to one of them, because lots of random things may
have changed in other repos. This is probably going to be the case for a
lot of users.
'morph update-gits' can be told to update a single git repo, but still
requires a 'triple':
morph update-gits upstream:glib master glib.morph
The last two arguments are meaningless, glib.morph or may not exist, and
all I want is to run 'git remote update origin' in any case
Could I change the command so that the last two parameters are optional,
and, if not supplied, just the specified repo is updated?
Sam
10 years, 7 months
[PATCH] Fix bundle path generation
by Richard Maw
Repo: git://git.baserock.org/baserock/lorry
Ref: baserock/bugfix/fix-bundle-paths
Sha1: 178bbc00370a3e0948e273a878be25a88c9d5972
Since moving the repository prefix lorry has been out of sync,
generated bundles were pointing to the old roadtrain address,
so morph wasn't using bundles when cloning.
Richard Maw (1):
Bundles: change the prefix to git.baserock.org
lorry | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
--
1.7.5.4
10 years, 7 months