plcapi.git
17 years agoa micro-framework for handling migrations
Thierry Parmentelat [Tue, 30 Jan 2007 11:27:12 +0000 (11:27 +0000)]
a micro-framework for handling migrations
just create migration scripts named
migrations/<nnn>-up-<some-text>.sql and myplc will apply them at start time

I am unsure whether wildcards are supported in setup.py, checking that..

17 years ago- handle "CREATE OR REPLACE" in schema
Mark Huang [Mon, 29 Jan 2007 23:08:24 +0000 (23:08 +0000)]
- handle "CREATE OR REPLACE" in schema
- deal with a few more deleted attribute types

17 years ago- create or replace view
Mark Huang [Mon, 29 Jan 2007 20:48:27 +0000 (20:48 +0000)]
- create or replace view

17 years ago- PostgreSQL apparently does not push outer conditionals inside joined
Mark Huang [Mon, 29 Jan 2007 20:13:12 +0000 (20:13 +0000)]
- PostgreSQL apparently does not push outer conditionals inside joined
  group aggregate views, causing each group aggregate view to be fully
  loaded. So, instead of joining group aggregate views, subquery them
  using the primary key directly. Speeds up single-node and single-slice
  queries by 1000x-10000x using real data from public PlanetLab DB.

17 years ago- defaulted sites.enabled to true
Tony Mack [Fri, 26 Jan 2007 19:11:41 +0000 (19:11 +0000)]
- defaulted sites.enabled to true

17 years ago- added 'enabled' to Site.fields
Tony Mack [Fri, 26 Jan 2007 18:56:24 +0000 (18:56 +0000)]
- added 'enabled' to Site.fields

17 years ago- added 'enabled' field to sites table and view_sites view
Tony Mack [Fri, 26 Jan 2007 18:55:58 +0000 (18:55 +0000)]
- added 'enabled' field to sites table and view_sites view

17 years ago- import Sites
Mark Huang [Thu, 25 Jan 2007 21:59:31 +0000 (21:59 +0000)]
- import Sites

17 years ago- only check expires if slice isn't being deleted
Mark Huang [Fri, 19 Jan 2007 20:45:00 +0000 (20:45 +0000)]
- only check expires if slice isn't being deleted

17 years ago- added logging variable 'object_type'
Tony Mack [Fri, 19 Jan 2007 20:36:33 +0000 (20:36 +0000)]
- added logging variable 'object_type'

17 years ago- added logging variable 'object_type'
Tony Mack [Fri, 19 Jan 2007 20:25:26 +0000 (20:25 +0000)]
- added logging variable 'object_type'

17 years ago- added logging variable 'object_type'
Tony Mack [Fri, 19 Jan 2007 20:13:34 +0000 (20:13 +0000)]
- added logging variable 'object_type'

17 years ago- added logging variable 'object_type'
Tony Mack [Fri, 19 Jan 2007 19:33:41 +0000 (19:33 +0000)]
- added logging variable 'object_type'

17 years ago- added 'object_type' to Event.fields
Tony Mack [Fri, 19 Jan 2007 17:50:46 +0000 (17:50 +0000)]
- added 'object_type' to Event.fields

17 years ago- log object_type
Tony Mack [Fri, 19 Jan 2007 17:49:02 +0000 (17:49 +0000)]
- log object_type

17 years ago- added 'object_type' field to events table
Tony Mack [Fri, 19 Jan 2007 17:46:05 +0000 (17:46 +0000)]
- added 'object_type' field to events table

17 years ago- - added logging variable 'object_type'
Tony Mack [Fri, 19 Jan 2007 17:43:08 +0000 (17:43 +0000)]
- - added logging variable 'object_type'

17 years ago- added 'message' instance variable (high level description of this event)
Tony Mack [Fri, 19 Jan 2007 17:36:05 +0000 (17:36 +0000)]
- added 'message' instance variable (high level description of this event)

