c2cgeoportal-geoportal 2.7.1.156__py2.py3-none-any.whl → 2.8.1.180__py2.py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. c2cgeoportal_geoportal/__init__.py +24 -14
  2. c2cgeoportal_geoportal/lib/authentication.py +10 -14
  3. c2cgeoportal_geoportal/lib/caching.py +8 -6
  4. c2cgeoportal_geoportal/lib/checker.py +10 -6
  5. c2cgeoportal_geoportal/lib/common_headers.py +5 -8
  6. c2cgeoportal_geoportal/lib/dbreflection.py +8 -8
  7. c2cgeoportal_geoportal/lib/filter_capabilities.py +5 -1
  8. c2cgeoportal_geoportal/lib/lingua_extractor.py +11 -12
  9. c2cgeoportal_geoportal/lib/loader.py +1 -1
  10. c2cgeoportal_geoportal/lib/oauth2.py +217 -100
  11. c2cgeoportal_geoportal/lib/wmstparsing.py +8 -12
  12. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/Dockerfile +9 -11
  13. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/development.ini +1 -1
  14. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/gunicorn.conf.py +0 -2
  15. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/requirements.txt +1 -1
  16. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/webpack.api.js +6 -4
  17. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/webpack.apps.js +1 -3
  18. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/webpack.commons.js +1 -0
  19. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/{{cookiecutter.package}}_geoportal/__init__.py +1 -6
  20. c2cgeoportal_geoportal/scaffolds/advance_update/{{cookiecutter.project}}/geoportal/CONST_Makefile +0 -20
  21. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.github/workflows/main.yaml +20 -6
  22. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/.github/workflows/update_l10n.yaml +4 -3
  23. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/Dockerfile +22 -22
  24. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/Makefile +58 -2
  25. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/build +48 -24
  26. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/ci/config.yaml +2 -5
  27. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/ci/docker-compose-check +25 -0
  28. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/ci/requirements.txt +1 -1
  29. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/docker-compose-db.yaml +26 -0
  30. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/docker-compose-lib.yaml +53 -26
  31. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/docker-compose-qgis.yaml +23 -0
  32. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/docker-compose.override.sample.yaml +0 -1
  33. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/docker-compose.yaml +3 -3
  34. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/env.default +21 -2
  35. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/env.project +9 -0
  36. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/geoportal/vars.yaml +38 -14
  37. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/data/Readme.txt +2 -2
  38. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/mapserver.conf +15 -0
  39. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/mapserver/mapserver.map.tmpl +2 -3
  40. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/A3_Landscape.jrxml +5 -0
  41. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/A3_Portrait.jrxml +5 -0
  42. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/A4_Landscape.jrxml +5 -0
  43. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/A4_Portrait.jrxml +5 -0
  44. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/print/print-apps/{{cookiecutter.package}}/config.yaml.tmpl +6 -0
  45. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/pyproject.toml +4 -0
  46. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/run_alembic.sh +3 -5
  47. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/scripts/db-backup +1 -1
  48. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/scripts/db-restore +1 -1
  49. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/spell-ignore-words.txt +2 -0
  50. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/tests/__init__.py +0 -0
  51. c2cgeoportal_geoportal/scaffolds/create/{{cookiecutter.project}}/tests/test_app.py +38 -0
  52. c2cgeoportal_geoportal/scaffolds/update/{{cookiecutter.project}}/.upgrade.yaml +2 -132
  53. c2cgeoportal_geoportal/scaffolds/update/{{cookiecutter.project}}/CONST_CHANGELOG.txt +210 -1097
  54. c2cgeoportal_geoportal/scaffolds/update/{{cookiecutter.project}}/CONST_create_template/tests/test_testapp.py +48 -0
  55. c2cgeoportal_geoportal/scaffolds/update/{{cookiecutter.project}}/geoportal/CONST_config-schema.yaml +17 -15
  56. c2cgeoportal_geoportal/scaffolds/update/{{cookiecutter.project}}/geoportal/CONST_vars.yaml +46 -2
  57. c2cgeoportal_geoportal/scripts/c2cupgrade.py +1 -2
  58. c2cgeoportal_geoportal/scripts/pcreate.py +8 -10
  59. c2cgeoportal_geoportal/scripts/theme2fts.py +58 -3
  60. c2cgeoportal_geoportal/views/__init__.py +1 -3
  61. c2cgeoportal_geoportal/views/dynamic.py +1 -1
  62. c2cgeoportal_geoportal/views/entry.py +2 -10
  63. c2cgeoportal_geoportal/views/fulltextsearch.py +1 -1
  64. c2cgeoportal_geoportal/views/geometry_processing.py +3 -3
  65. c2cgeoportal_geoportal/views/layers.py +10 -11
  66. c2cgeoportal_geoportal/views/login.py +63 -8
  67. c2cgeoportal_geoportal/views/mapserverproxy.py +2 -3
  68. c2cgeoportal_geoportal/views/ogcproxy.py +6 -2
  69. c2cgeoportal_geoportal/views/pdfreport.py +4 -4
  70. c2cgeoportal_geoportal/views/printproxy.py +2 -2
  71. c2cgeoportal_geoportal/views/profile.py +1 -1
  72. c2cgeoportal_geoportal/views/proxy.py +2 -4
  73. c2cgeoportal_geoportal/views/raster.py +2 -2
  74. c2cgeoportal_geoportal/views/resourceproxy.py +1 -1
  75. c2cgeoportal_geoportal/views/shortener.py +1 -2
  76. c2cgeoportal_geoportal/views/theme.py +97 -63
  77. c2cgeoportal_geoportal/views/tinyowsproxy.py +3 -12
  78. c2cgeoportal_geoportal/views/vector_tiles.py +1 -1
  79. {c2cgeoportal_geoportal-2.7.1.156.dist-info → c2cgeoportal_geoportal-2.8.1.180.dist-info}/METADATA +21 -15
  80. {c2cgeoportal_geoportal-2.7.1.156.dist-info → c2cgeoportal_geoportal-2.8.1.180.dist-info}/RECORD +96 -90
  81. {c2cgeoportal_geoportal-2.7.1.156.dist-info → c2cgeoportal_geoportal-2.8.1.180.dist-info}/entry_points.txt +1 -0
  82. tests/__init__.py +3 -2
  83. tests/test_cachebuster.py +3 -3
  84. tests/test_caching.py +7 -7
  85. tests/test_checker.py +1 -1
  86. tests/test_decimaljson.py +1 -1
  87. tests/test_headerstween.py +1 -1
  88. tests/test_i18n.py +1 -1
  89. tests/test_init.py +14 -15
  90. tests/test_locale_negociator.py +4 -4
  91. tests/test_mapserverproxy_route_predicate.py +1 -2
  92. tests/test_raster.py +15 -15
  93. tests/test_wmstparsing.py +10 -10
  94. tests/xmlstr.py +1 -3
  95. c2cgeoportal_geoportal/scaffolds/advance_create/{{cookiecutter.project}}/geoportal/tools/extract-messages.js +0 -41
  96. {c2cgeoportal_geoportal-2.7.1.156.dist-info → c2cgeoportal_geoportal-2.8.1.180.dist-info}/WHEEL +0 -0
  97. {c2cgeoportal_geoportal-2.7.1.156.dist-info → c2cgeoportal_geoportal-2.8.1.180.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,26 @@
1
+ # This file is used by the acceptance tests to have a local database.
2
+
3
+ version: '2.3'
4
+
5
+ volumes:
6
+ postgresql_data:
7
+
8
+ services:
9
+ config: &db-config
10
+ environment:
11
+ - PGHOST=db
12
+ - PGHOST_SLAVE=db
13
+ - PGSSLMODE=prefer
14
+ geoportal: *db-config
15
+ # geoportal-advance: *db-config
16
+ tools: *db-config
17
+ alembic: *db-config
18
+ # alembic-advance: *db-config
19
+ # webpack_dev_server: *db-config
20
+
21
+ db:
22
+ extends:
23
+ file: docker-compose-lib.yaml
24
+ service: db
25
+ volumes:
26
+ - postgresql_data:/var/lib/postgresql/data
@@ -1,4 +1,5 @@
1
- ---
1
+ # This file is managed by c2cgeoportal, it contains the default services configuration
2
+
2
3
  version: '2.3'
3
4
 
4
5
  services:
@@ -64,9 +65,11 @@ services:
64
65
  - AZURE_STORAGE_SAS_TOKEN
65
66
  - TILEGENERATION_AZURE_CONTAINER
66
67
  - RASTER_BASE_PATH
68
+ - DISABLE_HAPROXY_LOGGING
69
+ - HAPROXY_LOGGING_OPTIONS
67
70
 
68
71
  print:
69
- image: camptocamp/mapfish_print:3.28
72
+ image: camptocamp/mapfish_print:3.30
70
73
  user: www-data
71
74
  restart: unless-stopped
72
75
  environment:
@@ -74,12 +77,26 @@ services:
74
77
  - PGOPTIONS
75
78
 
76
79
  mapserver:
77
- image: camptocamp/mapserver:7.6-gdal3.7
80
+ image: camptocamp/mapserver:8.0-gdal3.7
78
81
  user: www-data
79
82
  restart: unless-stopped
80
83
  entrypoint: []
81
84
  environment:
82
85
  - PGOPTIONS
86
+ - MAPSERVER_CONFIG_FILE=/etc/mapserver/mapserver.conf
87
+ - AWS_ACCESS_KEY_ID
88
+ - AWS_SECRET_ACCESS_KEY
89
+ - AWS_DEFAULT_REGION
90
+ - AWS_S3_ENDPOINT
91
+ - AZURE_STORAGE_CONNECTION_STRING
92
+ - AZURE_STORAGE_ACCOUNT
93
+ - AZURE_STORAGE_ACCESS_TOKEN
94
+ - AZURE_STORAGE_ACCESS_KEY
95
+ - AZURE_STORAGE_SAS_TOKEN
96
+ - CPL_VSIL_CURL_USE_CACHE
97
+ - CPL_VSIL_CURL_CACHE_SIZE
98
+ - CPL_VSIL_CURL_USE_HEAD
99
+ - GDAL_DISABLE_READDIR_ON_OPEN
83
100
 
84
101
  qgisserver:
85
102
  image: camptocamp/geomapfish-qgisserver:gmf${GEOMAPFISH_MAIN_VERSION}-qgis${QGIS_VERSION}
@@ -106,30 +123,26 @@ services:
106
123
  - CPL_VSIL_CURL_CACHE_SIZE
107
124
  - CPL_VSIL_CURL_USE_HEAD
108
125
  - GDAL_DISABLE_READDIR_ON_OPEN
109
- - QGIS_SERVER_LOG_LEVEL=2
126
+ - QGIS_SERVER_LOG_LEVEL
110
127
  - QGIS_AUTH_DB_DIR_PATH
111
128
  - QGIS_SERVER_IGNORE_BAD_LAYERS
112
129
  - QGIS_SERVER_DISABLE_GETPRINT
113
130
  - PGSERVICEFILE
114
- - LOG_LEVEL=INFO
131
+ - LOG_LEVEL=${QGIS_LOG_LEVEL}
115
132
  - LOG_TYPE
116
133
  - C2CGEOPORTAL_LOG_LEVEL
117
134
  - SQL_LOG_LEVEL
118
135
  - OTHER_LOG_LEVEL
119
136
  - GEOMAPFISH_ACCESSCONTROL_BASE_URL=${QGISSERVER_URL}
120
- - QGIS_SERVER_TRUST_LAYER_METADATA=TRUE
121
- - QGIS_SERVER_PARALLEL_RENDERING=FALSE
122
- - MAX_CACHE_LAYERS=100
123
- - QGIS_SERVER_IGNORE_BAD_LAYERS=TRUE
124
- - QGIS_SERVER_CACHE_SIZE=60 # MB
125
- - QGIS_SERVER_WMS_MAX_HEIGHT=5000
126
- - QGIS_SERVER_WMS_MAX_WIDTH=5000
127
- - QGIS_SERVER_API_WFS3_MAX_LIMIT=10000
128
- - QGIS_SERVER_DISABLE_GETPRINT=TRUE
129
- - QGIS_SERVER_LANDING_PAGE_PROJECTS_DIRECTORIES=/etc/qgisserver/
130
- - QGIS_SERVER_OVERRIDE_SYSTEM_LOCALE=fr
131
- - QGIS_AUTH_DB_DIR_PATH=/etc/qgisserver/
132
- - PGSERVICEFILE=/etc/qgisserver/pg_service.conf
137
+ - QGIS_SERVER_TRUST_LAYER_METADATA
138
+ - QGIS_SERVER_PARALLEL_RENDERING
139
+ - MAX_CACHE_LAYERS
140
+ - QGIS_SERVER_CACHE_SIZE
141
+ - QGIS_SERVER_WMS_MAX_HEIGHT
142
+ - QGIS_SERVER_WMS_MAX_WIDTH
143
+ - QGIS_SERVER_API_WFS3_MAX_LIMIT
144
+ - QGIS_SERVER_LANDING_PAGE_PROJECTS_DIRECTORIES
145
+ - QGIS_SERVER_OVERRIDE_SYSTEM_LOCALE
133
146
 
134
147
  tinyows:
135
148
  image: camptocamp/tinyows:master
@@ -137,7 +150,7 @@ services:
137
150
  restart: unless-stopped
138
151
 
139
152
  redis:
140
- image: &redis-image redis:6
153
+ image: &redis-image redis:7.0
141
154
  user: www-data
142
155
  restart: unless-stopped
143
156
  command:
@@ -198,6 +211,14 @@ services:
198
211
  - C2C_PROFILER_PATH
199
212
  - C2C_PROFILER_MODULES
200
213
  - C2C_SECRET
214
+ - C2C_AUTH_GITHUB_REPOSITORY
215
+ - C2C_AUTH_GITHUB_ACCESS_TYPE
216
+ - C2C_AUTH_GITHUB_CLIENT_ID
217
+ - C2C_AUTH_GITHUB_CLIENT_SECRET
218
+ - C2C_AUTH_GITHUB_SCOPE
219
+ - C2C_AUTH_GITHUB_SECRET
220
+ - C2C_AUTH_GITHUB_PROXY_URL
221
+ - C2C_USE_SESSION=true
201
222
  - TILECLOUD_LOG_LEVEL
202
223
  - TILECLOUD_CHAIN_LOG_LEVEL
203
224
  - C2CWSGI_LOG_LEVEL
@@ -256,6 +277,10 @@ services:
256
277
  - AZURE_STORAGE_ACCESS_TOKEN
257
278
  - AZURE_STORAGE_ACCESS_KEY
258
279
  - AZURE_STORAGE_SAS_TOKEN
280
+ - CPL_VSIL_CURL_USE_CACHE
281
+ - CPL_VSIL_CURL_CACHE_SIZE
282
+ - CPL_VSIL_CURL_USE_HEAD
283
+ - GDAL_DISABLE_READDIR_ON_OPEN
259
284
  - VISIBLE_WEB_HOST
260
285
  - VISIBLE_WEB_PROTOCOL
261
286
  - AUTHTKT_TIMEOUT
@@ -291,6 +316,13 @@ services:
291
316
  - C2C_PROFILER_MODULES
292
317
  - C2C_DEBUG_VIEW_ENABLED=TRUE
293
318
  - C2C_SECRET
319
+ - C2C_AUTH_GITHUB_REPOSITORY
320
+ - C2C_AUTH_GITHUB_ACCESS_TYPE
321
+ - C2C_AUTH_GITHUB_CLIENT_ID
322
+ - C2C_AUTH_GITHUB_CLIENT_SECRET
323
+ - C2C_AUTH_GITHUB_SCOPE
324
+ - C2C_AUTH_GITHUB_SECRET
325
+ - C2C_AUTH_GITHUB_PROXY_URL
294
326
  - LOG_LEVEL
295
327
  - C2CGEOPORTAL_LOG_LEVEL
296
328
  - SQL_LOG_LEVEL
@@ -321,7 +353,6 @@ services:
321
353
  volumes:
322
354
  - .:/src
323
355
  environment:
324
- - PGSCHEMA
325
356
  # From geoportal
326
357
  - DEVELOPMENT
327
358
  - VISIBLE_ENTRY_POINT
@@ -334,6 +365,7 @@ services:
334
365
  - PGPASSWORD
335
366
  - PGDATABASE
336
367
  - PGSSLMODE
368
+ - PGSCHEMA
337
369
  - PGSCHEMA_STATIC
338
370
  - PGOPTIONS
339
371
  - AWS_ACCESS_KEY_ID
@@ -379,7 +411,6 @@ services:
379
411
  - C2C_PROFILER_PATH
380
412
  - C2C_PROFILER_MODULES
381
413
  - C2C_DEBUG_VIEW_ENABLED=TRUE
382
- - C2C_SECRET
383
414
  - LOG_LEVEL
384
415
  - C2CGEOPORTAL_LOG_LEVEL
385
416
  - SQL_LOG_LEVEL
@@ -408,7 +439,6 @@ services:
408
439
  - PGPASSWORD
409
440
  - PGDATABASE
410
441
  - PGSSLMODE
411
- - PGSCHEMA
412
442
  - PGSCHEMA_STATIC
413
443
  - LOG_TYPE
414
444
 
@@ -418,7 +448,7 @@ services:
418
448
  build: *geoportal-build
419
449
 
420
450
  front:
421
- image: haproxy:2.3
451
+ image: haproxy:2.6.7
422
452
  restart: unless-stopped
423
453
  volumes:
424
454
  - ${FRONT_LOG_DIRECTORY}:/dev/log:rw
@@ -466,9 +496,6 @@ services:
466
496
  db:
467
497
  image: camptocamp/postgres:${POSTGRES_TAG}
468
498
  environment:
469
- - PGUSER
470
- - PGPASSWORD
471
- - PGDATABASE
472
499
  - POSTGRES_PASSWORD=${PGPASSWORD}
473
500
  - POSTGRES_DB=${PGDATABASE}
474
501
  - POSTGRES_USER=${PGUSER}
@@ -0,0 +1,23 @@
1
+ # This file is used to run QGIS client from the Docker image
2
+
3
+ version: '2'
4
+
5
+ services:
6
+ qgis:
7
+ extends:
8
+ file: docker-compose-lib.yaml
9
+ service: qgisserver
10
+ image: camptocamp/qgis-server:${QGIS_VERSION}-desktop
11
+ user: root
12
+ volumes_from:
13
+ - config
14
+ volumes:
15
+ - ${HOME}:${HOME}
16
+ - /tmp/.X11-unix:/tmp/.X11-unix
17
+ environment:
18
+ - PGSERVICEFILE=/etc/qgisserver/pg_service.conf
19
+ - DISPLAY=unix${DISPLAY}
20
+ - QGIS_DEBUG=0
21
+ - QGIS_LOG_FILE=/dev/null
22
+ - PGOPTIONS=-c statement_timeout=30000
23
+ - AZURE_STORAGE_CONNECTION_STRING
@@ -1,4 +1,3 @@
1
- ---
2
1
  # This file can be renamed as `docker-compose.override.yaml` and uncomment the desired lines for
3
2
  # development. The file `docker-compose.override.yaml` is ignored by Git by default.
4
3
 
@@ -1,5 +1,4 @@
1
- ---
2
- # The project Docker compose file for development.
1
+ # The project Docker compose file.
3
2
 
4
3
  version: '2.3'
5
4
 
@@ -23,6 +22,7 @@ services:
23
22
  extends:
24
23
  file: docker-compose-lib.yaml
25
24
  service: mapserver
25
+
26
26
  volumes_from:
27
27
  - config:ro
28
28
  volumes:
@@ -107,7 +107,7 @@ services:
107
107
  volumes_from:
108
108
  - config:ro
109
109
 
110
- # Rich image for project development with e.-g. vim, tree, awscli, psql, ...
110
+ # Rich image for project development with e.-g. vim, psql, ...
111
111
  tools:
112
112
  extends:
113
113
  file: docker-compose-lib.yaml
@@ -30,6 +30,11 @@ DISABLE_LOCAL=
30
30
  # For backward compatibility
31
31
  DISABLE_MUTUALIZED_PRINT=#
32
32
  DISABLE_LOCAL_PRINT=
33
+ # Set DISABLE_HAPROXY_LOGGING to # to disable logging
34
+ DISABLE_HAPROXY_LOGGING=
35
+ HAPROXY_LOGGING_OPTIONS="log global
36
+ option httplog
37
+ option dontlognull"
33
38
 
34
39
  GEOPORTAL_INTERNAL_URL=http://geoportal:8080
35
40
  GEOPORTAL_INTERNAL_HOST=geoportal
@@ -71,12 +76,26 @@ TILECLOUD_LOG_LEVEL=INFO
71
76
  TILECLOUD_CHAIN_LOG_LEVEL=INFO
72
77
  C2CWSGIUTILS_LOG_LEVEL=INFO
73
78
  LOG_TYPE=console
79
+
80
+ # QGIS
81
+ QGIS_LOG_LEVEL=INFO # For the plugin
82
+ QGIS_SERVER_LOG_LEVEL=2
74
83
  CPL_VSIL_CURL_USE_CACHE=TRUE
75
84
  CPL_VSIL_CURL_CACHE_SIZE=128000000
76
85
  CPL_VSIL_CURL_USE_HEAD=FALSE
77
86
  GDAL_DISABLE_READDIR_ON_OPEN=TRUE
78
87
  QGIS_AUTH_DB_DIR_PATH=/etc/qgisserver/
79
- QGIS_SERVER_IGNORE_BAD_LAYERS=true
80
- QGIS_SERVER_DISABLE_GETPRINT=true
88
+ QGIS_SERVER_IGNORE_BAD_LAYERS=TRUE
89
+ QGIS_SERVER_DISABLE_GETPRINT=TRUE
81
90
  PGSERVICEFILE=/etc/qgisserver/pg_service.conf
91
+ QGIS_SERVER_TRUST_LAYER_METADATA=TRUE
92
+ QGIS_SERVER_PARALLEL_RENDERING=FALSE
93
+ MAX_CACHE_LAYERS=100
94
+ QGIS_SERVER_CACHE_SIZE=60 # MB
95
+ QGIS_SERVER_WMS_MAX_HEIGHT=5000
96
+ QGIS_SERVER_WMS_MAX_WIDTH=5000
97
+ QGIS_SERVER_API_WFS3_MAX_LIMIT=10000
98
+ QGIS_SERVER_LANDING_PAGE_PROJECTS_DIRECTORIES=/etc/qgisserver/
99
+ QGIS_SERVER_OVERRIDE_SYSTEM_LOCALE=fr
100
+
82
101
  FRONT_LOG_DIRECTORY=/dev/log
@@ -58,3 +58,12 @@ C2C_REDIS_URL=redis://redis:6379/0
58
58
 
59
59
  # Set a strong password here for authentication on technical interfaces behind path /c2c
60
60
  C2C_SECRET=
61
+ # Or use connection via GitHub, see: https://camptocamp.github.io/c2cgeoportal/{{cookiecutter.geomapfish_main_version}}/integrator/c2cwsgiutils.html#authentication
62
+ C2C_AUTH_GITHUB_REPOSITORY=camptocamp/{{cookiecutter.package}}
63
+ C2C_AUTH_GITHUB_ACCESS_TYPE=admin
64
+ C2C_AUTH_GITHUB_CLIENT_ID=210aefe26259de1e9532
65
+ #C2C_AUTH_GITHUB_CLIENT_SECRET=<github OAuth application client secret>
66
+ C2C_AUTH_GITHUB_SCOPE=repo
67
+ #C2C_AUTH_GITHUB_SECRET=<secret>
68
+ #C2C_AUTH_GITHUB_PROXY_URL=https://geoservicies.camptocamp.com/redirect
69
+ C2C_USE_SESSION=true
@@ -2,17 +2,31 @@
2
2
  extends: CONST_vars.yaml
3
3
 
4
4
  vars:
5
+ # To use an other SRID you should change:
6
+ # - vars.srid
7
+ # - vars.alternate_projections
8
+ # - vars.resolutions
9
+ # - vars.extent
10
+ # - vars.tilesOrigin
11
+ # - vars.interfaces_config.default.constants.gmfOptions.view.center
12
+ # - vars.interfaces_config.default.constants.gmfOptions.wmtsTopLeft
13
+ # - vars.interfaces_config.default.constants.gmfVectorTilesOptions.tileGrid.origin
5
14
  srid: &srid {{cookiecutter.srid}}
6
15
 
16
+ main_ogc_server: source for image/png
17
+
7
18
  alternate_projections: &alternate_projections
8
19
  - EPSG:4326
9
20
  - EPSG:{srid}
10
21
  - EPSG:21781
11
22
 
12
- resolutions: &resolutions [250, 100, 50, 20, 10, 5, 2, 1, 0.5, 0.25, 0.1, 0.05]
23
+ resolutions: &resolutions [250, 100, 50, 20, 10, 5, 2.5, 1, 0.5, 0.25, 0.1, 0.05]
13
24
 
14
25
  extent: &extent [2420000, 1030000, 2900000, 1350000]
15
26
 
27
+ # Origin of the tiles [left, top]
28
+ tilesOrigin: &tilesOrigin [2420000, 1350000]
29
+
16
30
  # The application's default language. This is the language used by
17
31
  # the application if no specific language is specified in the URLs.
18
32
  # This also defines the language used for the text search.
@@ -30,7 +44,7 @@ vars:
30
44
  constants:
31
45
  defaultTheme: Demo
32
46
  defaultLang: '{default_locale_name}'
33
- gmfOptions:
47
+ gmfOptions: &gmfOptions
34
48
  map: {}
35
49
  view: &view
36
50
  projection: EPSG:{srid}
@@ -39,6 +53,8 @@ vars:
39
53
  resolutions: *resolutions
40
54
  extent: *extent
41
55
  geolocalisation: True
56
+ # Used to get pixel perfect render on WMTS layers [left, top]
57
+ wmtsTopLeft: *tilesOrigin
42
58
  gmfElevationOptions:
43
59
  layers: [aster, srtm]
44
60
  gmfSearchOptions:
@@ -49,7 +65,7 @@ vars:
49
65
  projection: EPSG:{srid}
50
66
  tileGrid:
51
67
  extent: *extent
52
- origin: [2420000, 1350000]
68
+ origin: *tilesOrigin
53
69
  resolutions: *resolutions
54
70
  routes:
55
71
  fulltextsearchUrl:
@@ -60,12 +76,12 @@ vars:
60
76
  desktop:
61
77
  constants:
62
78
  gmfOptions:
79
+ <<: *gmfOptions
63
80
  map:
64
81
  maxTilesLoading: 128
65
82
  view:
66
83
  <<: *view
67
84
  constrainResolution: True
68
- geolocalisation: True
69
85
  gmfExternalOGCServers:
70
86
  - name: swisstopo WMS
71
87
  type: WMS
@@ -103,11 +119,10 @@ vars:
103
119
  mobile:
104
120
  constants:
105
121
  gmfOptions:
106
- map: {}
122
+ <<: *gmfOptions
107
123
  view:
108
124
  <<: *view
109
125
  autoRotate: True
110
- geolocalisation: True
111
126
  gmfMobileMeasurePointOptions:
112
127
  rasterLayers:
113
128
  - name: aster
@@ -115,6 +130,10 @@ vars:
115
130
  - name: srtm
116
131
  unit: m
117
132
 
133
+ iframe_api:
134
+ constants:
135
+ gmfOptions: *gmfOptions
136
+
118
137
  api:
119
138
  constants:
120
139
  # The resolutions list.
@@ -162,11 +181,8 @@ vars:
162
181
  geometry_validation: True
163
182
 
164
183
  api:
165
- {}
166
- # The OGC server used by the API.
167
- # ogc_server: Main PNG
168
184
  # The name of the API in JavaScript
169
- # name: <package>
185
+ name: '{{cookiecutter.package}}'
170
186
 
171
187
  # The "vector tiles web service" configuration. See the "vector tiles"
172
188
  # chapter in the integrator documentation.
@@ -283,17 +299,22 @@ vars:
283
299
  std:
284
300
  # Standalone version
285
301
  backend: c2cgeoportal.hybrid
286
- arguments:
302
+ arguments: &redis-cache-arguments
287
303
  host: '{REDIS_HOST}'
288
304
  port: '{REDIS_PORT}'
289
305
  db: '{REDIS_DB}'
290
306
  # Kubernetes version
291
- # arguments:
307
+ # arguments: &redis-cache-arguments
292
308
  # sentinels:
293
309
  # - - '{REDIS_HOST}'
294
310
  # - '{REDIS_PORT}'
295
311
  # connection_kwargs:
296
312
  # db: '{REDIS_DB}'
313
+ ogc-server:
314
+ # Standalone version
315
+ backend: c2cgeoportal.hybrid
316
+ # All versions
317
+ arguments: *redis-cache-arguments
297
318
 
298
319
  # This parameter set the list of hosts allowed to use the iframe api.
299
320
  # 'self' will block all external usage, you must add additional hosts separated by space.
@@ -328,6 +349,7 @@ update_paths:
328
349
  - api
329
350
  - authorized_referers
330
351
  - cache.std.arguments
352
+ - cache.ogc-server.arguments
331
353
  - cache.obj
332
354
  - check_collector.disabled
333
355
  - check_collector.hosts
@@ -368,10 +390,12 @@ update_paths:
368
390
  - interfaces_config.default.dynamic_constants
369
391
  - interfaces_config.default.static
370
392
  - interfaces_config.default.routes.fulltextsearchUrl
371
- - interfaces_config.desktop.constants
393
+ - interfaces_config.desktop.constants.gmfOptions.view
394
+ - interfaces_config.desktop.constants.gmfPrintOptions
372
395
  - interfaces_config.desktop.routes
396
+ - interfaces_config.mobile.constants.gmfOptions.view
373
397
  - interfaces_config.mobile.constants.gmfMobileMeasurePointOptions
374
- - interfaces_config.iframe_api.constants
398
+ - interfaces_config.iframe_api.constants.gmfOptions.view
375
399
  - interfaces_config.api.constants
376
400
  - interfaces_config.api.routes.searchUrl
377
401
  - interfaces_theme
@@ -20,7 +20,7 @@ ISO3 String(3) ISO 3166-1 Alpha-3 Country Code
20
20
  UN Short Integer(3) ISO 3166-1 Numeric-3 Country Code
21
21
  NAME String(50) Name of country/area
22
22
  AREA Long Integer(7) Land area, FAO Statistics (2002)
23
- POP2005 Double(10,0) Population, World Polulation Prospects (2005)
23
+ POP2005 Double(10,0) Population, World Population Prospects (2005)
24
24
  REGION Short Integer(3) Macro geographical (continental region), UN Statistics
25
25
  SUBREGION Short Integer(3) Geogrpahical sub-region, UN Statistics
26
26
  LON FLOAT (7,3) Longitude
@@ -36,7 +36,7 @@ CHANGELOG VERSION 0.3 - 30 July 2008
36
36
 
37
37
  CHANGELOG VERSION 0.2 - 1 April 2008
38
38
 
39
- - Made new ZIP archieves. No change in dataset.
39
+ - Made new ZIP archives. No change in dataset.
40
40
 
41
41
 
42
42
  CHANGELOG VERSION 0.1 - 13 March 2008
@@ -0,0 +1,15 @@
1
+ # Documentation: https://mapserver.org/mapfile/config.html
2
+
3
+ CONFIG
4
+
5
+ ENV
6
+ MS_MAPFILE "/etc/mapserver/mapserver.map"
7
+ END
8
+
9
+ #
10
+ # Map aliases
11
+ #
12
+ MAPS
13
+ END
14
+
15
+ END
@@ -35,7 +35,7 @@ MAP
35
35
  STATUS ON
36
36
 
37
37
  FONTSET "fonts.conf"
38
- #SYMBOLSET "symbole.sym"
38
+ #SYMBOLSET "symbol.sym"
39
39
 
40
40
  CONFIG "CPL_VSIL_CURL_USE_CACHE" "TRUE"
41
41
  CONFIG "CPL_VSIL_CURL_CACHE_SIZE" "128000000"
@@ -70,10 +70,9 @@ MAP
70
70
  "wms_abstract" "changeme"
71
71
  "ows_onlineresource" "${VISIBLE_WEB_PROTOCOL}://${VISIBLE_WEB_HOST}${VISIBLE_ENTRY_POINT}mapserv_proxy?ogcserver=source%20for%20image%2Fpng"
72
72
  "wms_srs" "EPSG:{{cookiecutter.srid}}"
73
- "wms_encoding" "UTF-8"
74
73
  "wms_enable_request" "*"
75
74
  "wfs_enable_request" "!*"
76
- "wfs_encoding" "UTF-8"
75
+ "wms_allow_getmap_without_styles" "true"
77
76
  END
78
77
  END
79
78
  LEGEND
@@ -2,6 +2,7 @@
2
2
  <!-- Created with Jaspersoft Studio version 6.6.0.final using JasperReports Library version 6.6.0 -->
3
3
  <jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="gmf16_A3_landscape" pageWidth="1191" pageHeight="842" orientation="Landscape" columnWidth="1151" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="2646b6ef-0cc4-4852-b6e9-8c4dc54c2e84">
4
4
  <parameter name="title" class="java.lang.String"/>
5
+ <parameter name="username" class="java.lang.String"/>
5
6
  <parameter name="comments" class="java.lang.String"/>
6
7
  <parameter name="debug" class="java.lang.Boolean"/>
7
8
  <parameter name="mapSubReport" class="java.lang.String"/>
@@ -197,6 +198,10 @@ $P{mapContext}.getScale().getDenominator()).replace(",","\'")]]></textFieldExpre
197
198
  <textElement verticalAlignment="Bottom"/>
