Automatic releases and extension third-party libraries
Many (and increasingly) extensions rely on third-party extensions (PHP or JS), which should not be committed to the extension repository (as they may create conflicts, have license issues, add management overhead, or simply clutter the git repository).
Examples: Mosaico, gocardless, civiexportexcel.
When the nightly release manager runs, it links to the tag associated with the release. By default, on Gitlab and Github, those zip files do not includes third-party libraries.
For extensions using libraries, we should explore relying on Gitlab's CI, since:
- Previously, we assumed that extension maintainers would add the releases manually on civicrm.org (this has been deprecated from c.o since the d8 upgrade).
- It also assumes that the release is created before the nightly extdir job runs.
- While the extdir job could check for the presence of release assets, it would assume that maintainers create the assets before the job runs.