Announcing Salt WebUI: Molten 0.1

645 views
Skip to first unread message

Martin Höfling

unread,
Oct 2, 2015, 6:06:45 PM10/2/15
to salt-...@googlegroups.com
Hey Folks,

Molten = Salt + React

https://github.com/martinhoefling/molten

This is the first release of Molten, a Salt WebUI making use of the
React JS framework. The UI solely uses the REST API and requires no
additional service running besides the salt-api.

Features:
* Live updates via SSE, e.g. Events, Jobs, …
* No Page reloads, it’s designed as a Single Page app
* Async event processing and job scheduling

Status: First release, so there’re a lot of bugs to be uncovered. Would
be nice to see them on the Github tracker together with some missing
features. :-)

Wanna try it out? Clone the repo and run:
> vagrant up demo

Happy Salting

Martin

Seth House

unread,
Oct 2, 2015, 6:25:33 PM10/2/15
to salt users list
Very cool!
> --
> You received this message because you are subscribed to the Google Groups "Salt-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to salt-users+...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.

bruno binet

unread,
Oct 5, 2015, 10:43:49 AM10/5/15
to salt-users
Thanks for sharing, it looks great!


Martin

saltycdr

unread,
Oct 5, 2015, 11:33:41 AM10/5/15
to Salt-users
Looks great!

mike r

unread,
Oct 6, 2015, 12:39:52 PM10/6/15
to Salt-users
Looks awesome, fired up the vagrant and no issues accessing the console. Great job!

Arnold Bechtoldt

unread,
Oct 6, 2015, 1:12:34 PM10/6/15
to salt-...@googlegroups.com
Hey martin,

Fist of all: Thanks for your efforts!

I must admit that I'm somehow concerned that there is yet another web UI
on the market now that won't make it into mid to large scaled production
environments within the next months/years.

As an interested Salt user I'd like to ask you what the cases of Molten
are and whether you already took a look at the other web UI projects to
integrate your features into.


All the best,

Arnold

--
+arnoldbechtoldt • arnoldB@IRC • bechtoldt@GH • arbe.io

Martin Höfling

unread,
Oct 6, 2015, 3:26:03 PM10/6/15
to salt-...@googlegroups.com
On 06.10.15 19:12, Arnold Bechtoldt wrote:

Hey Arnold and
> I must admit that I'm somehow concerned that there is yet another web UI
> on the market now that won't make it into mid to large scaled production
> environments within the next months/years.
So most importantly, I do not intend to create an alternative to Saltack
Enterprise UI which is to my knowledge the only one capable of managing
"mid to large scaled production environments". Respecting to this,
Saltstack Enterprise UI is the only UI on the market.

http://saltstack.com/saltstack-enterprise-4-0-now-with-gui/
>
> As an interested Salt user I'd like to ask you what the cases of Molten
> are and whether you already took a look at the other web UI projects to
> integrate your features into.
My personal motivation was actually to play around with webpack and
react-flux architectures :-)

Despite my background being more a DevOps one with Saltstack, Docker and
more, I am also doing quite a bit of backend development in
python/tornado and frontend development using React and other JS
technology.

Use Cases:

My impressions was, that if you don't like the command line, there's no
simple entry point / access for a salt beginner. This is one use case I
had in mind: Making salt accessible without having to use the
commandline tools. For this reason, I also created the vagrant setup,
primarily to showcase Salt and only secondarily to showcase Molten. In a
talk / workshop / presentation, Salt is much easier to understand imho,
than doing live hacking on the command line (of course also depends a
lot on the target audience). In addition, my impression was that hiding
events from the user is hiding how salt actually works.

A second use case is the visualization of the salt event flow in
realtime a bit more elegantly than hooking into the event bus via custom
shell/python scripts.

Some notes about the other (free) UIs, at least the ones I am aware of:

- Halite (https://github.com/saltstack/halite): ... is dead

- Saltpad ( https://github.com/tinyclues/saltpad): played around with it
a bit and it is quite nice. However integrating the features I had in
mind would have been unfeasible. It's not a single page app (SPA). Thus
you basically have a page reload (which reloads quite a bit of
information you already have again) on every transition. Further,
pushing events to the browser is much easier in a SPA. Also, I don't see
the point of having another API (in form of a python service) in front
of your salt API. From my impression, saltpad is more suitable for
performing typical tasks like highstating minions etc. than actually
exploring salt (is the wheel or runner interface accessible?). On the
other side, I also shamelessly stole good ideas from Boris, like the
showing documentation for the current function :-)

- Obdi (https://github.com/mclarkson/obdi): Is somewhat in between
molten and saltpad. It also requires a separate API service written in
Go (which I like!) and the frontend is written in Angular JS (which I
don't like ;-) ). So, I haven't tried it out but it looks quite nice for
some use cases as well.

All the three UIs (Saltpad, Obdi, Molten) are technologically quite
different, everybody has a different taste and from my impression, all
three look like a side project. So (at least) I don't take competition
here to serious :-)

So I hope that answers your question concerning my motivation a bit.

Best wishes

Martin

Boris FELD

unread,
Oct 12, 2015, 3:19:32 AM10/12/15
to salt-...@googlegroups.com
Hello martin,

happy to see more people working on the web UI field.

Like you said SaltPad is not a single app Page because the main use-case I tried to solve was to improve the ouput of state.highstate jobs because they were quite indigestible when you have big formulas. And when I began to work on SaltPad, I'm not even sure the SSE endpoint exists.

More recently, my colleagues and saltpad's users asks for more responsiveness so I began to work on a new version of Saltpad in react too. Maybe we could share some ideas and even code in the future, like some react components?

I will also pick-up some of your ideas like asking the master for documentation instead of asking each minion which could have separate versions.

Always cool to see some "competition" because it proves open-source web UI are a real need in the saltstack community.

Cheers,
Boris FELD

Martin Höfling

unread,
Oct 12, 2015, 5:32:54 AM10/12/15
to salt-...@googlegroups.com
On 12.10.15 09:19, Boris FELD wrote:

Hey Boris,
> More recently, my colleagues and saltpad's users asks for more
> responsiveness so I began to work on a new version of Saltpad in react too.
> Maybe we could share some ideas and even code in the future, like some
> react components?
Sure, take whatever you need from the Molten sources. Molten is MIT
licensed, so basically, you can do whatever you want as long as you
include the original copyright and license notice in any copy of the
software/source.
What saltpad can do really nice is displaying highstate output. How do
you plan to do this with react? I have an open issue here to pimp
'StructuredElement' of molten, so maybe that would be a point to share
ideas.

Best and thx for your work on Saltpad.

Martin

Reply all
Reply to author
Forward
0 new messages