198
199
  <textFieldExpression><![CDATA[" / " + $V{PAGE_NUMBER}]]></textFieldExpression>
199
200
  </textField>
201
+ <textField>
202
+ <reportElement x="0" y="15" width="300" height="15" uuid="f2fb034e-297f-4107-a5f5-da84722deb70"/>
203
+ <textFieldExpression><![CDATA[$P{username}]]></textFieldExpression>
204
+ </textField>
200
205
  </band>
201
206
  </pageFooter>
202
207
  </jasperReport>
@@ -2,6 +2,7 @@
2
2
  <!-- Created with Jaspersoft Studio version 6.6.0.final using JasperReports Library version 6.6.0 -->
3
3
  <jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="gmf16_A3_portrait" pageWidth="842" pageHeight="1191" columnWidth="802" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20" uuid="041e6c80-82d5-4055-a560-dd402f39361f">
4
4
  <parameter name="title" class="java.lang.String"/>
5
+ <parameter name="username" class="java.lang.String"/>
5
6
  <parameter name="comments" class="java.lang.String"/>
6
7
  <parameter name="debug" class="java.lang.Boolean"/>
7
8
  <parameter name="mapSubReport" class="java.lang.String"/>
@@ -175,6 +176,10 @@
175
176
  <textElement verticalAlignment="Bottom"/>
