(dev/release#9) distmaker - Report on head for commit civicrm-drupal-8
Overview
--------
The general goal is to produce tags for `civicrm-drupal-8` during the release
process.
The workflow for producing release tags is generally as follows:
* Run `distmaker` to prepare a release candidate (a collection of files - e.g.
`civicrm-5.18.0-drupal.tar.gz`, `civicrm-5.18.0-joomla.zip`, `civicrm-5.18.0.json`, etc).
Note that the JSON file describes the build (i.e. the list of inputs/git-commits and
outputs/tarballs).
* Use the candidate for `civihydra` testing (i.e. use the tarballs for normal GUI-based installation)
* If they work, then run `releaser` - which takes the release candidate files and:
* Pushes the tarballs out to CDNs
* Pushes the git tags to Github
Before
------
* The JSON report describes inputs from the following repos:
`civicrm-{backdrop,core,drupal,joomla,packages,wordpress}.git`
* To create a complete set of build artifacts, one should have file tree:
```
src/ (civicrm-core.git)
WordPress/ (civicrm-wordpress.git)
backdrop/ (civicrm-backdrop.git)
drupal/ (civicrm-drupal.git)
joomla/ (civicrm-joomla.git)
packages/ (civicrm-packages.git)
```
After
-----
* The JSON report *additionally* reports on `civicrm-drupal-8.git`
* To create a complete set of build artifacts, one should also have `drupal-8` in the tree:
```
src/ (civicrm-core.git)
WordPress/ (civicrm-wordpress.git)
backdrop/ (civicrm-backdrop.git)
drupal-8/ (civicrm-drupal-8.git)
drupal/ (civicrm-drupal.git)
joomla/ (civicrm-joomla.git)
packages/ (civicrm-packages.git)
```
Technical Details
-----------------
* To produce a report with the D8 commits, one needs have a copy of
`drupal-8/` (`civicrm-drupal-8.git`).
* However, `distmaker` can still be used without `drupal-8`. (As in the
past, so this is still: *if you're only building the Joomla zip file, then
you don't need the code for drupal-8 or WordPress*).
* There will be a separate patch to:
* Checkout `drupal-8` when CI does an automated build
* Use the JSON to create tags