17 years ago- use API_CA_SSL_CRT (root CA authority cert), not API_SSL_CRT (actual
Mark Huang [Fri, 19 Jan 2007 17:22:39 +0000 (17:22 +0000)]
- use API_CA_SSL_CRT (root CA authority cert), not API_SSL_CRT (actual
  web server cert), for verifying server cert integrity

17 years ago- fix getpass() reference
Mark Huang [Wed, 17 Jan 2007 22:14:38 +0000 (22:14 +0000)]
- fix getpass() reference

17 years ago- add VerifyPerson() back
Mark Huang [Wed, 17 Jan 2007 22:10:19 +0000 (22:10 +0000)]
- add VerifyPerson() back

17 years ago- Verify a new (must be disabled) user's e-mail address and registration
Mark Huang [Wed, 17 Jan 2007 22:10:10 +0000 (22:10 +0000)]
- Verify a new (must be disabled) user's e-mail address and registration

17 years ago- overloading verification_key for account verification as well (i.e.,
Mark Huang [Wed, 17 Jan 2007 22:09:32 +0000 (22:09 +0000)]
- overloading verification_key for account verification as well (i.e.,
  before they are enabled); so only allow reset of enabled accoutns
- use new Unicode clean sendmail interface
- fix typo

17 years ago- use email and smtplib classes to make our e-mails Unicode compatible
Mark Huang [Wed, 17 Jan 2007 22:08:32 +0000 (22:08 +0000)]
- use email and smtplib classes to make our e-mails Unicode compatible

17 years ago- call GetNodes
Tony Mack [Tue, 16 Jan 2007 23:03:21 +0000 (23:03 +0000)]
- call GetNodes

17 years ago- subclass correct class
Tony Mack [Tue, 16 Jan 2007 23:01:25 +0000 (23:01 +0000)]
- subclass correct class

17 years ago- fix typo
Tony Mack [Tue, 16 Jan 2007 22:59:38 +0000 (22:59 +0000)]
- fix typo

17 years ago- fix returns documentation
Tony Mack [Tue, 16 Jan 2007 22:57:32 +0000 (22:57 +0000)]
- fix returns documentation

17 years ago- change variable name
Tony Mack [Tue, 16 Jan 2007 22:56:18 +0000 (22:56 +0000)]
- change variable name

17 years ago- call GetSlices and GetPersons
Tony Mack [Tue, 16 Jan 2007 22:50:49 +0000 (22:50 +0000)]
- call GetSlices and GetPersons

17 years ago- call GetSlices
Tony Mack [Tue, 16 Jan 2007 22:41:49 +0000 (22:41 +0000)]
- call GetSlices

17 years ago- call DeletePersonFromSlice
Tony Mack [Tue, 16 Jan 2007 22:30:17 +0000 (22:30 +0000)]
- call DeletePersonFromSlice

17 years ago- call AddPersonToSlice
Tony Mack [Tue, 16 Jan 2007 22:26:53 +0000 (22:26 +0000)]
- call AddPersonToSlice

17 years ago- subclass the correct class
Tony Mack [Tue, 16 Jan 2007 22:20:55 +0000 (22:20 +0000)]
- subclass the correct class

17 years ago- call DeleteSlice
Tony Mack [Tue, 16 Jan 2007 22:19:21 +0000 (22:19 +0000)]
- call DeleteSlice

17 years ago- subclass the correct class
Tony Mack [Tue, 16 Jan 2007 22:13:24 +0000 (22:13 +0000)]
- subclass the correct class

17 years ago- fix errors
Tony Mack [Tue, 16 Jan 2007 20:48:30 +0000 (20:48 +0000)]
- fix errors
- return what the old api returned

17 years ago- return hostnames instead of node_ids
Tony Mack [Tue, 16 Jan 2007 19:14:10 +0000 (19:14 +0000)]
- return hostnames instead of node_ids
- return emails instead of person_ids

17 years ago- fix errors
Tony Mack [Tue, 16 Jan 2007 19:02:20 +0000 (19:02 +0000)]
- fix errors

17 years ago- use PLC_WWW_SSL_PORT
Mark Huang [Tue, 16 Jan 2007 17:33:06 +0000 (17:33 +0000)]
- use PLC_WWW_SSL_PORT

17 years agoregenerate
Mark Huang [Tue, 16 Jan 2007 17:16:54 +0000 (17:16 +0000)]
regenerate

17 years ago- fix syntax errors
Mark Huang [Tue, 16 Jan 2007 17:15:22 +0000 (17:15 +0000)]
- fix syntax errors

17 years ago- fix slice name reference
Mark Huang [Tue, 16 Jan 2007 17:15:11 +0000 (17:15 +0000)]
- fix slice name reference

17 years agoreplace with single function ResetPassword()
Mark Huang [Tue, 16 Jan 2007 17:09:19 +0000 (17:09 +0000)]
replace with single function ResetPassword()

17 years ago- accept message_filter and return_fields
Mark Huang [Tue, 16 Jan 2007 17:08:53 +0000 (17:08 +0000)]
- accept message_filter and return_fields

17 years ago- fix log message
Mark Huang [Tue, 16 Jan 2007 17:08:11 +0000 (17:08 +0000)]
- fix log message

17 years ago- send account registration e-mails from the website
Mark Huang [Tue, 16 Jan 2007 17:07:39 +0000 (17:07 +0000)]
- send account registration e-mails from the website

17 years ago- explicitly set new person['enabled'] field to False
Mark Huang [Tue, 16 Jan 2007 17:06:49 +0000 (17:06 +0000)]
- explicitly set new person['enabled'] field to False

17 years ago- update validate_timestamp() docs
Mark Huang [Tue, 16 Jan 2007 17:06:12 +0000 (17:06 +0000)]
- update validate_timestamp() docs

17 years ago- verification_key and verification_expires can be unset
Mark Huang [Tue, 16 Jan 2007 17:05:41 +0000 (17:05 +0000)]
- verification_key and verification_expires can be unset
- send account registration e-mails from the website, not from the API

17 years ago- log event if .message attribute is set
Mark Huang [Tue, 16 Jan 2007 17:04:08 +0000 (17:04 +0000)]
- log event if .message attribute is set

17 years ago- no need to initialize sendmail instance anymore
Mark Huang [Tue, 16 Jan 2007 17:03:15 +0000 (17:03 +0000)]
- no need to initialize sendmail instance anymore

17 years ago- cast verification_expires to int
Mark Huang [Tue, 16 Jan 2007 17:03:01 +0000 (17:03 +0000)]
- cast verification_expires to int

17 years ago- just call sendmail instead of using smtplib. sendmail is required for
Mark Huang [Tue, 16 Jan 2007 17:02:52 +0000 (17:02 +0000)]
- just call sendmail instead of using smtplib. sendmail is required for
  MyPLC anyway, and gets us queueing for free.

17 years ago- fix to support Filter
Mark Huang [Tue, 16 Jan 2007 16:55:21 +0000 (16:55 +0000)]
- fix to support Filter

17 years agoInitial checkin of deprecated API implementation
Tony Mack [Tue, 16 Jan 2007 16:53:59 +0000 (16:53 +0000)]
Initial checkin of deprecated API implementation

17 years agodoes not use pycurl if cacert is None - this is for when regular non-plc boxes are...
Thierry Parmentelat [Tue, 16 Jan 2007 16:25:12 +0000 (16:25 +0000)]
does not use pycurl if cacert is None - this is for when regular non-plc boxes are used as clients

17 years ago- does not exit if errors are found
Thierry Parmentelat [Tue, 16 Jan 2007 16:24:21 +0000 (16:24 +0000)]
- does not exit if errors are found
- does not create stuff as person_id=1 since these items cannot be synced by new algorithm

17 years ago- fix docs
Mark Huang [Mon, 15 Jan 2007 22:47:29 +0000 (22:47 +0000)]
- fix docs

17 years ago- fix comment
Mark Huang [Fri, 12 Jan 2007 06:17:33 +0000 (06:17 +0000)]
- fix comment

17 years agoTest script for peer caching. Intended for testing multiple PLCs
Mark Huang [Fri, 12 Jan 2007 00:15:22 +0000 (00:15 +0000)]
Test script for peer caching. Intended for testing multiple PLCs
running on the same machine in different chroots.

17 years ago- don't disable users when randomly updating their info
Mark Huang [Fri, 12 Jan 2007 00:15:03 +0000 (00:15 +0000)]
- don't disable users when randomly updating their info

17 years ago- import Debug.log
Mark Huang [Thu, 11 Jan 2007 23:24:05 +0000 (23:24 +0000)]
- import Debug.log

17 years ago- fix add_object() usage
Mark Huang [Thu, 11 Jan 2007 23:00:36 +0000 (23:00 +0000)]
- fix add_object() usage

17 years ago- print the actual exception
Mark Huang [Thu, 11 Jan 2007 22:05:15 +0000 (22:05 +0000)]
- print the actual exception

17 years ago- test script utility class
Mark Huang [Thu, 11 Jan 2007 21:27:49 +0000 (21:27 +0000)]
- test script utility class
- can be run standalone or as an instance

17 years agofix config pointer
Mark Huang [Thu, 11 Jan 2007 20:45:29 +0000 (20:45 +0000)]
fix config pointer

17 years ago- be more verbose about node and slice caching errors
Mark Huang [Thu, 11 Jan 2007 16:12:36 +0000 (16:12 +0000)]
- be more verbose about node and slice caching errors

17 years ago- does basically the same thing as Cache.py, except since we have cached
Mark Huang [Thu, 11 Jan 2007 06:35:17 +0000 (06:35 +0000)]
- does basically the same thing as Cache.py, except since we have cached
  foreign identifiers, the problem is somewhat easier

17 years ago- remove unnecessary slice attribute imports
Mark Huang [Thu, 11 Jan 2007 06:24:07 +0000 (06:24 +0000)]
- remove unnecessary slice attribute imports

17 years agoReturns lists of local objects that a peer should cache in its
Mark Huang [Thu, 11 Jan 2007 06:23:26 +0000 (06:23 +0000)]
Returns lists of local objects that a peer should cache in its
database as foreign objects. Also returns the list of foreign
nodes in this database, for which the calling peer is
authoritative, to assist in synchronization of slivers.

See the implementation of RefreshPeer for how this data is used.

17 years ago- since this will no longer be used for passing information to peers, it
Mark Huang [Thu, 11 Jan 2007 06:12:11 +0000 (06:12 +0000)]
- since this will no longer be used for passing information to peers, it
  will only be called by Node Manager and it only makes sense to return
  those slivers associated with the calling node (which must be a local
  node)
- this greatly simplifies most of the logic

17 years ago- remove PLCCheckLocal functions, be more explicit about the error in
Mark Huang [Thu, 11 Jan 2007 06:01:55 +0000 (06:01 +0000)]
- remove PLCCheckLocal functions, be more explicit about the error in
  each method
- redact password from events message

17 years ago- fix hidden fields removal
Mark Huang [Thu, 11 Jan 2007 06:00:19 +0000 (06:00 +0000)]
- fix hidden fields removal

17 years ago- simplify role validation
Mark Huang [Thu, 11 Jan 2007 05:59:09 +0000 (05:59 +0000)]
- simplify role validation
- remove PLCCheckLocal functions, be more explicit about the error in
  each method

17 years ago- Allow foreign users to be added to local slices and local users to be
Mark Huang [Thu, 11 Jan 2007 05:58:03 +0000 (05:58 +0000)]
- Allow foreign users to be added to local slices and local users to be
  added to foreign slices (and, of course, local users to be added to
  local slices).

17 years ago- allow foreign keys to be blacklisted
Mark Huang [Thu, 11 Jan 2007 05:55:54 +0000 (05:55 +0000)]
- allow foreign keys to be blacklisted

17 years ago- remove PLCCheckLocal functions, be more explicit about the error in
Mark Huang [Thu, 11 Jan 2007 05:55:36 +0000 (05:55 +0000)]
- remove PLCCheckLocal functions, be more explicit about the error in
  each method
- Thierry: PIs are allowed to add nodes to any of the slices at their
  sites whether or not they are a member of those slices; otherwise, if
  you're not a PI, you're only allowed to add nodes to slices that you
  are a member of

17 years ago- simplify role validation
Mark Huang [Thu, 11 Jan 2007 05:53:14 +0000 (05:53 +0000)]
- simplify role validation
- remove PLCCheckLocal functions, be more explicit about the error in
  each method

17 years ago- Allow foreign users to be added to local slices and local users to be
Mark Huang [Thu, 11 Jan 2007 05:51:36 +0000 (05:51 +0000)]
- Allow foreign users to be added to local slices and local users to be
  added to foreign slices (and, of course, local users to be added to
  local slices).

17 years ago- remove PLCCheckLocal functions, be more explicit about the error in
Mark Huang [Thu, 11 Jan 2007 05:46:58 +0000 (05:46 +0000)]
- remove PLCCheckLocal functions, be more explicit about the error in
  each method

17 years ago- list join_tables that reference slices
Mark Huang [Thu, 11 Jan 2007 05:40:19 +0000 (05:40 +0000)]
- list join_tables that reference slices
- add peer_slice_id to fields
- use Row.validate_timestamp
- use Row.add_object and Row.remove_object

17 years ago- remove from peer caching
Mark Huang [Thu, 11 Jan 2007 05:39:35 +0000 (05:39 +0000)]
- remove from peer caching

17 years ago- remove peer_id
Mark Huang [Thu, 11 Jan 2007 05:39:27 +0000 (05:39 +0000)]
- remove peer_id

17 years ago- remove unnecessary import of NodeGroups
Mark Huang [Thu, 11 Jan 2007 05:39:16 +0000 (05:39 +0000)]
- remove unnecessary import of NodeGroups
- list join_tables that reference sites
- add peer_site_id
- use Row.validate_timestamp
- use Row.add_object and Row.remove_object

17 years ago- remove problematic Persons -> Sites -> Persons circular import
Mark Huang [Thu, 11 Jan 2007 05:37:55 +0000 (05:37 +0000)]
- remove problematic Persons -> Sites -> Persons circular import
- add peer_person and person_key to join_tables
- add peer_person_id to fields
- use Row.add_object() and Row.remove_object()

17 years ago- list join_tables that reference peers
Mark Huang [Thu, 11 Jan 2007 05:33:24 +0000 (05:33 +0000)]
- list join_tables that reference peers
- remove slice attributes from peer caching
- add validate_peername()
- add join/unjoin functions for associating peers with cached objects
- fix __getattr__() recursion

17 years ago- add peer_node to join_tables
Mark Huang [Thu, 11 Jan 2007 05:31:33 +0000 (05:31 +0000)]
- add peer_node to join_tables
- add peer_node_id
- use Row.validate_timestamp directly

17 years ago- use view_keys to get peer_id and peer_key_id
Mark Huang [Thu, 11 Jan 2007 05:30:53 +0000 (05:30 +0000)]
- use view_keys to get peer_id and peer_key_id
- add peer_key to join_tables

17 years ago- remove PLCCheckLocal functions, be more explicit about the error in
Mark Huang [Thu, 11 Jan 2007 05:29:47 +0000 (05:29 +0000)]
- remove PLCCheckLocal functions, be more explicit about the error in
  each method

17 years ago- register a few more globals for backward compatibility
Mark Huang [Thu, 11 Jan 2007 05:28:49 +0000 (05:28 +0000)]
- register a few more globals for backward compatibility

17 years ago- only allow local users (i.e. peer_id = None) to authenticate using
Mark Huang [Thu, 11 Jan 2007 05:28:21 +0000 (05:28 +0000)]
- only allow local users (i.e. peer_id = None) to authenticate using
  password and session authentication
- only allow local keys to be used for GPG authentication
- only allow local nodes to authenticate using session or boot
  authentication

17 years ago- remove peer_id from all object tables
Mark Huang [Thu, 11 Jan 2007 05:26:34 +0000 (05:26 +0000)]
- remove peer_id from all object tables
- replace with join tables and augmented views
- set invalid persons.password if not set when inserting
- make person_key.key_id the primary key (only one person per key)
- remove unused node, anonymous, and peer roles (these are virtual roles
  in the API)
- set default events.runtime
- add events.message to view_events
- remove slice_attribute_types and slice_attributes from peer caching

17 years ago- save url
Mark Huang [Wed, 10 Jan 2007 21:04:40 +0000 (21:04 +0000)]
- save url
- try to continue with initialized values if config file is not specified

17 years ago- add gpg_export() to export keys from a public keyring to ASCII
Mark Huang [Wed, 10 Jan 2007 20:18:52 +0000 (20:18 +0000)]
- add gpg_export() to export keys from a public keyring to ASCII

17 years agoongoing work - uses new Shell, and creates peers with gpg key and certs
Thierry Parmentelat [Wed, 10 Jan 2007 17:40:30 +0000 (17:40 +0000)]
ongoing work - uses new Shell, and creates peers with gpg key and certs

17 years ago- use Row.add_object and Row.remove_object
Mark Huang [Tue, 9 Jan 2007 19:16:18 +0000 (19:16 +0000)]
- use Row.add_object and Row.remove_object

17 years ago- install plcsh instead of Shell.py
Mark Huang [Tue, 9 Jan 2007 16:33:16 +0000 (16:33 +0000)]
- install plcsh instead of Shell.py

17 years agorevert accidental (too early) checkin
Mark Huang [Tue, 9 Jan 2007 16:23:47 +0000 (16:23 +0000)]
revert accidental (too early) checkin

17 years agorevert accidental (too early) checkin
Mark Huang [Tue, 9 Jan 2007 16:22:50 +0000 (16:22 +0000)]
revert accidental (too early) checkin