iota-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject [8/9] incubator-iota git commit: Updating README to point out the changes
Date Thu, 14 Jul 2016 19:54:37 GMT
Updating README to point out the changes


Branch: refs/heads/master
Commit: a12d654ffefdddb5fbad50c052e9002ecf46aeb4
Parents: 93c19a3
Author: Barbara Gomes <>
Authored: Thu Jul 14 12:42:13 2016 -0700
Committer: Barbara Gomes <>
Committed: Thu Jul 14 12:42:13 2016 -0700

 fey-core/ | 42 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)
diff --git a/fey-core/ b/fey-core/
index 918b82b..0c9afb1 100644
--- a/fey-core/
+++ b/fey-core/
@@ -96,6 +96,8 @@ The Fey configuration file can optionally include one of more of the following
 | **log-level** | String | Log level for Fey | DEBUG|
 | **log-appender**| String | Enable or disable the appender based on user configuration.
Accepts 3 options: FILE or STDOUT or FILE_STDOUT | STDOUT |
 | **auto-scale.messages-per-resize** | Integer | Affects only Performers that are able to
auto scale. Defines the volume of message that will trigger a resize | 500 |
+| **dynamic-jar-population** | Object | For details check [Dynamic Jar Population](#markdown-header-dynamic-jar-population)
 ### Fey Logging
 Fey uses _logback.xml_ to configure its logs. By Default, Fey appends the to STOUT. You can
change the configuration to log a file or you could log to both. 
@@ -104,6 +106,45 @@ Fey uses a Rolling File Appender where each log file has a max size of
one megab
 In Fey the default log level is `DEBUG` for the entire system, and the other configuration
offered by Fey are log level .
+## Dynamic Jar Population
+Fey offers the possibility of downloading the jar to be used by the Performer before it starts
it, which means that the jar could not be in the jar repo and will be download when requested
+The jars downloaded on demand will be store in the directory specified in Fey configuration
`dynamic-jar-population.downloaded-repository`. The default value is `${HOME}"/.fey/jars"`.
+Fey will download the jar only when it is not available in the downloaded-repository.
+By default Fey will not clean up the downloaded-repository every time it is launched. If
you want to force this condition will can change the Fey configuration `dynamic-jar-population.force-pull`
to `true`.
+    // Directory where Fey will download the jars that the location is
+    // specified in the JSON
+    downloaded-repository = ${HOME}"/.fey/jars"
+    // If enabled, Fey will clean up the jar-downloaded-repository everytime
+    // it starts, forcing the jars to be downloaded again
+    // If false, Fey will only download jars that are not in jar-downloaded-repository
+    force-pull = false
+In order to tell Fey to download a jar, you have to specify its location in the JSON, inside
`source` of the Performer.
+"location": {
+  "url": "https://my-remote-location",
+  "credentials":{
+    "user": "USERNAME_REPO",
+    "password": "PASSWORD_REPO"
+  }
+`location` is an optional property. It it is present, the `url` property must be defined
as well. The `credentials` property is also optional.
+You can use environment variables to define your credentials. Fey you first try to resolve
the `user` and the `password` value by looking to the environment variables, in case it does
not exists, the value itself will be used.
+For example, if your `user` property is `MYNAME`, Fey will look for an environment variable
called `MYNAME`, if it is able to find, the value in the environment variable will be used,
if it is not able to find the value `MYNAME` will be used.
 ## JSON Configuration
 Fey gets its instructions to start the generic actors through a well defined JSON schema.
For Fey, each JSON will specify an Orchestration, in which will be defined the Ensembles with
its Performers.
@@ -167,6 +208,7 @@ The source property of an Performer holds the necessary information for
 | **name** | String | Jar name that contains the Generic Actor. This jar must be present
in the specified [jar repo](#markdown-header-running-Fey). The jar name is not case sensitive.
 | **classPath** | String | class path for the GenericActor class inside the _.jar_. It should
include the package as well.|
 | **parameters** | Object | Contains any additional information that will be used by the
GenericActor. It will be passed to the actor as a `HashMap[String,String]` in which the key
is the property name, and the value is the property value. It can contain as many properties
as you want to.|
+| **location** | Object | Optional. Please, see [Dynamic Jar Population](#dynamic-jar-population)
for more details.
 ### Ensemble Connections
 The Connections property of an Ensemble defines the connection between the Performers. See
[connectTo](#markdown-header-constructor) constructor parameter for more details about how
this information is used.

View raw message