Skip to content
This repository has been archived by the owner on Jun 15, 2024. It is now read-only.

Default pipelines dashboard (Feature request) #190

Open
alehatsman opened this issue Jun 4, 2018 · 6 comments
Open

Default pipelines dashboard (Feature request) #190

alehatsman opened this issue Jun 4, 2018 · 6 comments

Comments

@alehatsman
Copy link
Contributor

What will be really nice is to have some kind of default dashboard, where you can see stats of all pipelines. Because for example for me, the fact that u need to define your own UI for "home page" and the way configuration of pipelines is done now was a repulsive factor. And searching through issues i see that people often ask about that.

I don't think that is it very complex from UI side. The question is how to configure pipelines. That would require a kind of abstraction on top of ambdacd/assemble-pipeline and runners/start-one-run-after-another.

I think that is quite important and that could make a project more user-friendly and beginner friendly.

And I also think that it should be at the core of the project because as a new user I want to take a solution and immediately start using it.

And it very important to have it in the core of the project. Because people don't really want to spend time searching for third-party libraries, which are often incompatible etc. Like it was with me when I took the last version of lambdacd, then added lambdacd-ui, which was out of date and I was in one step of leaving it and switching to Jenkins :)

@flosell
Copy link
Owner

flosell commented Jun 6, 2018

Thanks for the feedback! We definitely don't want to drive people back to Jenkins! :)

To your immediate question, yes, a dashboard and generally improved multi-pipeline support would be a very good addition.

To your meta-question, where should such a solution live and how do we make LambdaCD more approachable, that's a more tricky question that probably demands a separate thread. I split that out into #191.

@isagalaev
Copy link

Looks like I've stumbled upon the same problem. I want lambdacd to serve several separate projects, so I need to run several pipelines side by side. Apart from the UI point of view (I could probably live with creating an ad-hoc list of links) I need some facility in core that would do "wait for git on these repos and start an appropriate pipeline".

I could probably make an attempt on writing and contributing some code for it, but I need some guidance to how to approach it, I'm very new to Clojure :-) First question is, how do I start several waiting processes? Do I use core.async for that?

@flosell
Copy link
Owner

flosell commented Oct 23, 2018

Hi @isagalaev, sorry for the late response!

There are two ways you could tackle this without changing the core. Depending on what you are trying to do, they might or might not work for you:

Same pipeline for different repo
You could run a single pipeline that has multiple wait-for-git steps waiting in parallel. Whenever there's a commit in one, the rest of the pipeline gets executed and receives information such as changed-remote in args that allows you to find out what to build. Obviously only works if all your repos can be built and deployed in more or less the same way

Cookie-cutter-pipeline
This example shows how to create multiple pipelines from the same general pattern inside the same LambdaCD project. This can be extended to multiple, completely different pipeline templates with minor changes

Let me know if this helps or if I misunderstood the question.

@isagalaev
Copy link

Hi @isagalaev, sorry for the late response!

Likewise :-)

Thanks for the answers! I did in fact find the cookie-cutter example and could run several pipelines, and now I understand how it all works in more details. Unfortunately my project based on lambda.cd got de-prioritized (read: cancelled), so I probably won't be doing anything more beyond the prototype I made.

@flosell
Copy link
Owner

flosell commented Nov 18, 2018

Thanks for the feedback @isagalaev! Do you think there's something in your prototype that's helpful for the rest of the community? If so, is there a chance it can be open-sourced so others can learn from it?

@isagalaev
Copy link

No, not really. It was just a quick prototype which, if accepted, might have yielded some lambdacd-specific plugins, but that wasn't meant to happen, apparently.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants