Deploying a Yamcs Studio Project

175 views
Skip to first unread message

Elisa

unread,
Oct 28, 2020, 9:09:09 AM10/28/20
to yamcs
Hello,

Is there a way to deploy a Yamcs Studio project as a standalone program or is the Display Runner view the only form of "deploying"? They way I'm currently making the Yamcs Studio project readily available for non software team members is by having them install Yamcs Studio on their computers, giving them a copy of my project source, exporting it into their Yamcs Studio instance, running the Display Runner, and close Yamcs Studio from the display runner so that the next time you open it the Display Runner appears instead of the Display Builder. While this has worked so far, I was wondering if there was a better way of sharing the project (source + standalone project) without having the possibility of other team members accidentally making a change in the Display Builder.

Another question I had, what is the maximum number of people that can connect to the web server to view data at the same time?

Thank you,
Elisa

fabia...@spaceapplications.com

unread,
Oct 28, 2020, 9:58:04 AM10/28/20
to yamcs
It'd be nice to have a runner-only variant. But we don't have it.

There where a few attempts at it in the past, but nothing that was worth keeping. I don't know if you're familiar with the source code somewhat, but basically you just need to make a product without the 'org.csstudio.opibuilder.editor' plugin in it. At that point you probably also don't need the 'workspace' concept. But once you start taking that away, it becomes somewhat challenging to keep all the existing features (such as restoring windows on restart). In the absence of a workspace, the runner could then fetch display resources directly from the server. I don't see this landing soon though.

A parallel strategy that we've been exploring as time allows, is to implement web-based support for OPI displays (just upload the file to the Yamcs Web UI under 'Telemetry > Displays'). AS-IS, this is quite beta so I would not recommend using it with end-users unless you can stick to simple displays (not all bells and whistles supported).

For the final question: there's no absolute numbers. Being built on top of Netty, the HTTP server is about as efficient as we can make it. You can do the test, for example by using our Python client package and just make a huge amount of client connections, each doing a parameter subscription. You could also consider ensuring a predefined minimum target, rather than establishing a maximum. Easier to verify.

Elisa

unread,
Nov 3, 2020, 10:51:37 AM11/3/20
to yamcs
Thank you for the reply! Is there a configuration I need to enable to be able to view the OPI displays in the Yamcs Web UI Telemetry Displays or should they simply work once I upload them?

fabia...@spaceapplications.com

unread,
Nov 4, 2020, 5:33:56 AM11/4/20
to yamcs
They 'should' just work. You can upload displays (and any required resources) by dragging directly into 'Telemetry > Displays'. If you don't see this item, it means your security settings don't allow for it.
But try with a very simple display first, and build up from there. If you discover it breaks on specific important features that you are using, feel free to report issues here: https://github.com/yamcs/opi.js (preferably with a sample OPI file).
We'll then look at it as our schedule allows.

Reply all
Reply to author
Forward
0 new messages