Additional parameters in the field constructor
Provide pithos call for getting account name from uuid
Additional common helper methodt
make str(CallError) force unicode to utf8
Redefine IntDecimalField to allow support for south migration;apply the new field to astakos.im.ProjectResourceGrant
wip Use decimals to store quota values; infinite quotas no more supported
Define custom integer field that is stored in the DB as decimal
User usage enhancement in astakos client helpers
`get_user`, `user_for_token` and `authenticate` methods now accept a `usage`parameter which requests user usage quotas to be returned along withauthenticated user information. Server side handling has also been...
Changes in common astakos library.
Provide error feedback during pithos database path migration to container uuid instead of email
Update Astakos API to provider calls for retrieving uuid from the username and vice versa, extend astakos client library (snf-common) and update pithos to use uuids instead of email for account identification
Register keyword args in CallError
Add details in exceptions raised in issue_commission
Exceptions regarding limit violations now carry detailsas specified in CommissionValueException
Update astakos client to use user.uuid
New add_quota API to handle infinity
Separately handle subtractions and additions of quotasAdapt get_diff_quota plus various bug fixes
Do not record arguments of add_quota.Add call query_serials separate from ack_serials.
Record arguments of add_quota and return them in ack_serial
Add a serial in the add_quota API call
add_quota API call
Make side-effecting quotaholder API calls fail completely,if part of the request is rejected.
If such a call returns a non-empty list, this means thatthe entire call failed due to the actions mentioned in the list.
Better version of the bug fix 39cefb25
fix obscure bug in callpoint class that triggered db integrity errors
Callpoint class had a placeholder attribute original_callswhich was initialized as an empty dictionary,and thus was usable. Class init() code did not initializeoriginal_calls as it should but because the placeholder was...
remove obsolete import get_callpoint
add list_holdings quotaholder api call
list_holdings() to be used to get all holdings for multiple resourceswithout having to call list_resources/get_holding for each entity/holding.
First unpack, then consider options, while checking canonicals
Implement reset_holding API call
Avoid negative indexing, not supported by django lists
Disallow empty names in _random_choice
fix auto-generation in get_doc()
remove stub docstrings to allow their generation from canonicals
auto-generate missing api call docstrings
provide random Name
fixes in canonical randoms
Separate concerns of unpack and check in Args
Move implementation details to argmap.py
allow '-' in quotaholder entity names
Raise AssertionError when exhausted
Add missing import
Remove parse and _parse from canonicals
Fixes in unpack
Show input canonical
integrate Args and argmap, change argmap magic pos
rename betteron to argmap, add manipulation methods
Fix utf8 header
move it to the top of the file
Rename set_full_holding to init_holding
Implement release_holding
API call to set the whole holding.
Do not create entity in issue_commission.
Do not allow duplicate provisions in a commission.
Add copyright.
Delete unused files.
Move commissioning into snf-common.
Merge quotaholder into synnefo
Make amqp_puka get logger as argument
Merge branch 'cleanse-settings' into devel-0.12
Fix dispatcher logging
Minor changes
Cleanse sensitive settings in debug output
In case of server errors prevent django from printing or emailing sensitivesettings.
Merge branch 'devel-0.12' into ui-0.11
Add support for dead-letter-exchange to amqp_puka
Also add support for custom headers when publishing messages.
Implement basic_nack and basic_reject AMQP methods
Basic_nack method is not support by puka. We are implementingbasic_nack as basic_ack since they have the same effect whenmultiple and requeue options are not used.
Reconnect to different Broker if idle for too long
Modify snf-dispatcher and add a timeout option to basic_wait method. Iftimeout is reached, the connection to the current RabbitMQ broker isclosed and dispatcher tries to connect to a different one.
This commit is supplementary of 6d27ead, which detects connection...
Detect and handle connection problems in amqp_puka
Use the TCP keepalive feature in amqp_puka in order to detect connectionerrors to the RabbitMQ broker, and retry to a different one. Also setupthe keepalive parameters to relative small values, to detect failures...
Merge branch 'devel-0.11'
Various fixes about logging
Fix logging from snf-manage commands. Modify snf-manage implementationin order to setup the loggers for all snf-manage commands. Configurationis based on SNF_MANAGE_LOGGING_SETUP setting from snf-common or onbasicConfig if that setting is missing....
Merge branch 'master' into ui-0.11
Fix duplicate return of HTTP connection into pool
Fix duplicate return of HTTP connection into pool on duplicateinvocation of conn.close().
Revert commit b9c834003, and make sure a connection object's _poolattribute is re-initialized whenever it is retrieved from the pool....
Merge branch 'devel-0.11' into ui-0.11
Conflicts: snf-cyclades-app/synnefo/db/models.py snf-cyclades-app/synnefo/logic/backend.py snf-cyclades-app/synnefo/ui/static/snf/js/models.js
Change eventd and dispatcher AMQP retries
Set unlimited connection retries to AMQP hosts for snf-ganeti-eventd,since death of snf-ganeti-eventd results in loss of events.Also increase retries of snf-dispatcher.
Fix bug in amqp_puka
Make AMQPConnectionError an exception
Fix cleanup of DB pooled connections
Fix bug in cleanup of DB pooled connections before putting them back tothe pool. The way the connection was cleaned, resulted in mishandling ofthe transactions.
Accoring to psycopg2 docs, in case of a READ COMMITED isolation level:...
Conflicts: snf-common/synnefo/lib/astakos.py snf-cyclades-app/synnefo/ui/static/snf/js/models.js
Enhange logging in db and http pools
Fix bug in http connection pool
Do not reset connetion _pool attribute, since it is not (yet?)initialized when getting the object from the pool.
remove obsolete kwarg verify
port pooled psycopg2 to new pool api
don't take mutex for cleanup
Enhance pooling API, implementation, and tests
- Verify objects (new and old) with a hook _pool_verify. Discard objects from the pool that fail verification. A newly created object failing verification is fatal.
- Remove all hooks from the pool set access critical section....
complete some functionality
Move pooling psycopg2 wrapper to synnefo.lib.db
Move pooling psycopg2 wrapper to synnefo.lib.db,please see commit e83ed1fb8fb4d0d19c2d3f86152fde60b3cadfd9 for all thedetails on how to use the pooling wrapper for psycopg2.
Pool HTTP connections to the astakos service
Have the astakos client use pooled HTTP connections to the astakosservice, uses facilities from synnefo/lib/pool/http.py.
simple http_request objects over connection pools
Define UserEvent
Make pool more robust on obj creation failure
Make ObjectPool handle failures during object creation more robustly,and release the pool semaphore.
Extend ObjectPool functionality, tests
Rename ObjectPool methods to pool_{put(), get()}
Merge branch 'devel-0.11' into ui-helpdesk
Support timeout in ObjectPool.get(), fix tests
Support optional timeout argument in ObjectPool.get(),if supported by the underlying Semaphore implementation.
Implement command-line argument for ObjectPool unit tests to runinside gevent monkey-patched environment.
Make minor fixes to Singleton class unit tests
Add ObjectPool class in synnefo.lib
Add ObjectPool class in synnefo.lib.The ObjectPool class is an abstract pool of objects,based on Semaphore locks, as provided by the threadingpackage.
Tested to work with a gevent-monkey-patched threading package.Uncomment the relevant lines in pool/tests.py to test with greenlet...
Merge branch 'master' into ui-helpdesk
Conflicts: snf-common/Changelog
Implement Singleton pattern
Implement Singleton pattern inside synnefo.lib.singleton.
Whenever a class inherits from ArgBasedSingleton,attempts to call the class do not always create a newclass instance, but return pre-existing, already made objects....
Fix bug in puka client
Merge branch 'simplequotas' into queues+minor_net
Redeclare exchanges when reconnecting
Fix authenticate
Differentiate Unauthorized astakos response from other error responses
Refactor AMQP client
Additional astakos client lib helper
to extract token from astakos cookies