Skip to content

qualcomm-linux/automerge

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

73 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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://[email protected]/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://[email protected]/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

License

automerge is licensed under the GNU General Public License v2.0. See LICENSE for the full license text.

About

Tools to manage creation of qcom-next from the topic branches

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 7

Languages