176
177
  <textFieldExpression><![CDATA[" / " + $V{PAGE_NUMBER}]]></textFieldExpression>
177
178
  </textField>
179
+ <textField>
180
+ <reportElement x="0" y="15" width="300" height="15" uuid="f2fb034e-297f-4107-a5f5-da84722deb70"/>
181
+ <textFieldExpression><![CDATA[$P{username}]]></textFieldExpression>
182
+ </textField>
178
183
  </band>
179
184
  </pageFooter>
180
185
  </jasperReport>
@@ -4,6 +4,7 @@
4
4
  <property name="com.jaspersoft.studio.unit." value="pixel"/>
5
5
  <property name="com.jaspersoft.studio.data.defaultdataadapter" value="One Empty Record"/>
6
6
  <parameter name="title" class="java.lang.String"/>
7
+ <parameter name="username" class="java.lang.String"/>
7
8
  <parameter name="comments" class="java.lang.String"/>
8
9
  <parameter name="debug" class="java.lang.Boolean"/>
9
10
  <parameter name="mapSubReport" class="java.lang.String"/>
@@ -190,6 +191,10 @@
190
191
  <reportElement x="0" y="1" width="300" height="14" uuid="dc102ea9-973f-4717-a872-0d24d4de1e17"/>
191
192
  <textFieldExpression><![CDATA[$R{info}]]></textFieldExpression>
