Pipeline management

We have several clients all with different locations of UAT and production environments. Internally we also have different locations for different clients (to reflect their environments).
This makes our dash board slightly messy as we’ll have:


                    Client1 System Test            Client1 UAT          Client1 Production         Client2 System Test       Client2 UAT     Client2 Production

Project A                 1.0.0.5                   1.0.0.4                  1.0.0.4
(for client1)        25th April 2012            10th April 2012         11th April 2012
                          Success                   Success                  Success

Project B                                                                                              1.1.4.125              1.1.3.221          1.1.2.113
(for client2)                                                                                        1st April 2012         1st Jan 2012        1st Dec 2011  
                                                                                                        Success                Success            Success

etc

Would you be able to have a level before project level to group projects by (in my instance by client but I’m not sure that is the best generic approach) so that it keeps the dashboard cleaner?

Hi Paul,

Thanks for the suggestion. The idea of project collections or namespaces has been on my mind for a while too.

In this case, I wonder if you could use the same environment for all of the projects? When you create a step, you can choose which machines it applies to. So project 1 would use machines 1, 2, and 3 in Prod, while project 2 would use machines 4, 5 and 6, also in Prod. Or is there another reason why you prefer to have separate environments?

Another feature on the backlog is customisable dashboards, so you could create one dashboard for client 1, and one for client 2. But in your case I suppose you want to see all projects on a single page?

Paul

We could use the same environment for system test, but we have the physical impracticality of the fact that the clients own their own UAT and Production servers and would be impossible for us host Client1 projects on Client2 servers.
The only reason we have different system test environments is to mimic the clients set up (e.g. server 2000, 2003, 2008, etc).

If you’ve seen the TeamCity dashboard, that would be the sort of thing I’m looking for: you’ve got your project which then expands into build configurations (or in our instance environments) which then expands into releases and then deployments.

Want me to knock up a screen shot of my “vision”?

Paul

Hi Paul,

I’ve added a couple of items to the trello board to deal with this:

https://trello.com/card/grouping-of-projects-in-the-dashboard/4e907de70880ba000079b75c/132

https://trello.com/card/grouping-of-environments-in-the-dashboard/4e907de70880ba000079b75c/131

You would be able to group test environments together, the UAT environments together, and the prod environments together. In the UI, you’ll be able to click expand to see what’s released, otherwise you’ll get a nice summary view.

Paul