Skip to content

persist

ARLAS Persistence

ARLAS Persistence allows you to place files within zones.

A zone is a group of files of the same nature (configurations, dashboard previews, bookmarks, ...)

A zone is visible by groups.

It is also possible to set who can access the file.

The main persistence zone is the config.json which contains the dashboard configurations.

An entry is an element stored in the persistence.

> arlas_cli persist --help
Usage: arlas_cli persist [OPTIONS] COMMAND [ARGS]...

Options:
  --config TEXT  Name of the ARLAS configuration to use from your
                 configuration file
                 (/home/willi/.arlas/cli/configuration.yaml).
  --help         Show this message and exit.

Commands:
  add       Add an entry, returns its ID
  delete    Delete an entry
  describe  Describe an entry
  get       Retrieve an entry
  groups    List groups allowed to access a zone
  zone      List entries within a zone

add

The persist add sub-command allows to create an entry from a file.

> arlas_cli persist --config local add --help
Usage: arlas_cli persist add [OPTIONS] FILE ZONE

  Add an entry, returns its ID

Arguments:
  FILE  File path  [required]
  ZONE  zone  [required]

Options:
  --name TEXT             name  [default: none]
  --reader TEXT           Readers
  --writer TEXT           writers
  --encode / --no-encode  Encode in BASE64  [default: no-encode]
  --help                  Show this message and exit.

  See full arlas_cli documentation at https://gisaia.github.io/arlas_cli/

Add an entry from a file

For example to create an ARLAS dashboard directly from a json file, run the following command to add the entry to the config.json zone:

> arlas_cli persist \
    --config {local} \
    add {path/to/config.dashboard.json} config.json \
    --name {dashboard_name}
32d2624b-d7cd-11ee-9a91-0242ac130004

The returned identifier is the entry unique identifier.

Note

The config.dashboard.json file has to contain all the dashboard configurations merged (config.json and config.map.json).

zone

The available entries in a zone can be listed with the persist zone sub-command:

> arlas_cli persist --config local zone --help
Usage: arlas_cli persist zone [OPTIONS] ZONE

  List entries within a zone

Arguments:
  ZONE  Zone name  [required]

Options:
  --help  Show this message and exit.

  See full arlas_cli documentation at https://gisaia.github.io/arlas_cli/

List entries within a zone

For example, to list all the available ARLAS dashboards (config.json zone), run the following command:

> arlas_cli persist --config {local} zone config.json
+--------------------------------------+-------------------+-------------+------------------+-----------+
| id                                   | name              | zone        | last_update_date | owner     |
+--------------------------------------+-------------------+-------------+------------------+-----------+
| 66984014-d0a1-11ee-b41c-0242ac190004 | Courses           | config.json | 1708510231303    | anonymous |
...
+--------------------------------------+-------------------+-------------+------------------+-----------+

The id is the unique identifier of the entry.

describe

An entry (defined by its unique identifier) can be described with the persist describe sub-command:

> arlas_cli persist --config local describe --help
Usage: arlas_cli persist describe [OPTIONS] ID

  Describe an entry

Arguments:
  ID  entry identifier  [required]

Options:
  --help  Show this message and exit.

  See full arlas_cli documentation at https://gisaia.github.io/arlas_cli/

Describe an entry

For example, a dashboard configuration can be described by its metadata with the following command:

> arlas_cli persist --config {local} describe {99acb6b7-3cfd-11ef-aee2-2e6497b109c4}
+------------------+--------------------------------------------+
| metadata         | value                                      |
+------------------+--------------------------------------------+
| ID               | 99acb6b7-3cfd-11ef-aee2-2e6497b109c4       |
| name             | AIS Course                                 |
| zone             | config.json                                |
| last_update_date | 2024-10-21T18:02:59.456000                 |
| owner            | 6ce7f1f2-2ee3-4532-987d-26079c1b3043       |
| organization     | gisaia.com                                 |
| ispublic         | False                                      |
| updatable        | True                                       |
| readers          | group/config.json/gisaia.com, group/public |
| writers          | group/config.json/gisaia.com               |
+------------------+--------------------------------------------+

In the metadata, we can find which organisation own the dashboard and which groups can access the dashboard as readers and writers.

get

The content of an entry can be accessed with the persist get sub-command:

> arlas_cli persist --config local get --help
Usage: arlas_cli persist get [OPTIONS] ID

  Retrieve an entry

Arguments:
  ID  entry identifier  [required]

Options:
  --help  Show this message and exit.

  See full arlas_cli documentation at https://gisaia.github.io/arlas_cli/

Get an entry value

The content of the configuration file of an ARLAS dashboard can be read directly from its entry unique identifier:

> arlas_cli persist --config {local} get {32d2624b-d7cd-11ee-9a91-0242ac130004}
{
  "arlas": {
    "web": {
      "contributors": [
...
}

groups

The groups accessing a zone can be listed with the persist groups sub-command:

> arlas_cli persist --config local groups --help
Usage: arlas_cli persist groups [OPTIONS] ZONE

  List groups allowed to access a zone

Arguments:
  ZONE  Zone name  [required]

Options:
  --help  Show this message and exit.

  See full arlas_cli documentation at https://gisaia.github.io/arlas_cli/

List groups accessing a zone

For example, the groups accessing the dashboards config.json zone can be listed with the following command:

> arlas_cli persist --config {local} groups config.json
+-------------------------------+
| group                         |
+-------------------------------+
| group/config.json/gisaia.com  |
| group/public                  |
+-------------------------------+

delete

An entry defined by its unique identifier can be deleted with the persist delete sub-command:

> arlas_cli persist --config local delete --help
Usage: arlas_cli persist delete [OPTIONS] ID

  Delete an entry

Arguments:
  ID  entry identifier  [required]

Options:
  --help  Show this message and exit.

  See full arlas_cli documentation at https://gisaia.github.io/arlas_cli/

Delete an entry

For example, to delete a dashboard from its identifier, run the following command:

> arlas_cli persist --config {local} delete {32d2624b-d7cd-11ee-9a91-0242ac130004}
Resource 32d2624b-d7cd-11ee-9a91-0242ac130004 deleted.

Warning

A deleted entry cannot be restored.