192
193
  </textField>
194
+ <textField>
195
+ <reportElement x="0" y="15" width="300" height="15" uuid="f2fb034e-297f-4107-a5f5-da84722deb70"/>
196
+ <textFieldExpression><![CDATA[$P{username}]]></textFieldExpression>
197
+ </textField>
193
198
  </band>
194
199
  </pageFooter>
195
200
  </jasperReport>
@@ -1,6 +1,7 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <jasperReport xmlns="http://jasperreports.sourceforge.net/jasperreports" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://jasperreports.sourceforge.net/jasperreports http://jasperreports.sourceforge.net/xsd/jasperreport.xsd" name="gmf16_A4_portrait" pageWidth="595" pageHeight="842" columnWidth="555" leftMargin="20" rightMargin="20" topMargin="20" bottomMargin="20">
3
3
  <parameter name="title" class="java.lang.String"/>
4
+ <parameter name="username" class="java.lang.String"/>
4
5
  <parameter name="comments" class="java.lang.String"/>
5
6
  <parameter name="debug" class="java.lang.Boolean"/>
6
7
  <parameter name="mapSubReport" class="java.lang.String"/>
@@ -160,6 +161,10 @@
160
161
  <textElement verticalAlignment="Bottom"/>
161
162
  <textFieldExpression><![CDATA[" / " + $V{PAGE_NUMBER}]]></textFieldExpression>
