Hi everyone,

As of earlier today, Travis CI has been disabled as a required pass for
all PRs against apache/couchdb. Jenkins CI has been substituted in its
place.

Builds should run faster (no shared Travis queue!) but there are still
some flakey tests; please help log and fix these as you encounter them.
Just open a new GitHub issue with a description of the test failure, and
a link to your Jenkins log please.

Important things to know:

* Any committer can log into Jenkins at https://ci-couchdb.apache.org/

* Your PR job should be visible at https://s.apache.org/couchdb-ci-prs

* After a failure, you can restart the test stage from your specific PR,
  look for the "Restart Make Check" link on the Jenkins Details page
  (Blue Ocean).

* If you want to ensure you've got the latest things checked into
  master on your branch for testing, you can use the commands:

  git rebase origin/master <your-branch-name>
  git push --force

  or you can push the "Update branch" button on the GitHub PR
  page, which will do a merge of master to your branch instead. [1]

* Full platform builds (only runs on master, our release branches, and
  jenkins-*) are at https://s.apache.org/couchdb-ci-full-builds

* Currently, open idle PRs may occasionally be triggered when master
  updates to rebuild their contents, see [1]. If you have a PR open that
  you don't intend to land to master soon, please close it for now. (No
  need to delete your branch.)

Questions, comments, please let me know, or if it's urgent, come ask
on our Freenode IRC channel #couchdb-dev.


[1]: I tried hard today to get Jenkins to correctly build the result of
     your branch merged with master. Unfortunately, if master changes
     after you've opened your PR, Jenkins doesn't seem to always pick up
     on these changes. I found several bugs filed around this, and
     there's no clear consensus as to why this happens. If you'd like
     to help, search on JENKINS-50755, JENKINS-50191, JENKINS-37491,
     JENKINS-33273, and especially JENKINS-45502 for more detail. In
     short it looks like Jenkins is internally somewhere caching the
     last commit on the tip of the target branch, and not updating that
     per branch, even when a repository reindexing is happening, and
     even when the repository scan log shows it's aware the tip of
     master has changed. Rather than block progress, I'm giving up
     on this work until later. When we figure it out, we can disable
     the GitHub "Require branches to be up to date before merging"
     setting for master, which should reduce CI load and make devs
     happier.

Reply via email to