Tony CHEMIT pushed to branch develop at ultreiaio / ird-observe
Commits:
-
65625bbb
by Tony Chemit at 2022-04-24T11:26:10+02:00
-
39d09581
by Tony Chemit at 2022-04-24T11:26:22+02:00
-
12bb3774
by Tony Chemit at 2022-04-24T11:59:07+02:00
-
762fb804
by Tony Chemit at 2022-04-24T12:42:47+02:00
9 changed files:
- client/core/src/main/java/fr/ird/observe/client/datasource/presets/RemotePresetsUI.jaxx
- client/datasource/editor/api/src/main/i18n/getters/java.getter
- core/services/i18n/src/main/i18n/translations/services_en_GB.properties
- core/services/i18n/src/main/i18n/translations/services_es_ES.properties
- core/services/i18n/src/main/i18n/translations/services_fr_FR.properties
- server/configuration/src/main/java/fr/ird/observe/server/configuration/ServerResources.java
- server/configuration/src/test/java/fr/ird/observe/dto/server/ServerModelTest.java
- + server/configuration/src/test/resources/META-INF/configuration/security-2284-2.yml
- + server/configuration/src/test/resources/META-INF/configuration/security-2284.yml
Changes:
| ... | ... | @@ -28,20 +28,20 @@ |
| 28 | 28 | <RemotePresetsUIModel id="model" initializer="getContextValue(RemotePresetsUIModel.class)"/>
|
| 29 | 29 | |
| 30 | 30 | <JTabbedPane id='tabs' constraints='BorderLayout.CENTER'>
|
| 31 | - <tab id='remoteTab' title="observe.ui.datasource.storage.remote.presets.title">
|
|
| 32 | - <JPanel id="remotePanel" layout="{new BorderLayout()}">
|
|
| 33 | - <JScrollPane id='remoteConfigurationsPane' constraints='BorderLayout.CENTER'>
|
|
| 34 | - <JList id='remoteConfigurations' genericType="RemoteDataSourceConfiguration"/>
|
|
| 31 | + <tab id='serverTab' title="observe.ui.datasource.storage.server.presets.title">
|
|
| 32 | + <JPanel id="serverPanel" layout="{new BorderLayout()}">
|
|
| 33 | + <JScrollPane id='serverConfigurationsPane' constraints='BorderLayout.CENTER'>
|
|
| 34 | + <JList id='serverConfigurations' genericType="ServerDataSourceConfiguration"/>
|
|
| 35 | 35 | </JScrollPane>
|
| 36 | - <JPanel id="remoteContentPanel" layout="{new CardLayout()}" constraints='BorderLayout.SOUTH' border='{new TitledBorder("")}'>
|
|
| 37 | - <JLabel id="noRemoteSelected" constraints='"empty"'/>
|
|
| 38 | - <Table id="remoteForm" constraints='"form"' fill="both">
|
|
| 36 | + <JPanel id="serverContentPanel" layout="{new CardLayout()}" constraints='BorderLayout.SOUTH' border='{new TitledBorder("")}'>
|
|
| 37 | + <JLabel id="noServerSelected" constraints='"empty"'/>
|
|
| 38 | + <Table id="serverForm" constraints='"form"' fill="both">
|
|
| 39 | 39 | <row>
|
| 40 | 40 | <cell anchor='west'>
|
| 41 | 41 | <JLabel text='observe.ui.datasource.storage.remote.name'/>
|
| 42 | 42 | </cell>
|
| 43 | 43 | <cell weightx='1' fill="both" anchor='east'>
|
| 44 | - <JTextField id="remoteName" onKeyReleased="handler.setRemoteModified(event);"/>
|
|
| 44 | + <JTextField id="serverName" onKeyReleased="handler.setServerModified(event);"/>
|
|
| 45 | 45 | </cell>
|
| 46 | 46 | </row>
|
| 47 | 47 | <row>
|
| ... | ... | @@ -49,7 +49,7 @@ |
| 49 | 49 | <JLabel text='observe.ui.datasource.storage.remote.url'/>
|
| 50 | 50 | </cell>
|
| 51 | 51 | <cell weightx='1' fill="both" anchor='east'>
|
| 52 | - <JTextField id="remoteUrl" onKeyReleased="handler.setRemoteModified(event);"/>
|
|
| 52 | + <JTextField id="serverUrl" onKeyReleased="handler.setServerModified(event);"/>
|
|
| 53 | 53 | </cell>
|
| 54 | 54 | </row>
|
| 55 | 55 | <row>
|
| ... | ... | @@ -57,7 +57,7 @@ |
| 57 | 57 | <JLabel text='observe.ui.datasource.storage.remote.login'/>
|
| 58 | 58 | </cell>
|
| 59 | 59 | <cell weightx='1' fill="both" anchor='east'>
|
| 60 | - <JTextField id="remoteLogin" onKeyReleased="handler.setRemoteModified(event);"/>
|
|
| 60 | + <JTextField id="serverLogin" onKeyReleased="handler.setServerModified(event);"/>
|
|
| 61 | 61 | </cell>
|
| 62 | 62 | </row>
|
| 63 | 63 | <row>
|
| ... | ... | @@ -65,24 +65,27 @@ |
| 65 | 65 | <JLabel text='observe.ui.datasource.storage.remote.password'/>
|
| 66 | 66 | </cell>
|
| 67 | 67 | <cell weightx='1' fill="both" anchor='east'>
|
| 68 | - <JTextField id="remotePassword" onKeyReleased="handler.setRemoteModified(event);"/>
|
|
| 68 | + <JTextField id="serverPassword" onKeyReleased="handler.setServerModified(event);"/>
|
|
| 69 | 69 | </cell>
|
| 70 | 70 | </row>
|
| 71 | 71 | <row>
|
| 72 | - <cell columns='2'>
|
|
| 73 | - <JCheckBox id="remoteUseSsl" onActionPerformed="model.setRemoteModified(true);"/>
|
|
| 72 | + <cell anchor='west'>
|
|
| 73 | + <JLabel id="serverDataBaseLabel" text='observe.ui.datasource.storage.server.dataBase'/>
|
|
| 74 | + </cell>
|
|
| 75 | + <cell weightx='1' fill="both" anchor='east'>
|
|
| 76 | + <JTextField id="serverDataBase" onKeyReleased="handler.setServerModified(event);"/>
|
|
| 74 | 77 | </cell>
|
| 75 | 78 | </row>
|
| 76 | 79 | |
| 77 | 80 | <row>
|
| 78 | 81 | <cell columns='2'>
|
| 79 | - <JPanel id="remoteActions" layout="{new GridLayout(1, 0)}">
|
|
| 80 | - <JButton id="cancelRemoteAction"/>
|
|
| 81 | - <JButton id="resetRemoteAction"/>
|
|
| 82 | - <JButton id="saveRemoteAction"/>
|
|
| 83 | - <JButton id="deleteRemoteAction"/>
|
|
| 84 | - <JButton id="testRemoteAction"/>
|
|
| 85 | - <JButton id="duplicateRemoteAction"/>
|
|
| 82 | + <JPanel id="serverActions" layout="{new GridLayout(1, 0)}">
|
|
| 83 | + <JButton id="cancelServerAction"/>
|
|
| 84 | + <JButton id="resetServerAction"/>
|
|
| 85 | + <JButton id="saveServerAction"/>
|
|
| 86 | + <JButton id="deleteServerAction"/>
|
|
| 87 | + <JButton id="testServerAction"/>
|
|
| 88 | + <JButton id="duplicateServerAction"/>
|
|
| 86 | 89 | </JPanel>
|
| 87 | 90 | </cell>
|
| 88 | 91 | </row>
|
| ... | ... | @@ -90,21 +93,20 @@ |
| 90 | 93 | </JPanel>
|
| 91 | 94 | </JPanel>
|
| 92 | 95 | </tab>
|
| 93 | - <tab id='serverTab' title="observe.ui.datasource.storage.server.presets.title">
|
|
| 94 | - |
|
| 95 | - <JPanel id="serverPanel" layout="{new BorderLayout()}">
|
|
| 96 | - <JScrollPane id='serverConfigurationsPane' constraints='BorderLayout.CENTER'>
|
|
| 97 | - <JList id='serverConfigurations' genericType="ServerDataSourceConfiguration"/>
|
|
| 96 | + <tab id='remoteTab' title="observe.ui.datasource.storage.remote.presets.title">
|
|
| 97 | + <JPanel id="remotePanel" layout="{new BorderLayout()}">
|
|
| 98 | + <JScrollPane id='remoteConfigurationsPane' constraints='BorderLayout.CENTER'>
|
|
| 99 | + <JList id='remoteConfigurations' genericType="RemoteDataSourceConfiguration"/>
|
|
| 98 | 100 | </JScrollPane>
|
| 99 | - <JPanel id="serverContentPanel" layout="{new CardLayout()}" constraints='BorderLayout.SOUTH' border='{new TitledBorder("")}'>
|
|
| 100 | - <JLabel id="noServerSelected" constraints='"empty"'/>
|
|
| 101 | - <Table id="serverForm" constraints='"form"' fill="both">
|
|
| 101 | + <JPanel id="remoteContentPanel" layout="{new CardLayout()}" constraints='BorderLayout.SOUTH' border='{new TitledBorder("")}'>
|
|
| 102 | + <JLabel id="noRemoteSelected" constraints='"empty"'/>
|
|
| 103 | + <Table id="remoteForm" constraints='"form"' fill="both">
|
|
| 102 | 104 | <row>
|
| 103 | 105 | <cell anchor='west'>
|
| 104 | 106 | <JLabel text='observe.ui.datasource.storage.remote.name'/>
|
| 105 | 107 | </cell>
|
| 106 | 108 | <cell weightx='1' fill="both" anchor='east'>
|
| 107 | - <JTextField id="serverName" onKeyReleased="handler.setServerModified(event);"/>
|
|
| 109 | + <JTextField id="remoteName" onKeyReleased="handler.setRemoteModified(event);"/>
|
|
| 108 | 110 | </cell>
|
| 109 | 111 | </row>
|
| 110 | 112 | <row>
|
| ... | ... | @@ -112,7 +114,7 @@ |
| 112 | 114 | <JLabel text='observe.ui.datasource.storage.remote.url'/>
|
| 113 | 115 | </cell>
|
| 114 | 116 | <cell weightx='1' fill="both" anchor='east'>
|
| 115 | - <JTextField id="serverUrl" onKeyReleased="handler.setServerModified(event);"/>
|
|
| 117 | + <JTextField id="remoteUrl" onKeyReleased="handler.setRemoteModified(event);"/>
|
|
| 116 | 118 | </cell>
|
| 117 | 119 | </row>
|
| 118 | 120 | <row>
|
| ... | ... | @@ -120,7 +122,7 @@ |
| 120 | 122 | <JLabel text='observe.ui.datasource.storage.remote.login'/>
|
| 121 | 123 | </cell>
|
| 122 | 124 | <cell weightx='1' fill="both" anchor='east'>
|
| 123 | - <JTextField id="serverLogin" onKeyReleased="handler.setServerModified(event);"/>
|
|
| 125 | + <JTextField id="remoteLogin" onKeyReleased="handler.setRemoteModified(event);"/>
|
|
| 124 | 126 | </cell>
|
| 125 | 127 | </row>
|
| 126 | 128 | <row>
|
| ... | ... | @@ -128,27 +130,23 @@ |
| 128 | 130 | <JLabel text='observe.ui.datasource.storage.remote.password'/>
|
| 129 | 131 | </cell>
|
| 130 | 132 | <cell weightx='1' fill="both" anchor='east'>
|
| 131 | - <JTextField id="serverPassword" onKeyReleased="handler.setServerModified(event);"/>
|
|
| 133 | + <JTextField id="remotePassword" onKeyReleased="handler.setRemoteModified(event);"/>
|
|
| 132 | 134 | </cell>
|
| 133 | 135 | </row>
|
| 134 | 136 | <row>
|
| 135 | - <cell anchor='west'>
|
|
| 136 | - <JLabel id="serverDataBaseLabel" text='observe.ui.datasource.storage.server.dataBase'/>
|
|
| 137 | - </cell>
|
|
| 138 | - <cell weightx='1' fill="both" anchor='east'>
|
|
| 139 | - <JTextField id="serverDataBase" onKeyReleased="handler.setServerModified(event);"/>
|
|
| 137 | + <cell columns='2'>
|
|
| 138 | + <JCheckBox id="remoteUseSsl" onActionPerformed="model.setRemoteModified(true);"/>
|
|
| 140 | 139 | </cell>
|
| 141 | 140 | </row>
|
| 142 | - |
|
| 143 | 141 | <row>
|
| 144 | 142 | <cell columns='2'>
|
| 145 | - <JPanel id="serverActions" layout="{new GridLayout(1, 0)}">
|
|
| 146 | - <JButton id="cancelServerAction"/>
|
|
| 147 | - <JButton id="resetServerAction"/>
|
|
| 148 | - <JButton id="saveServerAction"/>
|
|
| 149 | - <JButton id="deleteServerAction"/>
|
|
| 150 | - <JButton id="testServerAction"/>
|
|
| 151 | - <JButton id="duplicateServerAction"/>
|
|
| 143 | + <JPanel id="remoteActions" layout="{new GridLayout(1, 0)}">
|
|
| 144 | + <JButton id="cancelRemoteAction"/>
|
|
| 145 | + <JButton id="resetRemoteAction"/>
|
|
| 146 | + <JButton id="saveRemoteAction"/>
|
|
| 147 | + <JButton id="deleteRemoteAction"/>
|
|
| 148 | + <JButton id="testRemoteAction"/>
|
|
| 149 | + <JButton id="duplicateRemoteAction"/>
|
|
| 152 | 150 | </JPanel>
|
| 153 | 151 | </cell>
|
| 154 | 152 | </row>
|
| ... | ... | @@ -34,6 +34,7 @@ observe.Common.id |
| 34 | 34 | observe.Common.label
|
| 35 | 35 | observe.Common.lastUpdateDate
|
| 36 | 36 | observe.Common.list.message.none
|
| 37 | +observe.Common.navigation.config.groupByName
|
|
| 37 | 38 | observe.Common.needComment
|
| 38 | 39 | observe.Common.storage.not.valid
|
| 39 | 40 | observe.Common.technicalInformation
|
| ... | ... | @@ -165,7 +166,6 @@ observe.ui.action.info.storage |
| 165 | 166 | observe.ui.action.info.storage.tip
|
| 166 | 167 | observe.ui.action.load.from.file
|
| 167 | 168 | observe.ui.action.load.from.file.tip
|
| 168 | -observe.ui.action.move.groupBy.configuration
|
|
| 169 | 169 | observe.ui.action.move.layout.multiple.message
|
| 170 | 170 | observe.ui.action.move.layout.single.message
|
| 171 | 171 | observe.ui.action.move.message
|
| ... | ... | @@ -1262,14 +1262,14 @@ observe.data.ps.observation.Route.choice.create.fin.veille.activity=Create end a |
| 1262 | 1262 | observe.data.ps.observation.Route.choice.not.create.fin.veille.activity.and.continue=do not create end watch activity and continue
|
| 1263 | 1263 | observe.data.ps.observation.Route.date=Date
|
| 1264 | 1264 | observe.data.ps.observation.Route.endLogValue=End log value
|
| 1265 | -observe.data.ps.observation.Route.list.navigation.node=Observations
|
|
| 1266 | -observe.data.ps.observation.Route.list.title=Observations - List of roads
|
|
| 1265 | +observe.data.ps.observation.Route.list.navigation.node=Onboard observationsOnboard observations
|
|
| 1266 | +observe.data.ps.observation.Route.list.title=Onboard observations - List of roads
|
|
| 1267 | 1267 | observe.data.ps.observation.Route.message.need.fin.veille.activity=No end watch activity was found in route to close.\n You can\:\n\n\t- Close route without creating the end watch activity\n\t- Create and go the end watch activity\n\t- Cancel and go back to route
|
| 1268 | 1268 | observe.data.ps.observation.Route.message.not.open=Current route is not open, no modification is possible.
|
| 1269 | 1269 | observe.data.ps.observation.Route.navigation.unsaved=New route
|
| 1270 | 1270 | observe.data.ps.observation.Route.startLogValue=Start log value
|
| 1271 | -observe.data.ps.observation.Route.title=Route
|
|
| 1272 | -observe.data.ps.observation.Route.type=Route
|
|
| 1271 | +observe.data.ps.observation.Route.title=Onboard observations
|
|
| 1272 | +observe.data.ps.observation.Route.type=Onboard observations
|
|
| 1273 | 1273 | observe.data.ps.observation.Route.validation.activityEndOfSearching.notAvailable=There is already an end watch activity on trip.
|
| 1274 | 1274 | observe.data.ps.observation.Route.validation.date.after.currentPsCommonTrip.startDate=Date (%2$s) must be after trip start date (%1$s).
|
| 1275 | 1275 | observe.data.ps.observation.Route.validation.invalid.endLogValue.maximum=End log can't be before start log.
|
| ... | ... | @@ -1262,14 +1262,14 @@ observe.data.ps.observation.Route.choice.create.fin.veille.activity=Crear la act |
| 1262 | 1262 | observe.data.ps.observation.Route.choice.not.create.fin.veille.activity.and.continue=No crear la actividad de fin de guardia y continuar
|
| 1263 | 1263 | observe.data.ps.observation.Route.date=Día de observación
|
| 1264 | 1264 | observe.data.ps.observation.Route.endLogValue=Corredera de tarde (millas)
|
| 1265 | -observe.data.ps.observation.Route.list.navigation.node=Observations
|
|
| 1265 | +observe.data.ps.observation.Route.list.navigation.node=Observaciones
|
|
| 1266 | 1266 | observe.data.ps.observation.Route.list.title=List of roads \#TODO
|
| 1267 | 1267 | observe.data.ps.observation.Route.message.need.fin.veille.activity=Ninguna actividad de fin de guardia registrada en la ruta a cerrar.\n Puede \:\n\n\t- Continuar con el cierra de la ruta sin crear la actividad de fin de guardia\n\t- Crear la actividad de fin de guardia e ir a ella\n\t- Cancelar el cierre y continuar con la ruta
|
| 1268 | 1268 | observe.data.ps.observation.Route.message.not.open=la ruta actual no está abierta, no se pueden hacer modificaciones.
|
| 1269 | 1269 | observe.data.ps.observation.Route.navigation.unsaved=New ruta
|
| 1270 | 1270 | observe.data.ps.observation.Route.startLogValue=Corredera de mañana (millas)
|
| 1271 | -observe.data.ps.observation.Route.title=Ruta
|
|
| 1272 | -observe.data.ps.observation.Route.type=Ruta
|
|
| 1271 | +observe.data.ps.observation.Route.title=Observaciones
|
|
| 1272 | +observe.data.ps.observation.Route.type=Observaciones
|
|
| 1273 | 1273 | observe.data.ps.observation.Route.validation.activityEndOfSearching.notAvailable=Existe una actividad de fin de guardia en la ruta.
|
| 1274 | 1274 | observe.data.ps.observation.Route.validation.date.after.currentPsCommonTrip.startDate=El día de observación (%2$s) debe ser superior o igual a la fecha de comienzo de marea (%1$s).
|
| 1275 | 1275 | observe.data.ps.observation.Route.validation.invalid.endLogValue.maximum=La corredera de tarde no puede ser superior en %1$s a la de mañana.
|
| ... | ... | @@ -1262,14 +1262,14 @@ observe.data.ps.observation.Route.choice.create.fin.veille.activity=Créer l'act |
| 1262 | 1262 | observe.data.ps.observation.Route.choice.not.create.fin.veille.activity.and.continue=Ne pas créer l'activité de fin de veille et continuer
|
| 1263 | 1263 | observe.data.ps.observation.Route.date=Jour d'observation
|
| 1264 | 1264 | observe.data.ps.observation.Route.endLogValue=Loch du soir (milles)
|
| 1265 | -observe.data.ps.observation.Route.list.navigation.node=Observations
|
|
| 1266 | -observe.data.ps.observation.Route.list.title=Liste des routes
|
|
| 1265 | +observe.data.ps.observation.Route.list.navigation.node=Observations embarquées
|
|
| 1266 | +observe.data.ps.observation.Route.list.title=Liste des observations emabrquées
|
|
| 1267 | 1267 | observe.data.ps.observation.Route.message.need.fin.veille.activity=Aucune activité de fin de veille enregistrée sur la route à clôturer.\nVous pouvez \:\n\n\t- Continuer la clôture de la route sans créer cette activité de fin de veille\n\t- Créer l'activité de fin de veille et vous y rendre\n\t- Annuler la fermeture et rester sur la route
|
| 1268 | 1268 | observe.data.ps.observation.Route.message.not.open=La route courante n'est pas ouverte, aucune modification possible.
|
| 1269 | 1269 | observe.data.ps.observation.Route.navigation.unsaved=Nouvelle route
|
| 1270 | 1270 | observe.data.ps.observation.Route.startLogValue=Loch du matin (milles)
|
| 1271 | -observe.data.ps.observation.Route.title=Route
|
|
| 1272 | -observe.data.ps.observation.Route.type=Route
|
|
| 1271 | +observe.data.ps.observation.Route.title=Observations embarquées
|
|
| 1272 | +observe.data.ps.observation.Route.type=Observations embarquées
|
|
| 1273 | 1273 | observe.data.ps.observation.Route.validation.activityEndOfSearching.notAvailable=Il existe déjà une activité de fin de veille sur la route
|
| 1274 | 1274 | observe.data.ps.observation.Route.validation.date.after.currentPsCommonTrip.startDate=Le jour d'observation (%2$s) doit être supérieure ou égale à la date de début de la marée (%1$s).
|
| 1275 | 1275 | observe.data.ps.observation.Route.validation.invalid.endLogValue.maximum=Le loch du soir ne peut pas être supérieur de %1$s à celui du matin.
|
| ... | ... | @@ -40,7 +40,7 @@ public class ServerResources { |
| 40 | 40 | public static final ConfigResource2 SECURITY_CONFIGURATION = new ConfigResource2("/META-INF/configuration/security.yml");
|
| 41 | 41 | public static final ConfigResource2 LOG_CONFIGURATION = new ConfigResource2("/META-INF/configuration/log.xml");
|
| 42 | 42 | |
| 43 | - static class ConfigResource2 extends ConfigResource {
|
|
| 43 | + public static class ConfigResource2 extends ConfigResource {
|
|
| 44 | 44 | |
| 45 | 45 | private boolean strict;
|
| 46 | 46 | private boolean forWindows;
|
| ... | ... | @@ -23,6 +23,7 @@ package fr.ird.observe.dto.server; |
| 23 | 23 | */
|
| 24 | 24 | |
| 25 | 25 | import fr.ird.observe.server.configuration.ServerConfig;
|
| 26 | +import fr.ird.observe.server.configuration.ServerResources;
|
|
| 26 | 27 | import org.junit.Assert;
|
| 27 | 28 | import org.junit.Before;
|
| 28 | 29 | import org.junit.Test;
|
| ... | ... | @@ -47,6 +48,33 @@ public class ServerModelTest { |
| 47 | 48 | configuration = ServerConfig.forTest();
|
| 48 | 49 | }
|
| 49 | 50 | |
| 51 | + |
|
| 52 | + @Test
|
|
| 53 | + public void testLoad_issue_2284() {
|
|
| 54 | + |
|
| 55 | + ServerResources.ConfigResource2 securityConfiguration = new ServerResources.ConfigResource2("/META-INF/configuration/security-2284.yml");
|
|
| 56 | + |
|
| 57 | + String content = String.join("\n", securityConfiguration.readLines());
|
|
| 58 | + ServerModel model = ServerModelHelper.load(content);
|
|
| 59 | + try {
|
|
| 60 | + ServerModelHelper.validate(model);
|
|
| 61 | + Assert.fail("Should have an error");
|
|
| 62 | + } catch (InvalidServerModelException e) {
|
|
| 63 | + Assert.assertEquals("Should have found this message error", "Found two default databases: production and test", e.getMessage());
|
|
| 64 | + }
|
|
| 65 | + |
|
| 66 | + securityConfiguration = new ServerResources.ConfigResource2("/META-INF/configuration/security-2284-2.yml");
|
|
| 67 | + |
|
| 68 | + content = String.join("\n", securityConfiguration.readLines());
|
|
| 69 | + model = ServerModelHelper.load(content);
|
|
| 70 | + try {
|
|
| 71 | + ServerModelHelper.validate(model);
|
|
| 72 | + Assert.fail("Should have an error");
|
|
| 73 | + } catch (InvalidServerModelException e) {
|
|
| 74 | + Assert.assertEquals("Should have found this message error", "No default databases defined", e.getMessage());
|
|
| 75 | + }
|
|
| 76 | + }
|
|
| 77 | + |
|
| 50 | 78 | @Test
|
| 51 | 79 | public void testLoad() throws Exception {
|
| 52 | 80 |
| 1 | +roles:
|
|
| 2 | + - &role-admin
|
|
| 3 | + password: a
|
|
| 4 | + - &role-technicien
|
|
| 5 | + password: a
|
|
| 6 | + - &role-referentiel
|
|
| 7 | + password: a
|
|
| 8 | + - &role-test
|
|
| 9 | + password: a
|
|
| 10 | +databases:
|
|
| 11 | + - &db-production
|
|
| 12 | + url: jdbc:postgresql://localhost:5432/obstuna-production
|
|
| 13 | + roles:
|
|
| 14 | + - *role-admin
|
|
| 15 | + - *role-technicien
|
|
| 16 | + - *role-referentiel
|
|
| 17 | + - &db-test
|
|
| 18 | + url: jdbc:postgresql://localhost:5432/obstuna-test
|
|
| 19 | + roles:
|
|
| 20 | + - *role-admin
|
|
| 21 | + - *role-technicien
|
|
| 22 | + - *role-referentiel
|
|
| 23 | + - *role-test
|
|
| 24 | +users:
|
|
| 25 | + - login: utilisateur-technicien
|
|
| 26 | + password: a
|
|
| 27 | + permissions:
|
|
| 28 | + - database: *db-production
|
|
| 29 | + role: *role-technicien
|
|
| 30 | + apiAccess: ALL
|
|
| 31 | + validationMode: STRONG
|
|
| 32 | + - database: *db-test
|
|
| 33 | + role: *role-technicien
|
|
| 34 | + apiAccess: PUBLIC
|
|
| 35 | + validationMode: PERMISSIVE
|
|
| 36 | + - login: utilisateur-referentiel
|
|
| 37 | + password: a
|
|
| 38 | + permissions:
|
|
| 39 | + - database: *db-production
|
|
| 40 | + role: *role-referentiel
|
|
| 41 | + apiAccess: CLIENT
|
|
| 42 | + validationMode: NONE |
| 1 | +roles:
|
|
| 2 | + - &role-admin
|
|
| 3 | + password: a
|
|
| 4 | + - &role-technicien
|
|
| 5 | + password: a
|
|
| 6 | + - &role-referentiel
|
|
| 7 | + password: a
|
|
| 8 | + - &role-test
|
|
| 9 | + password: a
|
|
| 10 | +databases:
|
|
| 11 | + - &db-production
|
|
| 12 | + url: jdbc:postgresql://localhost:5432/obstuna-production
|
|
| 13 | + defaultDatabase: true
|
|
| 14 | + roles:
|
|
| 15 | + - *role-admin
|
|
| 16 | + - *role-technicien
|
|
| 17 | + - *role-referentiel
|
|
| 18 | + - &db-test
|
|
| 19 | + url: jdbc:postgresql://localhost:5432/obstuna-test
|
|
| 20 | + defaultDatabase: true
|
|
| 21 | + roles:
|
|
| 22 | + - *role-admin
|
|
| 23 | + - *role-technicien
|
|
| 24 | + - *role-referentiel
|
|
| 25 | + - *role-test
|
|
| 26 | +users:
|
|
| 27 | + - login: utilisateur-technicien
|
|
| 28 | + password: a
|
|
| 29 | + permissions:
|
|
| 30 | + - database: *db-production
|
|
| 31 | + role: *role-technicien
|
|
| 32 | + apiAccess: ALL
|
|
| 33 | + validationMode: STRONG
|
|
| 34 | + - database: *db-test
|
|
| 35 | + role: *role-technicien
|
|
| 36 | + apiAccess: PUBLIC
|
|
| 37 | + validationMode: PERMISSIVE
|
|
| 38 | + - login: utilisateur-referentiel
|
|
| 39 | + password: a
|
|
| 40 | + permissions:
|
|
| 41 | + - database: *db-production
|
|
| 42 | + role: *role-referentiel
|
|
| 43 | + apiAccess: CLIENT
|
|
| 44 | + validationMode: NONE |