blob: 4d4eafaac895c65594efd9d90e894d250f88badf (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
|
Introduction
------------
automerge is a set of scripts used to manage continuous integration of a
set of branches being developed against mainline. Functionally, it aspires
to do what linux-next does.
ci-merge: The script that actually merges the branches together based on a
config file listing the various branches.
ci-report: Reports any warnings/errors resulting from the build
ci-test: Run some tests on the new build
ci-blame: Helper script used to report the commit ID that introduced a new
warning/error in the build
ci-config: Helper script that returns the configuration for the branches to
be used
ci.conf.sample: Sample configuration file
Quick Start
-----------
$ Setup a config file.
You can do this by creating you own from ci.conf.sample, e.g. in
$HOME/.automerge/config, or point to an existing with using --config/-f
option
$ export LOCAL_LINUX_REPO=~/work/sources/linux-ci.git
$ export RR_CACHE=ssh://git@git.linaro.org/landing-teams/working/qualcomm/automerge-rrcache.git
(Interactive run)
$ ci-merge -l $LOCAL_LINUX_REPO -c $RR_CACHE -f ~/.automerge/automerge-ci.conf -n
Conflict Resolution and sharing a rerere cache within a team
------------------------------------------------------------
The following example is used by the Qualcomm Landing Team to update their
shared rerere cache:
1. Make sure you have a local linux repo (LOCAL_LINUX_REPO)
2. If needed, add any new branches to the config file pointed to by -f or
autodetected by ci-config. The Qualcomm Landing Team configs live here[1]
3. Run automerge locally with any new branch or branch modifications
$ cd <LOCAL_LINUX_REPO>
$ export RR_CACHE=ssh://git@git.linaro.org/landing-teams/working/qualcomm/automerge-rrcache.git
$ ci-merge -c $RR_CACHE -f ~/.automerge/automerge-ci.conf -n
Resolve the merge conflicts till ci-merge runs successfully
4. Commit the rr-cache from .git/rr-cache and then push to git.linaro.org
$ git commit
$ git push
(You might need to setup a pushurl for the rr-cache git repo for git
push to work)
5. Push your changes to automerge configs or branches to glo[1]
6. Rerun step 3 again. There should be no conflict now, since the resolution was pushed in step 4.
[1] https://git.linaro.org/landing-teams/working/qualcomm/configs.git
|