Go to file
Frédéric Péters 6e55599667
gitea/publik-imio-industrialisation/pipeline/head This commit looks good Details
switch wcs to django management commands (#83567)
2023-11-21 12:20:27 +01:00
combo add custom management commands 2021-02-26 13:46:45 +01:00
debian switch wcs to django management commands (#83567) 2023-11-21 12:20:27 +01:00
hobo misc: update to black 22.3.0 2022-04-01 09:54:19 +02:00
wcs switch wcs to django management commands (#83567) 2023-11-21 12:20:27 +01:00
.gitignore add packaging 2021-02-26 13:46:45 +01:00
.pre-commit-config.yaml update pre-commit configuration 2023-11-21 12:18:12 +01:00
COPYING init repository as AGPL 2021-02-26 12:27:02 +01:00
Jenkinsfile ci: build deb package for bookworm (#78968) 2023-06-23 17:53:58 +02:00
Makefile switch wcs to django management commands (#83567) 2023-11-21 12:20:27 +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