The current Git-based platform update plugin only tracks a given branch, and will trigger a new platform build (and update to the upgrade target, etc.) whenever a new commit is pushed (to the branch). This works nicely when you control the repo, as you can just merge changes into a `testing`, `staging` or `production` branch, and have the distro update accordingly.

However, when you want to track a 3rd party repo, you don't have sufficient control. For example, a commit updates (for example) that project's docs, or CI config shouldn't trigger a new platform build. In such a case, tracking new tags is what's needed.

We should probably also support some level of control over the stability of a given tag. For example, we wouldn't generally want a stable release replaced with an alpha or beta release.

Comments

ergonlogic created an issue. See original summary.

ergonlogic’s picture

Category: Feature request » Bug report

This is actually a bug report. Git updates as for a "git reference" that can be a branch, tag or commit hash. These all work fine when first building a distribution platform, but tags and commit hashes are static. So the distribution will never update on that basis, unless the value is changed manually.

ergonlogic’s picture

Git already supports things like:

git ls-remote https://git.drupal.org/project/hosting_distribution.git 7.x-?.0*

Unfortunately, you cannot clone a repo with a tag pattern. So, we'll need to resolve the latest matching tag, and build from that.

We should also provide some documentation about possible combinations of patterns to achieve different ends. For example, we might want to track full releases and release candidates, but not alpha or beta releases.