Mercurial > gemma
annotate README.md @ 3302:ec6163c6687d
'Historicise' gauges on import
Gauge data sets will be updated or a new version will be inserted
depending on temporal validity and a timestamp marking the last
update in the RIS-Index of a data set. The trigger on date_info is
removed because the value is actually an attribut coming from the
RIS-Index.
Gauge measurements and predictions are associated to the version with
matching temporal validity. Bottlenecks are always associated to the
actual version of the gauge, although this might change as soon as
bottlenecks are 'historicised', too.
author | Tom Gottfried <tom@intevation.de> |
---|---|
date | Thu, 16 May 2019 18:41:43 +0200 |
parents | 69e0b75c0cc8 |
children | ab08a74ad2f4 |
rev | line source |
---|---|
1262
f370ce6eab65
add license info to README.md
Bernhard Reiter <bernhard@intevation.de>
parents:
1009
diff
changeset
|
1 # Workingtitle "gemma" |
f370ce6eab65
add license info to README.md
Bernhard Reiter <bernhard@intevation.de>
parents:
1009
diff
changeset
|
2 |
f370ce6eab65
add license info to README.md
Bernhard Reiter <bernhard@intevation.de>
parents:
1009
diff
changeset
|
3 //"gemma" is just a temporary title and is likely to be changed.// |
f370ce6eab65
add license info to README.md
Bernhard Reiter <bernhard@intevation.de>
parents:
1009
diff
changeset
|
4 |
1263
00a38b354ab7
improve licening info in README.md
Bernhard Reiter <bernhard@intevation.de>
parents:
1262
diff
changeset
|
5 |
266
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
6 # Quick Start |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
7 |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
8 ## Build |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
9 |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
10 - To build all components of gemma, simply type `make` on the top |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
11 level directory of the repro. |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
12 |
1009
76e9296d6191
added demo mode in READMEs
Markus Kottlaender <markus@intevation.de>
parents:
615
diff
changeset
|
13 - To build all components of gemma, with client in demo mode, use `make demo`. |
76e9296d6191
added demo mode in READMEs
Markus Kottlaender <markus@intevation.de>
parents:
615
diff
changeset
|
14 |
266
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
15 - To only (re)build the back end you can use `make gemma`. |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
16 |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
17 - To only build the SPA-Client you can use `make client`. |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
18 |
1009
76e9296d6191
added demo mode in READMEs
Markus Kottlaender <markus@intevation.de>
parents:
615
diff
changeset
|
19 - To only build the SPA-Client in demo mode you can use `make clientdemo`. |
76e9296d6191
added demo mode in READMEs
Markus Kottlaender <markus@intevation.de>
parents:
615
diff
changeset
|
20 |
291
9d6ba97a31d2
Moved development infos to separate file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
272
diff
changeset
|
21 For further details see [docs/DEVELOPMENT](docs/DEVELOPMENT.md), |
9d6ba97a31d2
Moved development infos to separate file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
272
diff
changeset
|
22 |
266
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
23 |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
24 ## Setup Database |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
25 |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
26 - You will need a PostgreSQL cluster with PostGIS. |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
27 |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
28 - To install the **gemma** schema and roles use the script |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
29 `./schema/install-db.sh`. |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
30 |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
31 - `./schema/install-db.sh --help` shows you available options. |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
32 Per default the script will create a database named "gemma" and all |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
33 necessary roles in the postgres default cluster (listening on port |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
34 5432). |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
35 |
272
5ee0edc01a18
Small typo fix.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
266
diff
changeset
|
36 - The script must be run as a user with PostgreSQL super user rights. |
266
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
37 By convention this is the "postgres" on most systems. |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
38 |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
39 |
610
f62ee9d5bff1
Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents:
481
diff
changeset
|
40 ## Setup GeoServer |
f62ee9d5bff1
Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents:
481
diff
changeset
|
41 |
f62ee9d5bff1
Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents:
481
diff
changeset
|
42 - Install and run GeoServer as described here: |
f62ee9d5bff1
Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents:
481
diff
changeset
|
43 http://docs.geoserver.org/stable/en/user/installation/ |
f62ee9d5bff1
Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents:
481
diff
changeset
|
44 |
f62ee9d5bff1
Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents:
481
diff
changeset
|
45 - Add tables you want to publish as OGC-Service Layers via GeoServer in |
f62ee9d5bff1
Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents:
481
diff
changeset
|
46 the database. For example publish the bottleneck areas: |
f62ee9d5bff1
Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents:
481
diff
changeset
|
47 ``` |
f62ee9d5bff1
Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents:
481
diff
changeset
|
48 INSERT INTO sys_admin.published_services (name, as_wfs) VALUES |
f62ee9d5bff1
Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents:
481
diff
changeset
|
49 ('waterway.bottlenecks', true); |
f62ee9d5bff1
Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents:
481
diff
changeset
|
50 ``` |
f62ee9d5bff1
Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents:
481
diff
changeset
|
51 In case your gemma is already running (see next section), restart it. |
f62ee9d5bff1
Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents:
481
diff
changeset
|
52 Published WFS services will be available at `/api/internal/wfs`. Currently, |
f62ee9d5bff1
Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents:
481
diff
changeset
|
53 the same layers will also be available as WMS services at |
f62ee9d5bff1
Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents:
481
diff
changeset
|
54 `/api/internal/wms`, regardless of the value of `as_wms` in |
f62ee9d5bff1
Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents:
481
diff
changeset
|
55 `sys_admin.published_services`. |
f62ee9d5bff1
Document adding of layers to internal OGC services.
Tom Gottfried <tom@intevation.de>
parents:
481
diff
changeset
|
56 |
266
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
57 ## Running gemma |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
58 |
330
fd04bccae6ca
Create standard roles as part of the base schema.
Sascha Wilde <wilde@intevation.de>
parents:
291
diff
changeset
|
59 - Best is to create a configuration file. Copy the example from |
481
d68dfbe768e2
Merge example configuration and that used for docker backend
Tom Gottfried <tom@intevation.de>
parents:
479
diff
changeset
|
60 `example_conf.toml` to get started: |
330
fd04bccae6ca
Create standard roles as part of the base schema.
Sascha Wilde <wilde@intevation.de>
parents:
291
diff
changeset
|
61 ``` |
481
d68dfbe768e2
Merge example configuration and that used for docker backend
Tom Gottfried <tom@intevation.de>
parents:
479
diff
changeset
|
62 cp example_conf.toml gemma.toml |
330
fd04bccae6ca
Create standard roles as part of the base schema.
Sascha Wilde <wilde@intevation.de>
parents:
291
diff
changeset
|
63 ``` |
266
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
64 |
387
0f78b13f4a9a
(minor) Fix typo in README.
Bernhard Reiter <bernhard@intevation.de>
parents:
330
diff
changeset
|
65 - Edit `gemma.toml`, some parameters you probably want to change: |
330
fd04bccae6ca
Create standard roles as part of the base schema.
Sascha Wilde <wilde@intevation.de>
parents:
291
diff
changeset
|
66 |
fd04bccae6ca
Create standard roles as part of the base schema.
Sascha Wilde <wilde@intevation.de>
parents:
291
diff
changeset
|
67 * `host` and `port` to make gemma listen on a public interface |
481
d68dfbe768e2
Merge example configuration and that used for docker backend
Tom Gottfried <tom@intevation.de>
parents:
479
diff
changeset
|
68 * `metamorph-db-password` to match the password for your database user |
d68dfbe768e2
Merge example configuration and that used for docker backend
Tom Gottfried <tom@intevation.de>
parents:
479
diff
changeset
|
69 * `geoserver-url`, `geoserver-user` and `geoserver-password` to match |
d68dfbe768e2
Merge example configuration and that used for docker backend
Tom Gottfried <tom@intevation.de>
parents:
479
diff
changeset
|
70 your instance of GeoServer |
266
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
71 |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
72 - `./cmd/gemma/gemma -h` gives you an overview of more available |
a2f7049daf7f
Added some quickstart information to README.md
Sascha Wilde <wilde@intevation.de>
parents:
206
diff
changeset
|
73 options. |
330
fd04bccae6ca
Create standard roles as part of the base schema.
Sascha Wilde <wilde@intevation.de>
parents:
291
diff
changeset
|
74 |
fd04bccae6ca
Create standard roles as part of the base schema.
Sascha Wilde <wilde@intevation.de>
parents:
291
diff
changeset
|
75 - Then start gemma: |
fd04bccae6ca
Create standard roles as part of the base schema.
Sascha Wilde <wilde@intevation.de>
parents:
291
diff
changeset
|
76 ``` |
479 | 77 ./cmd/gemma/gemma |
330
fd04bccae6ca
Create standard roles as part of the base schema.
Sascha Wilde <wilde@intevation.de>
parents:
291
diff
changeset
|
78 ``` |
615
4ffdb922db44
Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents:
610
diff
changeset
|
79 |
4ffdb922db44
Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents:
610
diff
changeset
|
80 ## Proxying OGC services through gemma |
4ffdb922db44
Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents:
610
diff
changeset
|
81 |
4ffdb922db44
Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents:
610
diff
changeset
|
82 - Add services you want to publish via gemma (e.g. for same-origin policy |
4ffdb922db44
Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents:
610
diff
changeset
|
83 compliance reasons) in the database. For example: |
4ffdb922db44
Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents:
610
diff
changeset
|
84 ``` |
4ffdb922db44
Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents:
610
diff
changeset
|
85 INSERT INTO sys_admin.external_services (local_name, remote_url, is_wfs) |
4ffdb922db44
Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents:
610
diff
changeset
|
86 VALUES ('d4d', 'https://service.d4d-portal.info/wamos/wfs', true); |
4ffdb922db44
Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents:
610
diff
changeset
|
87 ``` |
4ffdb922db44
Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents:
610
diff
changeset
|
88 In case your gemma is already running (see previous section), restart it. |
4ffdb922db44
Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents:
610
diff
changeset
|
89 The services will be available at `/api/external/${local_name}`, thus in |
4ffdb922db44
Document adding of external OGC services.
Tom Gottfried <tom@intevation.de>
parents:
610
diff
changeset
|
90 the example given above: `/api/external/d4d`. |
1390
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
91 |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
92 # License |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
93 |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
94 //gemma// source code itself licenses as Free Software |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
95 under GNU Affero GPL v>=3. See the particular source files |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
96 for details, the license itself can be found in the directory `LICENSES`. |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
97 |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
98 To build a complete product, a number of other Free Software components |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
99 are used, which have their own licenses. |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
100 |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
101 To get an overview about the components which are partly included |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
102 in the resulting production ready-product for the `client/` |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
103 use `yarn licenses`, e.g. like |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
104 |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
105 ```sh |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
106 yarn licenses list | grep '^├─ ' |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
107 ``` |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
108 |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
109 Additionally inspect `3rdpartylibs.sh` for Go components used |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
110 for the middleware and their licenses. |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
111 |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
112 # Credits |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
113 |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
114 Exclusive usage rights |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
115 (we are in Europe, so it is not Common-law's "copyright"): |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
116 via donau – Österreichische Wasserstraßen-Gesellschaft mbH, Austria |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
117 |
69e0b75c0cc8
Moved license and credits sections to end of the readme file.
Sascha L. Teichmann <sascha.teichmann@intevation.de>
parents:
1271
diff
changeset
|
118 Software-Engineering: Intevation GmbH, Germany |