Available features in the public API
DistributedWorkflows.application_config
— Methodapplication_config(port::String, impl::String, fname::String)
Convenience constructor for configuring a workflow application with a single transition.
Arguments
ports::String
: Ports to configure for the workflow transition.impl::String
: Julia file containing the implementation called by the workflow transition.fnames::String
: Function name to be executed by the workflow transition.
See also Workflow_PetriNet
, generate_workflow
, compile_workflow
.
DistributedWorkflows.application_config
— Methodapplication_config(ports::Vector{String}, impl::String, fnames::Vector{String})
Convenience constructor for configuring a workflow application with multiple transitions sourcing their implementation details from the same file.
Arguments
ports::Vector{String}
: List of ports to configure for the workflow transitions.impl::String
: Julia file containing the implementations called by the workflow transitions.fnames::Vector{String}
: List of function names to be executed by the workflow transitions.
See also Workflow_PetriNet
, generate_workflow
, compile_workflow
.
DistributedWorkflows.application_config
— Methodapplication_config(ports::Vector{String}, impl::Vector{String}, fnames::Vector{String})
Constructor for configuring a workflow application with multiple transitions.
Arguments
ports::Vector{String}
: List of ports to configure for the workflow transitions.impl::Vector{String}
: List of julia files containing the implementations called by the workflow transitions.fnames::Vector{String}
: List of function names to be executed by the workflow transitions.
See also Workflow_PetriNet
, generate_workflow
, compile_workflow
.
DistributedWorkflows.client
— Methodclient(workers::Int, nodefile::String, rif_strategy::String, log_host::String, log_port::Int)
Configures and starts a client setting up the workflow execution infrastructure and connects to a logging service. The nodefile will be automatically populated with the local host name if it doesn't exist in the given location or the rif_strategy
is local
.
Arguments
workers::Int
: Number of workers launched per node.nodefile::String
: Location of the nodefile.rif_strategy::String
: Launch mode of the workflow infrastructure. Acceptsssh
for distributing the workers across multiple nodes orlocal
for running on the localhost only.log_host::String
: Host of the logging service.log_port::Int
: Port the logging service is listening on.
See also Workflow_PetriNet
, generate_workflow
, compile_workflow
.
DistributedWorkflows.client
— Methodclient(workers::Int, nodefile::String, rif_strategy::String)
Configures and starts a client setting up the workflow execution infrastructure. The nodefile will be automatically populated with the local host name if it doesn't exist in the given location or the rif_strategy
is local
.
Arguments
workers::Int
: Number of workers launched per node.nodefile::String
: Location of the nodefile.rif_strategy::String
: Launch mode of the workflow infrastructure. Acceptsssh
for distributing the workers across multiple nodes orlocal
for running on the localhost only.
See also Workflow_PetriNet
, generate_workflow
, compile_workflow
.
DistributedWorkflows.implementation
— Methodimplementation(port_name::String, path::String)
Convenience key-value pair wrapper for function signature clarity and readability.
Arguments
port_name::String
: Name of the port to contain the path string.path::String
: Path to a julia source file.
See also Workflow_PetriNet
, generate_workflow
, compile_workflow
, port_info
.
DistributedWorkflows.input_pair
— Methodinput_pair(port_name::String, path::String)
Convenience key-value pair wrapper for function signature clarity and readability.
Arguments
port_name::String
: Name of the port to contain the path string.path::String
: Path to an input data file.
See also Workflow_PetriNet
, generate_workflow
, compile_workflow
, port_info
.
DistributedWorkflows.port_info
— Methodport_info(KV)
Wrapper function for KeyValuePair.
DistributedWorkflows.submit_workflow
— Methodsubmit_workflow(client, workflow, input_params::Vector)
Submit a configured workflow to a client instance.
Arguments
client
: A workflow client instance.workflow
: A configured workflow object.input_params::Vector
: List of inputs for the workflow execution.
See also Workflow_PetriNet
, generate_workflow
, compile_workflow
.
DistributedWorkflows.workflow_config
— Methodworkflow_config(workflow::String, output_dir::String, app_config::Application_config_many)
Configures a workflow for execution by a client instance.
Arguments
workflow::String
: Name of the workflow.output_dir::String
: Location to store any output data generated during the workflow execution.app_config::Application_config_many
: Application configurations for the workflow exeuction.
See also Workflow_PetriNet
, generate_workflow
, compile_workflow
.
DistributedWorkflows.workflow_config
— Methodworkflow_config(workflow::String, output_dir::String, app_config::Application_config)
Configures a workflow for execution by a client instance.
Arguments
workflow::String
: Name of the workflow.output_dir::String
: Location to store any output data generated during the workflow execution.app_config::Application_config
: Application configuration for the workflow exeuction.
See also Workflow_PetriNet
, generate_workflow
, compile_workflow
.
DistributedWorkflows.workflow_config
— Methodworkflow_config(workflow::String, output_dir::String, app_config::Vector{Application_config})
Configures a workflow for execution by a client instance.
Arguments
workflow::String
: Name of the workflow.output_dir::String
: Location to store any output data generated during the workflow execution.app_config::Vector{Application_config}
: List of application configurations for the workflow exeuction.
See also Workflow_PetriNet
, generate_workflow
, compile_workflow
.