RFR: 243: Merge bot should support merging with certain frequency

Erik Helin ehelin at openjdk.java.net
Fri Jan 24 11:51:14 UTC 2020


Hi all,

please review this patch that enables the merge bot to periodically sync
branches with a certain frequency. This is implemented by extending the
configuration for a merge specification:

"merge": {
    "target": "github:openjdk/panama",
    "specs": [
        {
	    "from": "github:openjdk/jdk:master",
	    "to": "master",
	    "frequency": {
	        "interval": "weekly",
		"weekday": "Friday",
		"hour": "11"
	    }
	}
    ]
}

The above configuration would merge the `master` branch from the
[jdk](https://github.com/openjdk/jdk) repository to the `master` branch in the
[panama](https://github.com/openjdk/panama) repository every Friday at 11:00.
The merge will only be done once, i.e. it won't be retried until the next Friday
if the merge fails (and result in a merge conflict PR).

There is one limitation with the patch and that is that the merge bot only
"remember" previous merges in memory. This is problematic if we redeploy the
merge bot during 11:00 - 11:59 on a Friday and the merge already has occurred,
the merge bot will then do a second merge. This is known limitation and one I
think we can live with, I don't foresee it to become a problem in practice.

Thanks,
Erik

## Testing
- [x] Added a bunch of new unit tests

-------------

Commits:
 - d7a1769f: Support frequency in merge bot conf

Changes: https://git.openjdk.java.net/skara/pull/381/files
 Webrev: https://webrevs.openjdk.java.net/skara/381/webrev.00
  Issue: https://bugs.openjdk.java.net/browse/SKARA-243
  Stats: 995 lines in 5 files changed: 987 ins; 0 del; 8 mod
  Patch: https://git.openjdk.java.net/skara/pull/381.diff
  Fetch: git fetch https://git.openjdk.java.net/skara pull/381/head:pull/381

PR: https://git.openjdk.java.net/skara/pull/381


More information about the skara-dev mailing list