Go to file
Frédéric Péters f94ab37d1f add support for all kinds of categories (#63943) 2022-04-15 11:01:02 +02:00
combo add custom management commands 2021-02-26 13:46:45 +01:00
debian debian: use debhelper compat level 12 2022-01-28 08:32:03 +01:00
hobo misc: update to black 22.3.0 2022-04-01 09:54:19 +02:00
wcs add support for all kinds of categories (#63943) 2022-04-15 11:01:02 +02:00
.gitignore add packaging 2021-02-26 13:46:45 +01:00
.pre-commit-config.yaml misc: update to black 22.3.0 2022-04-01 09:54:19 +02:00
COPYING init repository as AGPL 2021-02-26 12:27:02 +01:00
Jenkinsfile jenkins: build for both buster and bullseye 2022-01-28 08:26:36 +01:00
Makefile add packaging 2021-02-26 13:46:45 +01:00
README add support for all kinds of categories (#63943) 2022-04-15 11:01:02 +02:00

README

Publik iMio Industrialisation
=============================

Usage:

  sudo -u hobo hobo-manage imio_indus_deploy -d $tenant --directory /path/to/directory/

  (or without -d $tenant to get interactive choice)


Expected directory layout
-------------------------

* blocks: list of w.c.s. blocks (XML files)
* carddefs: list of w.c.s. cards (XML files)
* category, carddef_category, workflow_category, block_category, mail_template_category,
  data_source_category: list of w.c.s. categories, for their respective objects
  (XML files)
* datasources: list of w.c.s. data sources (XML files)
* forms: list of w.c.s. forms (XML files)
* workflows: list of w.c.s. workflows (XML files)
* wscalls: list of w.c.s. webservice calls (XML files)

* combo: list of portal file exports, they should be named portal-agent.json
  and portal-user.json. (It actually takes files according to the template_name
  associated to the service)

* passerelle: list of connector file exports (JSON files).

* roles: a single roles.json file, in authentic format, ex:

  {
    "roles": [
      {
        "name": "Parent",
        "slug": "parent",
        "ou": {"slug": "default"}
      },
      {
        "name": "Agents traitants - Portail parent",
        "slug": "agents-traitants-portail-parent",
        "ou": {"slug": "default"}
      }
    ]
  }


The combo, passerelle and roles JSON files will be treated as templates if they
start with a Django template comment ({# ... #}), with environment variables
available in the rendering context.

This allows for such an import file:

  {# template #}{
    "resources": [
      {
        "server_url": "https://{{ environ.SERVER_HOSTNAME }}",
        ...


Order of operations
-------------------

* Check roles
* Deploy roles if they were missing
* Wait for roles to be deployed to modules (using rabbitmq)
* Deploy w.c.s. components (contents is overwritten except some form options)
* Deploy combo components
* Deploy passerelle components