Modify step architecture to a core/plugin model
Prep:
-
Extract common methods in steps to one place -
Rename convert_file
=>perform_step
-
Remove StepClass DB table -
Map step class name directly to StepClass with namespace (e.g. InkStep::BasicStep
) -
Autoload gem classes via Rails loader -
Remove 'step must exist in registry' constraint (it can fail on execution)
Gem:
-
Create a basic InkStep gem -
Migrate ConversionErrors to gem -
Migrate step_logic_location to gem -
Migrate basic ConversionStep gem code to gem -
Migrate basic ValidationStep gem code to gem -
Add a namespace to everything -
Migrate Basic Step to gem
Docs - README:
-
directions for adding a new step to Ink instance -
directions for first time setup (other gemfile, etc) -
Removal of 'add step' bit
Post feature:
-
Publish directions in README for adding InkStep as a dependency for a new gem and subclassing it