Thierry Parmentelat [Tue, 23 Nov 2010 18:20:30 +0000 (19:20 +0100)]
add a note in GetPersons about a possible privacy leak
Thierry Parmentelat [Tue, 23 Nov 2010 15:04:43 +0000 (16:04 +0100)]
get the down migration right
Thierry Parmentelat [Tue, 23 Nov 2010 08:47:45 +0000 (09:47 +0100)]
fix duplicate arg in helpers
Thierry Parmentelat [Tue, 23 Nov 2010 06:43:33 +0000 (07:43 +0100)]
bugfix
Thierry Parmentelat [Mon, 22 Nov 2010 23:56:22 +0000 (00:56 +0100)]
committed un unsaved file
Thierry Parmentelat [Mon, 22 Nov 2010 23:52:26 +0000 (00:52 +0100)]
added doc on migration
Thierry Parmentelat [Mon, 22 Nov 2010 22:25:01 +0000 (23:25 +0100)]
default for get_roles in the accessors factory is all_roles
Thierry Parmentelat [Mon, 22 Nov 2010 22:17:57 +0000 (23:17 +0100)]
add/update/delete slice tags should be fine
Thierry Parmentelat [Sun, 21 Nov 2010 21:24:17 +0000 (22:24 +0100)]
give more details on permission denied
Thierry Parmentelat [Sun, 21 Nov 2010 21:21:57 +0000 (22:21 +0100)]
bugfix, don't use methods...
Thierry Parmentelat [Fri, 19 Nov 2010 16:05:29 +0000 (17:05 +0100)]
Merge branch 'master' of ssh://git.onelab.eu/git/plcapi
Thierry Parmentelat [Fri, 19 Nov 2010 16:05:23 +0000 (17:05 +0100)]
accessors and db-config.d tags roughly OK
Barış Metin [Fri, 19 Nov 2010 15:33:00 +0000 (16:33 +0100)]
fix indent error
Thierry Parmentelat [Fri, 19 Nov 2010 14:39:10 +0000 (15:39 +0100)]
Merge branch 'master' of ssh://git.onelab.eu/git/plcapi
Thierry Parmentelat [Fri, 19 Nov 2010 14:38:11 +0000 (15:38 +0100)]
first draft of slice tags authorization in AddSliceTag
Barış Metin [Fri, 19 Nov 2010 14:37:20 +0000 (15:37 +0100)]
add enable_hmac slice tag accessor
Thierry Parmentelat [Fri, 19 Nov 2010 13:27:54 +0000 (14:27 +0100)]
.gitignore
Thierry Parmentelat [Fri, 19 Nov 2010 13:25:53 +0000 (14:25 +0100)]
show tagname when permission is denied
Thierry Parmentelat [Fri, 19 Nov 2010 11:25:28 +0000 (12:25 +0100)]
oops - missing file
Thierry Parmentelat [Thu, 18 Nov 2010 19:16:19 +0000 (20:16 +0100)]
reviewing the tags permission system
tag_types don't have a min_role_id anymore but a set of roles
new methods AddRoleToTagType and DeleteRoleFromTagType to handle that
new file PLC/AuthorizeHelpers.py has helpers to implement authorizations
this is a checkpoint commit - remaining todo:
- slice tags methods are unchanged yet
- accessors and factory still use min_role_id
Thierry Parmentelat [Thu, 18 Nov 2010 09:23:33 +0000 (10:23 +0100)]
Merge branch 'master' of ssh://git.onelab.eu/git/plcapi
Thierry Parmentelat [Thu, 18 Nov 2010 09:23:14 +0000 (10:23 +0100)]
cleanup more svn keywords
root [Wed, 17 Nov 2010 21:52:56 +0000 (22:52 +0100)]
Merge commit 'origin/master'
S.Çağlar Onur [Wed, 17 Nov 2010 21:49:50 +0000 (16:49 -0500)]
AuthMethod is a must so return if it's missing
root [Wed, 17 Nov 2010 21:43:54 +0000 (22:43 +0100)]
Merge commit 'origin/master'
S.Çağlar Onur [Wed, 17 Nov 2010 21:43:45 +0000 (16:43 -0500)]
support other Auth types
root [Wed, 17 Nov 2010 21:25:53 +0000 (22:25 +0100)]
Merge commit 'origin/master'
S.Çağlar Onur [Wed, 17 Nov 2010 21:23:03 +0000 (16:23 -0500)]
use the same log file with spec
root [Wed, 17 Nov 2010 21:22:55 +0000 (22:22 +0100)]
Merge commit 'origin/master'
S.Çağlar Onur [Wed, 17 Nov 2010 21:21:01 +0000 (16:21 -0500)]
handle KeyError exception for now
root [Wed, 17 Nov 2010 20:58:52 +0000 (21:58 +0100)]
Merge commit 'origin/master'
S.Çağlar Onur [Wed, 17 Nov 2010 20:57:41 +0000 (15:57 -0500)]
fix typo
root [Wed, 17 Nov 2010 20:55:55 +0000 (21:55 +0100)]
Merge commit 'origin/master'
S.Çağlar Onur [Wed, 17 Nov 2010 20:55:14 +0000 (15:55 -0500)]
use Username while calculating the key
S.Çağlar Onur [Wed, 17 Nov 2010 20:54:08 +0000 (15:54 -0500)]
use Username while calculating the key
root [Wed, 17 Nov 2010 18:32:09 +0000 (19:32 +0100)]
Merge commit 'origin/master'
S.Çağlar Onur [Wed, 17 Nov 2010 18:30:05 +0000 (13:30 -0500)]
python-memcache responds to incr on non-existent keys raising a ValueError. Cmemcache returns None. Handle both cases
Barış Metin [Tue, 16 Nov 2010 23:30:34 +0000 (00:30 +0100)]
add new file to the package
root [Tue, 16 Nov 2010 21:44:00 +0000 (22:44 +0100)]
Merge commit 'origin/master'
S.Çağlar Onur [Tue, 16 Nov 2010 21:42:52 +0000 (16:42 -0500)]
add whitelist
root [Tue, 16 Nov 2010 20:01:55 +0000 (21:01 +0100)]
Merge commit 'origin/master'
S.Çağlar Onur [Tue, 16 Nov 2010 19:59:16 +0000 (14:59 -0500)]
merge ratelimiting support from memcache branch
Barış Metin [Tue, 16 Nov 2010 10:15:24 +0000 (11:15 +0100)]
fix another typo
Sapan Bhatia [Mon, 15 Nov 2010 23:15:34 +0000 (18:15 -0500)]
This function is needed to cache the results of API calls, which for a godforsaken reason cannot be pickled.
root [Mon, 15 Nov 2010 22:50:02 +0000 (23:50 +0100)]
Merge commit 'origin/master'
Thierry Parmentelat [Mon, 15 Nov 2010 09:20:01 +0000 (10:20 +0100)]
trashed svn keywords
Barış Metin [Thu, 11 Nov 2010 13:35:04 +0000 (14:35 +0100)]
also fix error message
Tony Mack [Wed, 10 Nov 2010 21:06:11 +0000 (16:06 -0500)]
Fix typo
Tony Mack [Wed, 10 Nov 2010 20:42:22 +0000 (15:42 -0500)]
Use PLC.Person.can_update() to authorize. fix name error.
Stephen Soltesz [Tue, 9 Nov 2010 15:22:20 +0000 (10:22 -0500)]
Evidently, not all versions of DRAC are supported, such as the Modular Chassis
which expects strings to identify nodes rather than what our API supports
which is integers.
Daniel Hokka Zakrisson [Sun, 17 Oct 2010 00:16:48 +0000 (20:16 -0400)]
Don't descend into php directory, there's nothing there.
Daniel Hokka Zakrisson [Sun, 17 Oct 2010 00:10:27 +0000 (20:10 -0400)]
Skip generating static list of API calls, just send them to the API.
Daniel Hokka Zakrisson [Sat, 16 Oct 2010 23:10:31 +0000 (19:10 -0400)]
Fix version output when missing.
Daniel Hokka Zakrisson [Sat, 16 Oct 2010 23:10:05 +0000 (19:10 -0400)]
Already scoped properly.
Daniel Hokka Zakrisson [Sat, 16 Oct 2010 22:39:31 +0000 (18:39 -0400)]
Fix auth extensibility.
Daniel Hokka Zakrisson [Sat, 16 Oct 2010 22:30:54 +0000 (18:30 -0400)]
Remember to insert the version.
Daniel Hokka Zakrisson [Sat, 16 Oct 2010 22:20:36 +0000 (18:20 -0400)]
Cleanup old targets in Makefile.
Daniel Hokka Zakrisson [Sat, 16 Oct 2010 22:10:25 +0000 (18:10 -0400)]
Create extensions directory.
Daniel Hokka Zakrisson [Sat, 16 Oct 2010 21:46:50 +0000 (17:46 -0400)]
Add migration files for the extensions.
Daniel Hokka Zakrisson [Sat, 16 Oct 2010 21:39:30 +0000 (17:39 -0400)]
Apply extensions.
Daniel Hokka Zakrisson [Fri, 15 Oct 2010 14:12:41 +0000 (10:12 -0400)]
Be consistent in the API.
Daniel Hokka Zakrisson [Fri, 15 Oct 2010 09:34:17 +0000 (05:34 -0400)]
Improve filter.
Daniel Hokka Zakrisson [Fri, 15 Oct 2010 08:54:58 +0000 (04:54 -0400)]
Don't generate __init__ files.
Daniel Hokka Zakrisson [Fri, 15 Oct 2010 08:23:30 +0000 (04:23 -0400)]
Make the authentication system extensible.
Stephen Soltesz [Thu, 7 Oct 2010 16:56:39 +0000 (12:56 -0400)]
Add a more instructive Event message to reconstruct what actually occurred as
well as the return value from the reboot attempt.
Barış Metin [Thu, 23 Sep 2010 10:00:09 +0000 (12:00 +0200)]
fix NameError.
Barış Metin [Thu, 23 Sep 2010 09:35:05 +0000 (11:35 +0200)]
don't apply all aspects blindly (although there is only one for the moment...)
Barış Metin [Wed, 22 Sep 2010 15:47:31 +0000 (17:47 +0200)]
Implement ignore_exception decorator and use it for omfaspect
methods. This should prevent the omfaspect fail plcapi calls.
Thierry Parmentelat [Thu, 16 Sep 2010 11:10:19 +0000 (13:10 +0200)]
Setting tag plcapi-5.0-18
fix RefreshPeer that was not working in 5.0-17
Thierry Parmentelat [Thu, 16 Sep 2010 11:09:15 +0000 (13:09 +0200)]
Merge branch 'master' of ssh://git.onelab.eu/git/plcapi
Thierry Parmentelat [Thu, 16 Sep 2010 11:09:08 +0000 (13:09 +0200)]
oops, refreshpeer in tag plcapi-5.0-17 is broken
Thierry Parmentelat [Thu, 16 Sep 2010 07:35:02 +0000 (09:35 +0200)]
Setting tag plcapi-5.0-17
RefreshPeer is able to cope with 2 peers running different releases of the api
DeletePerson can be used on duplicates
first appearance of ModPythonJson.py
Thierry Parmentelat [Wed, 15 Sep 2010 13:46:59 +0000 (15:46 +0200)]
compatibility mode, support for 2 ends running different api releases
tweaked verbose mode and focus for debugging specific entries
Thierry Parmentelat [Wed, 15 Sep 2010 13:45:28 +0000 (15:45 +0200)]
replace filter(lambda) with [ .. for .. if ..]
Thierry Parmentelat [Wed, 15 Sep 2010 12:16:41 +0000 (14:16 +0200)]
avoid running validate on DeletePerson
this is for when the db accidentally has duplicates, as we found after
a big RefreshPeer hiccup
cleaning up manually through SQL in similar cases is discouraged
root [Thu, 2 Sep 2010 14:23:02 +0000 (16:23 +0200)]
Merge commit 'local_master/master'
Thierry Parmentelat [Wed, 1 Sep 2010 08:40:30 +0000 (10:40 +0200)]
Setting tag plcapi-5.0-16
set accessors return the new value
tweaks in the pubsub groups management
Thierry Parmentelat [Wed, 1 Sep 2010 08:21:33 +0000 (10:21 +0200)]
Merge branch 'master' of ssh://git.onelab.eu/git/plcapi
Thierry Parmentelat [Wed, 1 Sep 2010 08:21:26 +0000 (10:21 +0200)]
only comments
Thierry Parmentelat [Tue, 31 Aug 2010 14:05:04 +0000 (16:05 +0200)]
Set accessors return the new value
Tony Mack [Tue, 10 Aug 2010 20:03:40 +0000 (16:03 -0400)]
use jsonlib (if available) before using simplejson
Tony Mack [Sat, 7 Aug 2010 14:58:06 +0000 (10:58 -0400)]
added handle_json() method
Tony Mack [Sat, 7 Aug 2010 14:55:15 +0000 (10:55 -0400)]
Initial checkin of mod_python json interface
Tony Mack [Sat, 7 Aug 2010 14:51:51 +0000 (10:51 -0400)]
Adding python-simplejson requirement
Barış Metin [Sat, 31 Jul 2010 10:56:34 +0000 (12:56 +0200)]
Merge remote branch 'origin/master'
Barış Metin [Sat, 31 Jul 2010 10:56:03 +0000 (12:56 +0200)]
use hrn to re-create pubsub groups
S.Çağlar Onur [Wed, 28 Jul 2010 21:00:27 +0000 (17:00 -0400)]
Setting tag plcapi-5.0-15
convert hostnames to lower case and use ILIKE instead of LIKE
S.Çağlar Onur [Thu, 22 Jul 2010 20:46:22 +0000 (16:46 -0400)]
use ILIKE instead of LIKE for case-insensitive searches
S.Çağlar Onur [Thu, 22 Jul 2010 20:39:12 +0000 (16:39 -0400)]
use lowercase hostnames
Barış Metin [Fri, 16 Jul 2010 12:34:28 +0000 (14:34 +0200)]
Setting tag plcapi-5.0-14
use hrn in pubsub groups
Barış Metin [Fri, 16 Jul 2010 08:23:27 +0000 (10:23 +0200)]
use node's hrn instead of the hostname to create xmpp pubsub groups
Barış Metin [Tue, 13 Jul 2010 16:27:41 +0000 (18:27 +0200)]
Setting tag plcapi-5.0-13
- Add timestamps to Nodes, PCUs and Interfaces to make concrete statements about a node's configuration state.
- OMF fixes
Barış Metin [Mon, 12 Jul 2010 13:35:12 +0000 (15:35 +0200)]
try fixing: BootUpdateNode: Invalid argument: Timestamp None - unsupported type <type 'NoneType'>">
Barış Metin [Fri, 9 Jul 2010 17:19:02 +0000 (19:19 +0200)]
methods' return values need to be handled separately
Barış Metin [Fri, 9 Jul 2010 17:17:40 +0000 (19:17 +0200)]
fix typo
Barış Metin [Fri, 9 Jul 2010 15:23:51 +0000 (17:23 +0200)]
require pyaspect >= 0.4
Barış Metin [Fri, 9 Jul 2010 15:15:00 +0000 (17:15 +0200)]
unify handling calls in before and after aspects. check method's return value before proceeding with the aspect's actions.
Stephen Soltesz [Fri, 2 Jul 2010 23:56:48 +0000 (19:56 -0400)]
Add timestamps to Nodes, PCUs and Interfaces to make concrete
statements about a node's configuration state.
Added:
Node.last_boot -- updated by BootUpdateNode()
Node.last_download -- updated by GetBootMedium()
Node.last_pcu_reboot -- updated by RebootNodeWithPCU()
Node.last_pcu_confirmation -- updated by BootUpdateNode()
Interface.last_updated -- updated by UpdateInterface()
PCU.last_updated -- updated by UpdatePCU()
With these timestamps we can implement isValid() routines that indicate
whether the DB state is consistent with respect to the external deployment.
Previously, the DB state could be inconsistent, but there was no way to
identify this until runtime. These checks should make it possible to validate
the DB state prior to runtime.
Also, isValid() is different from whether a node is online. A node can be
offline and have a valid DB state.
For instance (in pseudocode):
def Node.isValid():
return Node.last_download < Node.last_boot &&
Node.PCU.isValid(Node) &&
Node.Interface.isValid(Node)
def PCU.isValid(Node):
return PCU.last_updated < Node.last_pcu_confirmation
def Interface.isValid(Node):
return Interface.last_updated < Node.last_download
In other words, if the primary interface for a node is updated more recently
than a bootimage is downloaded, then the DB configuration is out of sync with
the node deployment.
If the PCU is updated more recently than the last confirmed use of the PCU,
then the DB configuration is potentially out of sync with the deployment.
If the Node has downloaded a boot image prior to rebooting, then the DB config
is potentially out of sync with the deployment.
All of these states can be flagged in the GUI to help a technical contact
known the status of his configuration and deployment more easily. The
recommended steps to take should be straight forward based on the conditions
above. i.e. Create new boot image, reboot node, verify PCU, etc.
Stephen Soltesz [Fri, 2 Jul 2010 23:49:54 +0000 (19:49 -0400)]
Add timestamps to Nodes, PCUs and Interfaces to make concrete
statements about a node's configuration state.
Added:
Node.last_boot -- updated by BootUpdateNode()
Node.last_download -- updated by GetBootMedium()
Node.last_pcu_reboot -- updated by RebootNodeWithPCU()
Node.last_pcu_confirmation -- updated by BootUpdateNode()
Interface.last_updated -- updated by UpdateInterface()
PCU.last_updated -- updated by UpdatePCU()
With these timestamps we can implement isValid() routines that indicate
whether the DB state is consistent with respect to the external deployment.
Previously, the DB state could be inconsistent, but there was no way to
identify this until runtime. These checks should make it possible to validate
the DB state prior to runtime.
Also, isValid() is different from whether a node is online. A node can be
offline and have a valid DB state.
For instance (in pseudocode):
def Node.isValid():
return Node.last_download < Node.last_boot &&
Node.PCU.isValid(Node) &&
Node.Interface.isValid(Node)
def PCU.isValid(Node):
return PCU.last_updated < Node.last_pcu_confirmation
def Interface.isValid(Node):
return Interface.last_updated < Node.last_download
In other words, if the primary interface for a node is updated more recently
than a bootimage is downloaded, then the DB configuration is out of sync with
the node deployment.
If the PCU is updated more recently than the last confirmed use of the PCU,
then the DB configuration is potentially out of sync with the deployment.
If the Node has downloaded a boot image prior to rebooting, then the DB config
is potentially out of sync with the deployment.
All of these states can be flagged in the GUI to help a technical contact
known the status of his configuration and deployment more easily. The
recommended steps to take should be straight forward based on the conditions
above. i.e. Create new boot image, reboot node, verify PCU, etc.
Barış Metin [Mon, 28 Jun 2010 10:54:47 +0000 (10:54 +0000)]
Setting tag PLCAPI-5.0-12
automatically set vsys tag for omf controlled slices