Compare commits

...

2 Commits

Author SHA1 Message Date
Emmanuel Garette 5708cb1ea9 tmp => /tmp 2020-08-05 17:07:44 +02:00
Emmanuel Garette 664a2404fa simplify publish function 2020-04-23 07:39:22 +02:00
3 changed files with 45 additions and 41 deletions

View File

@ -36,12 +36,19 @@ Chacun de ces services documente la structure de la table mais ne se charge pas
La création de la table, selon le schéma fournit dans la documentation, est à la charge de ladministrateur du système. La création de la table, selon le schéma fournit dans la documentation, est à la charge de ladministrateur du système.
# Empty database: # Empty database:
su - postgres
psql -U postgres risotto
drop table log; drop table userrole; drop table release; drop table source; drop table server; drop table servermodel; drop table applicationservice; drop table roleuri; drop table risottouser; drop table uri;
````
psql -U postgres
drop database risotto;
drop user risotto;
\q
reconfigure
```
```
psql -U postgres tiramisu psql -U postgres tiramisu
drop table value; drop table property; drop table permissive; drop table information; drop table session; drop table value; drop table property; drop table permissive; drop table information; drop table session;
```
# Import EOLE # Import EOLE
./script/cucchiaiata source.create -n eole -u http://localhost ./script/cucchiaiata source.create -n eole -u http://localhost

View File

@ -3,7 +3,7 @@ from os import environ
CONFIGURATION_DIR = environ.get('CONFIGURATION_DIR', '/srv/risotto/configurations') CONFIGURATION_DIR = environ.get('CONFIGURATION_DIR', '/srv/risotto/configurations')
PROVIDER_FACTORY_CONFIG_DIR = environ.get('PROVIDER_FACTORY_CONFIG_DIR', '/srv/factory') PROVIDER_FACTORY_CONFIG_DIR = environ.get('PROVIDER_FACTORY_CONFIG_DIR', '/srv/factory')
TMP_DIR = 'tmp' TMP_DIR = '/tmp'
DEFAULT_USER = environ.get('DEFAULT_USER', 'Anonymous') DEFAULT_USER = environ.get('DEFAULT_USER', 'Anonymous')
RISOTTO_DB_NAME = environ.get('RISOTTO_DB_NAME', 'risotto') RISOTTO_DB_NAME = environ.get('RISOTTO_DB_NAME', 'risotto')
RISOTTO_DB_PASSWORD = environ.get('RISOTTO_DB_PASSWORD', 'risotto') RISOTTO_DB_PASSWORD = environ.get('RISOTTO_DB_PASSWORD', 'risotto')
@ -19,7 +19,7 @@ SRV_SEED_PATH = environ.get('SRV_SEED_PATH', '/srv/seed')
def dsn_factory(database, user, password, address=DB_ADDRESS): def dsn_factory(database, user, password, address=DB_ADDRESS):
mangled_address = '/var/run/postgresql' if address == 'localhost' else address mangled_address = '/var/run/postgresql' if address == 'localhost' else address
return f'postgres:///{database}?host={mangled_address}/&user={user}&password={password}' return f'postgres:///{database}?host={mangled_address}/&user={user}&password={password}'

View File

@ -147,40 +147,39 @@ class PublishDispatcher:
check_role, check_role,
kwargs, kwargs,
function_objs) function_objs)
else: try:
try: async with self.pool.acquire() as connection:
async with self.pool.acquire() as connection: await connection.set_type_codec(
await connection.set_type_codec( 'json',
'json', encoder=dumps,
encoder=dumps, decoder=loads,
decoder=loads, schema='pg_catalog'
schema='pg_catalog' )
) risotto_context.connection = connection
risotto_context.connection = connection async with connection.transaction():
async with connection.transaction(): return await self.launch(version,
return await self.launch(version, message,
message, risotto_context,
risotto_context, check_role,
check_role, kwargs,
kwargs, function_objs)
function_objs) except CallError as err:
except CallError as err: raise err
raise err except Exception as err:
except Exception as err: # if there is a problem with arguments, just send an error and do nothing
# if there is a problem with arguments, just send an error and do nothing if get_config()['global']['debug']:
if get_config()['global']['debug']: print_exc()
print_exc() async with self.pool.acquire() as connection:
async with self.pool.acquire() as connection: await connection.set_type_codec(
await connection.set_type_codec( 'json',
'json', encoder=dumps,
encoder=dumps, decoder=loads,
decoder=loads, schema='pg_catalog'
schema='pg_catalog' )
) risotto_context.connection = connection
risotto_context.connection = connection async with connection.transaction():
async with connection.transaction(): await log.error_msg(risotto_context, kwargs, err)
await log.error_msg(risotto_context, kwargs, err) raise err
raise err
class Dispatcher(register.RegisterDispatcher, class Dispatcher(register.RegisterDispatcher,
@ -329,8 +328,6 @@ class Dispatcher(register.RegisterDispatcher,
if key in function_obj['arguments']: if key in function_obj['arguments']:
kw[key] = value kw[key] = value
kw['risotto_context'] = risotto_context kw['risotto_context'] = risotto_context
returns = await function(self.injected_self[function_obj['module']], **kw) returns = await function(self.injected_self[function_obj['module']], **kw)
if risotto_context.type == 'rpc': if risotto_context.type == 'rpc':