# About VTK continuous integration

**URL:** <https://discourse.vtk.org/t/about-vtk-continuous-integration/13992>\
**Category:** Development\
**Created:** [June 6, 2024, 7:16am UTC](https://discourse.vtk.org/t/about-vtk-continuous-integration/13992 "2024-06-06T07:16:53Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![mwestphal](https://discourse.vtk.org/user_avatar/discourse.vtk.org/mwestphal/32/19_2.png) [@mwestphal](https://discourse.vtk.org/u/mwestphal)\
**Post date:** [June 6, 2024, 7:16am UTC](https://discourse.vtk.org/t/about-vtk-continuous-integration/13992/1 "2024-06-06T07:16:53Z")

</div>

Currently, a full run of VTK continuous integration take more than 24 hours because of long queue time in VTK merge request.

While we try to reduce queue time by selecting which job should run, we recently introduced a new “quick” that will hopefully reduce these as well.

Please use this new stage when running the CI interatively and only run the full CI before merging.

In short that means:

- Create a MR
- Ping people for review
- `Do: test -s quick`
- Iterate on review and CI, push again
- `Do: test -s quick`
- Reviewer provide +2
- `Do: test`
- Iterate on CI if needed
- `Do: test`
- Green/Unrelated CI
- `Do: merge`

Note: We remarked that sometime previous pipeline are not canceled after a push, do not hesitate to cancel old pipelines.

---

<div class="post-metadata">

**Author:** ![lassoan](https://discourse.vtk.org/user_avatar/discourse.vtk.org/lassoan/32/50_2.png) [@lassoan](https://discourse.vtk.org/u/lassoan)\
**Post date:** [June 6, 2024, 12:56pm UTC](https://discourse.vtk.org/t/about-vtk-continuous-integration/13992/2 "2024-06-06T12:56:14Z")

</div>

It makes sense. However, it is not clear if this is some temporary measure or it should be followed from now on; and I may forget about using this more complex syntax in a few weeks anyway.

If this is a permanent change in the integration process then it would be more effective to reconfigure `do: test ` to do the quick test. Merging could then require simething like `do: fulltest`. If fulltest is not executed then the robot could return with a message explaining the developer how to run the full test.

---

<div class="post-metadata">

**Author:** ![mwestphal](https://discourse.vtk.org/user_avatar/discourse.vtk.org/mwestphal/32/19_2.png) [@mwestphal](https://discourse.vtk.org/u/mwestphal)\
**Post date:** [June 6, 2024, 1:40pm UTC](https://discourse.vtk.org/t/about-vtk-continuous-integration/13992/3 "2024-06-06T13:40:16Z")

</div>

Very good remark @lassoan

We wanted to make the default “Do: test” being a quick test but it was more complex to do.

We settled on this as a temporary solution and will reconsider in a few weeks if needed.

You won’t be scolded if you forgot to use the quick stage 🙂
