Move more parts of make check to mage#13239
Conversation
kaiyan-sheng
left a comment
There was a problem hiding this comment.
I just realized now all the dashboard screenshots are not up to date 😬 Just the names of the visualizations are different so hopefully it's ok.
I also hope this is ok 😬 I wouldn't change all the screenshots now. Dashboards using custom titles for visualizations wouldn't be affected, but not all of them are using this feature. |
|
I left a similar comment in #13215, I think it would be nice to add this to dev-tools/mage/target/common and then update each project to which will help reduce duplication. |
|
@andrewkroh I had tried, but I found some conflicting targets, and that All magefiles use the common targets now. Once we have this merged I will update #13215, that has more things. |
5b58e5b to
69207d6
Compare
|
@andrewkroh there were a couple of legit issues in CI, I think I have solved them. One was caused by the different python envs mage and make use under the same |
Use mage implementation for make check in directories where make is still being used. Fix issues detected in dashboards and in dev-tools directory, that was not being checked. DashboardsFormat renamed to CheckDashboardsFormat to be more explicit and coherent with other check sub-targets. Common targets are now reused when possible. Continues dashboard checking started in elastic#13168.
|
Hey, this change broke apm-server. Would it be better to run that job on every pr touching libbeat code instead? |
|
Hey @jalvz, I am very sorry. Actually I didn't know (or remember) that there was a build of apm-server running with the last version of libbeat. I can take a look to what is failing after this PR if nobody is working on it, or I can help if someone is already on it.
This would be something to discuss, but it would be definitely helpful to have some way of knowing when libbeat breaks apm-server builds. |
|
No worries, that is understandable - it is why i suggest to run it on libbeat prs (also for future beats contributors, etc)
The conservative answer is that breaking changes on a libbeat Makefile or exported functions might break us. It practical terms, most of the times it happens with make / mage changes. The only automated way we have to check is by running on beats CI the same command we run locally to update beats. Adding that stage would bump build times ~15 minutes, that is why you have it running only on master - but then it can get forgotten about. Maybe a good middle ground is to trigger that stage only upon changes on What do you think? |
I guess this can be run in parallel, so it doesn't affect the total time of builds.
That sounds reasonable, this way we'd force ourselves to make changes in a more backwards compatible way. |
`mage:import` doesn't take into account vendorized dependencies, this is a problen for custom beats, because by default they have libbeat as a vendorized dependency. The solution would be to use go modules, but in the meantime lets remove the use of `mage:import` from the magefiles intended to be used by custom beats. Revert part of elastic#13239 related to custom beats.
`mage:import` doesn't take into account vendorized dependencies, this is a problen for custom beats, because by default they have libbeat as a vendorized dependency. The solution would be to use go modules, but in the meantime lets remove the use of `mage:import` from the magefiles intended to be used by custom beats. Revert part of #13239 related to custom beats.
`mage:import` doesn't take into account vendorized dependencies, this is a problen for custom beats, because by default they have libbeat as a vendorized dependency. The solution would be to use go modules, but in the meantime lets remove the use of `mage:import` from the magefiles intended to be used by custom beats. Revert part of elastic#13239 related to custom beats.
Use mage implementation for make check in directories
where make is still being used. Fix issues detected in
dashboards and in dev-tools directory, that was not
being checked.
DashboardsFormatrenamed toCheckDashboardsFormatto be more explicit andcoherent with other check sub-targets.
Continues dashboard checking started in #13168.
License header targets are not migrated here, migration
in progesss in #13215.