Add rule to Danger to detect possible CE/EE Vue <template> issues

Problem to solve

If a developer makes a change to the <template> of a CE Vue file (e.g. path/to/file.vue), and that file has a EE counterpart in the EE repo (e.g. ee/path/to/file.vue), the developer will need to make their change in both places. If they forget, their changes won't be visible in EE, since the template of the EE Vue file will take precedence, blowing away the CE version of the template.

This is an especially easy mistake to make since the EE file isn't in the CE repo, where the developer is working - it's in an entirely different repo.

Intended users

Persona: Software developer

Further details

Here's an example of this happening: https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/25983#note_160056412

This problem should go away once we combine CE and EE into a single codebase.

Proposal

Add a warning to Danger to notify the developer when they make a change to a CE Vue file that has a corresponding Vue file in the EE repo (or vice-versa).

Something like:

You made a change to path/to/file.vue. An EE version of this file exists in the EE repo at ee/path/to/file.vue. Did you ensure any template changes have been made in both places?

Edited Apr 16, 2019 by Nathan Friend
Assignee Loading
Time tracking Loading