Skip to content
/ sysflow Public

Example app using Dynflow for parallel execution of external commands and tracking the status

Notifications You must be signed in to change notification settings

iNecas/sysflow

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Sysflow

App using Dynflow for parallel execution of external commands and tracking the status.

Installation

cp config/database.yml{.example,}
bundle install
rake db:migrate
bundle exec rails s

Usage

Go to http://localhost:3000, fill in commands to run (each line will be run in parallel) and hit "Run". The task detail will be shown with the current status of the commands. You can keep the pages refreshing to see current status.

Reusing in another apps

The actions and services defined in Sysflow can be used in other apps that run Dynflow on backend. All one needs is to add the dependency into Gemfile:

gem 'sysflow', git: '[email protected]:iNecas/sysflow.git'

and run the following code in the initialization phase of the application (perhaps in config/initializers/sysflow.rb):

Sysflow.dynflow_load

If Dyntask is present, it adds the actions to eager load paths, so that code reloading works in development mode as well, by calling:

Sysflow.dynflow_load(true)

Purpose

For now, this app serves as a simple example of using Dynflow and Dyntask.

The Dynflow actions and connectors can also be used in another apps that run Dynflow on backend.

TODO

  • Polling for the updates

  • Updating the status though web sockets (with fallback to polling)

License

MIT

Author

Ivan Nečas

About

Example app using Dynflow for parallel execution of external commands and tracking the status

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published