App using Dynflow for parallel execution of external commands and tracking the status.
cp config/database.yml{.example,}
bundle install
rake db:migrate
bundle exec rails s
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.
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: 'git@github.com: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)
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.
-
Polling for the updates
-
Updating the status though web sockets (with fallback to polling)
MIT
Ivan Nečas