162
163
  </textField>
164
+ <textField>
165
+ <reportElement x="0" y="15" width="300" height="15"/>
166
+ <textFieldExpression><![CDATA[$P{username}]]></textFieldExpression>
167
+ </textField>
163
168
  </band>
164
169
  </pageFooter>
165
170
  </jasperReport>
@@ -18,6 +18,9 @@ templates:
18
18
  title:
19
19
  !string &title
20
20
  default: ""
21
+ username:
22
+ !string &username
23
+ default: ""
21
24
  comments:
22
25
  !string &comments
23
26
  default: ""
@@ -121,6 +124,7 @@ templates:
121
124
  reportTemplate: A4_Landscape.jrxml
122
125
  attributes:
123
126
  title: *title
127
+ username: *username
124
128
  comments: *comments
125
129
  debug: *debug
126
130
  legend: *legend
@@ -138,6 +142,7 @@ templates:
138
142
  reportTemplate: A3_Portrait.jrxml
139
143
  attributes:
140
144
  title: *title
145
+ username: *username
141
146
  comments: *comments
142
147
  debug: *debug
143
148
  legend: *legend
@@ -155,6 +160,7 @@ templates:
155
160
  reportTemplate: A3_Landscape.jrxml
156
161
  attributes:
157
162
  title: *title
163
+ username: *username
158
164
  comments: *comments
159
165
  debug: *debug
160
166
  legend: *legend
@@ -1,3 +1,7 @@
1
1
  [tool.black]
2
2
  line-length = 110
3
3
  target-version = ['py38']
4
+
5
+ [tool.isort]
6
+ profile = "black"
7
+ line_length = 110
@@ -3,11 +3,9 @@
3
3
  #
4
4
  # Mostly useful in a Docker environment.
5
5
 
6
- for ini in *alembic*.ini
7
- do
8
- if [[ -f $ini ]]
9
- then
6
+ for ini in *alembic*.ini; do
7
+ if [[ -f "$ini" ]]; then
10
8
  echo "$ini ==========================="
11
- alembic -c $ini upgrade head
9
+ alembic -c "$ini" upgrade head
12
10
  fi
13
11
  done