I need to define a declarative pipeline with multiple levels of parallel stages as such:
1 Prebuild_action1
2 Prebuild_action2
3.1 Build platform_1
4.1 Test1 platform_1
4.2 Test2 platform_1
4.3 Test3 platform_1
3.2 Build platform_2
3.3 Build platform_3
3.4 Build platform_4
First, 1 should run, then 2 should run, then all of 3.x should run in parallel and when 3.1 is done all 4.x should run in parallel.
It doesn't seem possible for two reasons: 1. There doesn't seem to be any way to have both a stage and a group of parallel stages within a parent stage and it seems that parallel blocks can only be defined at top-level stages so I can't have a parallel block for 3.x and 4.x.
Is there some way to do that I am just not seeing at the moment?