Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Next steps #3

Open
14 of 26 tasks
bertsky opened this issue Apr 5, 2022 · 0 comments
Open
14 of 26 tasks

Next steps #3

bertsky opened this issue Apr 5, 2022 · 0 comments

Comments

@bertsky
Copy link
Member

bertsky commented Apr 5, 2022

  • make asynchronous option work (disown -a?)
  • separate docker-compose files for Kitodo/Manager vs. Controller, e.g. docker-compose -f docker-compose.yml -f docker-compose-kitodo.yml -f ../ocrd_controller/docker-compose-controller.yml, or native controller docker-compose -f docker-compose.yml -f docker-compose-kitodo.yml -f docker-compose.override.yml – configuration mechanisms...
  • generalize error handling for script tasks in Production: differentiate between errors and asynchronous tasks (and thus allow actual error handling)
    or alternatively, keep errors out of Production (task stays open until successful), and offer GUI in Manager for history, processing status, error monitoring and workflow modification+restart)
  • refactor for_production.sh (functions, file includes) to make re-usable for different scenarios (for_presentation, ...)
  • Secure active mq call Use secure active mq ocrd_manager#14
  • ocrd-import / workspace init as part of for_production.sh, not of the workflow itself
  • workflow script: ocrd process syntax instead of bare shell script (entails previous)
  • workflow script: ocrd validate tasks before running
  • versioning and labelling of Docker images (manager → core and controller → ocrd_all)
  • decoupling Production process share and Manager data volume (explicit copy to and fro)
  • decoupling Manager volume and Controller volume – more options?
  • decoupling Kitodo+Manager services (Docker compose file) and Controller services (Docker compose file)
  • smarter and more efficient processing in Controller
    • to prevent oversubscription, use semaphores (via .profile for ocrd user)
    • or delegate to Nextflow as worfklow engine
    • or delegate to workflow server (i.e. ocrd workflow server + ocrd workflow client process instead of ocrd process), at least for preconfigured workflows
    • and/or delegate to processing server (i.e. ocrd-PROCESSOR --server HOST PORT WORKERS + ocrd workflow client process...)
  • more flexible workflows:
    • advertise existing (installed) workflows in Production ("drop-down list")
    • inherit workflows from preconfigured (installed or edited) templates, then copy to process directory
    • edit workflows in Production (simple text editor, perhaps syntax highlighting)
  • parallelization and job pipeline
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant