Sedona
Running and managing sedona VMs from finstack
Getting started
Steps to quickly create and run a sedona app from Finstack:
- Enable the finSedonaExt pod (download finSedonaExt.zip )
- Install the sedona compiler and follow the tutorial to create a sample sedona app on sedonadev.org: http://www.sedonadev.org/doc/tutorial.html
- If you follow the tutorial exactly there will be 3 files need attention: tutorial-xxxxxxx.xml in the manifests/ folder, app.sab and kits.scode in src/tutorialApp/ folder. Zip 3 of them into a file such as sample.zip
- Upload that file to finstack using the files panel and add markers :sedona, par. Then add properties: soxPort:1876 (default port of sox service), soxUser: admin, soxPassword:'' (blank)
- using folio, to start the VM for that file, run :svmStart("@id_of_the_file") or simply run : svmStartAll()
- to check if the svm is actually running , open the browser at http://localhost:8080/ (8080 is the web service component in the app.sax above)
- open the connectors panel (need to enable sedona connector ext first), then add a sedona connector for http://localhost:1876, for user :admin and blank password.
Videos
sedona_connector.avi run_sample_app.avi
App.sax
This is how to describe a sedona app with a sox service and a http service (servers). You can omit the service if you dont need its supported protocol
<sedonaApp>
<schema>
<kit name='sys'/>
<kit name='sox'/>
<kit name='inet'/>
<kit name='web'/>
<kit name='func'/>
<kit name='platWin32'/>
<kit name='tutorial'/>
</schema>
<app>
<comp name="plat" type="platWin32::Win32PlatformService"/>
<comp name="users" type="sys::UserService">
<comp name="admin" type="sys::User">
<prop name="cred" val="hE49ksThgAeLkWB3NUU1NWeDO54="/>
<prop name="perm" val="2147483647"/>
<prop name="prov" val="255"/>
</comp>
</comp>
<comp name="sox" type="sox::SoxService">
<prop name="port" val="1876"/>
</comp>
<comp name="web" type="web::WebService">
<prop name="port" val="8080"/>
</comp>
<comp name="rampA" type="func::Ramp"/>
<comp name="rampB" type="func::Ramp"/>
<comp name="add" type="tutorial::Add" id="12"/>
</app>
<links>
<link from="/rampA.out" to="/add.in1"/>
<link from="/rampB.out" to="/add.in2"/>
</links>
</sedonaApp>
Screenshots
Axon functions
(this can be viewed at http://localhost:85/doc/finSedonaExt/SedonaLib.html)
svmBackup
@Axon
const static Str svmBackup(Obj fileOrId, Uri fileUri)
backup a SVM to a file examples : svmBackup("@12123434", path/to/zip)
svmList
@Axon
const static Dict[] svmList()
list all running SVMs
svmRestart
@Axon
const static Str svmRestart(Obj fileOrId)
restart a SVM examples : svmRestart("@12123434")
svmSetPort
@Axon
const static Str svmSetPort(Obj fileOrId, Number port)
change the port of sox service in SVM then save the change and restart examples : svmSetPort("@12123434", 2000)
svmStart
@Axon
const static SVM svmStart(Obj fileOrId)
start a sedona VM for the target file (zip contains scode and .sab app) examples : svmStart("@12123434")
svmStartAll
@Axon
const static Dict[] svmStartAll()
start all io files that are marked with tags sedona and par
svmStop
@Axon
const static Str svmStop(Obj fileOrId)
stop a SVM examples : svmStop("@12123434")
svmStopAll
@Axon
const static Str svmStopAll()
stop all running SVMs
Using Sedona TXS bundle for Niagara
Download the bundle at https://www.dropbox.com/s/r407j4nly4d587n/Sedona_Framework_TXS-1.2.28.4.zip?dl=0
And install it in niagara with sedona installer (Tools->Sedona Installer)
Connect to the VM :File->Open->Sedona Device
When it is fully loaded the app tree will look as below
You can you the link pallete to add links then save it. Go back to finstack folio and run : svmRestart("@id_of_the_vm") to persist the change to our iofile and restart the VM
Finstack sedona connector
In finstack , using connectors panel you can add a connection to the running svm.After you make a successful connection, you can access the objects of sedona app
Prebuilt sedona app
In the extension there is a prebuilt sedona app. When the extension is enabled, it will compile the files then upload to finstack automatically. When finstack starts, the app will start as well.
The default sox port for this app is 1876. If you need to run another SVM, make sure you use another port for your sox service, or you need to change the default app's port to a different one before adding your app to finstack.
It will avoid port conflict.
Related articles
Filter by label
There are no items with the selected labels at this time.