[
https://issues.apache.org/jira/browse/IOTA-16?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15360329#comment-15360329
]
Tony Faustini commented on IOTA-16:
-----------------------------------
To run fey you need the main fey engine which is in iota-fey-core.jar. You can
run fey in
1) A production mode where you want fault-tolerant / resilient behavior
2) A development mode where you want to develop Performers/components. I will
focus on the development mode here ( a mode where fault-tolerance is not of
concern for iota-core)
If you have an iota-fey-core.jar then you would simple run
java --jar iota-fey-core.jar <Your fey config file>
We will add documentation on how to generate the iota-fey-core.jar from the fey
core source code. This will require a slight change in the current source code
in Build.scala
(see publishTo in Build.scala). You could try modify this yourself for the
moment or wait for our update. Assuming you have an iota-fey-core.jar file you
need to setup your development environment
I have my system setup with
1) a .fey directory in my home directory (Fey will create log files in this
directory)
2) a fey directory (which I reference in my configuration file) in which I
place two other directories. One for the jar files that defines performers and
this is called FeyJARRepo. In this directory you would place your Performer jar
files like fey_stream.jar if you look at the Sample Stream performer . The
other directory is FeyJSONRepo where I store my JSON files that define the
Orchestrations that Fey will execute when run. Here is a very simple example of
a JSON file
{
"guid": "SIMPLE_ORCHESTRATION",
"command": "CREATE",
"timestamp": "7919767890",
"name": "SIMPLE",
"ensembles": [
{
"guid": "SIMPLE_ENSEMBLE",
"command": "NONE",
"performers": [
{
"guid": "Stream",
"schedule": 1000,
"backoff": 0,
"source": {
"name": "fey_stream.jar",
"classPath": "org.apache.iota.fey.performer.Timestamp",
"parameters": {
}
}
}
],
"connections": [
]
}
]
}
This is not a very interesting orchestration. Successfully running this
orchestration is a good way to make sure your system is setup correctly.
3) I have a variable called FEY_CONFIG_FILE in my .bash_profile (in my home
directory in which I export FEY_CONFIG_FILE, remember to source
~/.bash_profile). I can then start Fey with java --jar iota-fey-core.jar
$FEY_CONFIG_FILE
4) My personal config file looks like
fey-global-configuration{
json-repository =
"/Users/tonyfaustini19/IntellijProjects/Performers/fey/FeyJSONRepo"
jar-repository =
"/Users/tonyfaustini19/IntellijProjects/Performers/fey/FeyJARRepo"
enable-checkpoint=false
}
note I have enable-checkpoint set to false since I am in development mode. In
production this would be set to true.
Thanks for your interest in iota
-Tony
> Review Readme.rd
> ----------------
>
> Key: IOTA-16
> URL: https://issues.apache.org/jira/browse/IOTA-16
> Project: Iota
> Issue Type: Task
> Reporter: Tony Faustini
> Assignee: Tony Faustini
> Priority: Minor
>
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)