workflows: Holding Pen authorization

* Adds decorators for permission check to Holding Pen blueprints.

* Adds new ACL with basic "viewholdingpen" authorization to access
  the Holding Pen.

Reviewed-by: Jiri Kuncar <jiri.kuncar@cern.ch>
Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
access: Holding Pen role

* Adds Holding Pen role and authorization linked to the
  viewholdingpen action in workflows module.

Reviewed-by: Jiri Kuncar <jiri.kuncar@cern.ch>
Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
access: fix holdingpenusers role definition

Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>
previewer: fix base template for bundles support

Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>
previewer: initial release of ZIP file plugin

* Adds basic access controll check for record only.

* NOTE Add following line to your configuration to enable this plugin
  `CFG_PREVIEW_PREFERENCE = {'.zip': ['zip']}`  (PR #2321)

Co-authored-by: Jiri Kuncar <jiri.kuncar@cern.ch>
Signed-off-by: Antonios Manaras <antonios.manaras@cern.ch>
global: silent version from git

* Silences the warning "fatal: Not a git repository ..." when running
  inveniomanage outside of a git repository.

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
docs: jsonalchemy grammar and rewording

* Rewords sentences that were incomprehensible or hard to understand
  and splits long chunks of information into bullet points.

* Changes informal pronouns to formal.

* Fixes a triple-quote.

Signed-off-by: Dimitrios Semitsoglou-Tsiapos <dsemitso@cern.ch>
workflows: new stage for halted

* Adds 'WAITING' stage for halted workflows with
  no action added to them.

Reviewed-by: Jiri Kuncar <jiri.kuncar@cern.ch>
Reviewed-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
Signed-off-by: Georgios Papoutsakis <georgios.papoutsakis@cern.ch>
workflows: new stage for error

* Adds new stage for objects that encountered an error.

Reviewed-by: Jiri Kuncar <jiri.kuncar@cern.ch>
Reviewed-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
Signed-off-by: Georgios Papoutsakis <georgios.papoutsakis@cern.ch>
workflows: detailed workflow task list

* Displays workflow definition and completed tasks in details page.

* Task names to display are chosen from the description attributes
  of the task, if not present from the first line of the docstring,
  if still not present, the function name is finally used.

* Wraps to tasks to get their attributes from outer function.

* Adapts testsuite to new workflow stages.

Reviewed-by: Jiri Kuncar <jiri.kuncar@cern.ch>
Reviewed-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
Signed-off-by: Georgios Papoutsakis <georgios.papoutsakis@cern.ch>
oaiharvester: decorating inner function in tasks

* Wraps workflow tasks to get outer function's attributes.

Reviewed-by: Jiri Kuncar <jiri.kuncar@cern.ch>
Reviewed-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
Signed-off-by: Georgios Papoutsakis <georgios.papoutsakis@cern.ch>
deposit: decorating inner function in task closure

* Wraps workflow tasks to get outer function's attributes.

Reviewed-by: Jiri Kuncar <jiri.kuncar@cern.ch>
Reviewed-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
Signed-off-by: Georgios Papoutsakis <georgios.papoutsakis@cern.ch>
workflows: translation support

* Adds translation support for all templates.

Reviewed-by: Jiri Kuncar <jiri.kuncar@cern.ch>
Signed-off-by: Georgios Papoutsakis <georgios.papoutsakis@cern.ch>
workflows: fix for indentation in templates

Signed-off-by: Georgios Papoutsakis <georgios.papoutsakis@cern.ch>
redirector: migrate sql interface to sqlalchemy

* Replaces run_sql queries with SQLAchemy query.

Signed-off-by: Leonardo Rossi <leonardo.r@cern.ch>
redirector: module enhancement

* Refactors module in order to move logic from api to model.

* Creates new registry for redirect methods.

Signed-off-by: Leonardo Rossi <leonardo.r@cern.ch>