Statistics
| Branch: | Tag: | Revision:

root @ 954ff0d8

# Date Author Comment
954ff0d8 02/28/2014 02:19 pm Dimitris Aragiorgis

deploy: Fix case where node doesn't have authorized_keys

Since we are inserting ssh keys, we first backup existing
authorized_keys and append them later to our uploaded file.

If authorized_keys did not exist, neither will authorized_keys.bak .
So `test -e` in the initialize method of SSH component will...

1ec2f17e 02/28/2014 01:33 pm Christos Stavrakakis

cyclades: Fix type error

ff5edb80 02/28/2014 01:00 pm Giorgos Korfiatis

Update Copyright for project-related changes

Update Copyright for files merged into develop in 2014 concerning the new
projects mechanism.

5d3a191e 02/28/2014 11:10 am Giorgos Korfiatis

astakos: Some more project tests

7e4cd6c0 02/28/2014 11:10 am Giorgos Korfiatis

cyclades: Skip enforcing projects if users specified

If list of users to check is given, we should not report violations on
projects, because this may affect non-specified users.

a6e6fe48 02/27/2014 04:16 pm Christos Stavrakakis

cyclades: Common function to get object by ID

Create common helper function, for command line tools, to get an object
from DB by it's ID, and raise the appropriate command error if the
object does not exist or the ID is invalid.

07661d4d 02/27/2014 11:37 am Christos Stavrakakis

snf_django: Add pprint_table to SynnefoCommand

Add 'pprint_table' to SynnefoCommand, which is just a wrapper around
'snf_django.management.utils.pprint_table' using commands stdout.

23808592 02/26/2014 05:41 pm Christos Stavrakakis

cyclades: Major refactor to plankton backend

  • Rename ImageBackend to PlanktonBackend
  • Rewrite PlanktonBackend methods in order that they refer to Pithos
    objects by their UUID
  • Convert PlanktonBackend to context manager that is responsible for
    returning the PithosBackend connection back to the pool, and remove...
def409e0 02/26/2014 05:38 pm Giorgos Korfiatis

astakos: Fix unbound reference

fa532396 02/26/2014 04:41 pm Christos Stavrakakis

snf_django: Use option groups in SynnefoCommand

Extend SynnefoCommand to use option groups to distinguish between common
and command-specific options, by overriding the 'create_parser' method.
The command specific options must be declared in the
'command_option_list' attribute of the SynnefoCommand. Also, we use a...

2be50766 02/26/2014 12:02 pm Christos Stavrakakis

cyclades: Create common '-u/--user' option

Create 'cli_option' module, to contain the common definitions for
options of Synnefo management commands.

Currently, it contains only the '--user' option definition which accepts
user's UUID or email and annotates the command options with the...

b0b6d5ab 02/25/2014 04:36 pm Giorgos Korfiatis

docs: Mention new projects in upgrade notes

65c37e16 02/25/2014 04:36 pm Giorgos Korfiatis

astakos: Set limits at enable time in migration

fd050112 02/25/2014 04:36 pm Giorgos Korfiatis

docs: Upgrade notes sketch for 0.16

0486dc60 02/25/2014 01:15 pm Giorgos Korfiatis

astakos: Fix/disable form tests

Fix test_ui_visible; disable test_applications until the development of the
new project views has matured.

39f723aa 02/24/2014 06:58 pm Christos Stavrakakis

cyclades: Add 'public' attribute to ports

Extend ports (NetworkInterface model) with 'public' attribute, to
indicate that the port is connected to a public network without getting
the network from the DB. Add corresponding DB migration and update the
DB models factory....

4e3789fd 02/24/2014 03:33 pm Christos Stavrakakis

cyclades: Add list of subnet IDs to network model

Extend Network model with 'subnet_ids' attribute. This attribute is a
list with the IDs of the subnet that belong to this network and is
stored in DB as a comma seperated list of integers.

This information is already contained in the Subnet model. However, we...

49fb00cc 02/21/2014 04:05 pm Ilias Tsitsimpis

snf-ci: Search all public networks

When creating a new floating IP try all public networks
until we find one that is not full.

dd759d76 02/20/2014 04:41 pm Giorgos Korfiatis

astakos: Fix states in project migration

Denying an application does not set the project deleted. It must still be
visible until the application is dismissed.

c8922d01 02/20/2014 04:41 pm Giorgos Korfiatis

snf_django: Properly chain `exclude' queries

Although chained filters, e.g. filter(p1).filter(p2), can be summed up as
filter(p1, p2), this is not the case with exclude. If you want to exclude
those selected by p1 as well as those selected by p2, you need...

c2a78208 02/20/2014 04:41 pm Giorgos Korfiatis

astakos: Omit base projects by default in listing

Add option `--base-projects' to include base projects in the output of
project-list management command.

f3bdab04 02/20/2014 04:41 pm Giorgos Korfiatis

cyclades: Fix list objects in enforce

Convert set back to list, because the code further down requires an
indexable object.

60c6bb5e 02/20/2014 01:20 pm Constantinos Venetsanopoulos

docs: Regions, Zones, Clusters and VM mobility

Add a section in the Admin Guide documenting mobility and failure
domains: Regions, Zones, Clusters.

9c6d629f 02/19/2014 06:19 pm Giorgos Korfiatis

Remove keypath, use common dict operations instead

Replace get_path with dict indexing. Remove unused setting
`CYCLADES_CUSTOMIZE_SERVICES' that used set_path. Remove the util/keypath.py
module.

dfc7aab7 02/19/2014 06:19 pm Giorgos Korfiatis

Replace set_path with defaultdict in quota handling

2a811e37 02/19/2014 06:19 pm Giorgos Korfiatis

Revert "common: Do not encode key paths as string"

This reverts commit b10f66b9a20fb9dca0a56c88d5d224f1e3fa25ea.

7b4487a0 02/18/2014 04:17 pm Ilias Tsitsimpis

ci: Don't install kamaki from wheezy repos

Install always the lates kamaki. This is needed because we may want to
install a kamaki that supports new features but hasn't been release yet
(i.e. isn't stable enough). Instead we upload it to the unstable repo.

f4192236 02/18/2014 04:17 pm Ilias Tsitsimpis

ci: Remove one_node_squeeze

Synnefo doesn't support squeeze anymore.

bdb44fda 02/17/2014 01:35 pm Sofia Papagiannaki

pithos: Pep8 fixes

2560c061 02/17/2014 12:36 pm Sofia Papagiannaki

pithos: Restrict block uploading

40f1f336 02/13/2014 04:23 pm Giorgos Korfiatis

Merge branch 'feature-pool-projects' into develop

Refs #5007 #5024

0f2bd3f9 02/13/2014 04:20 pm Giorgos Korfiatis

docs: Update project and quota API spec

ef5d2c1c 02/13/2014 04:20 pm Giorgos Korfiatis

Changelog for pool projects

f3456fc8 02/13/2014 04:20 pm Giorgos Korfiatis

Update admin guide for pool projects

4cf2178f 02/13/2014 04:20 pm Ilias Tsitsimpis

burnin: Fix a bug in '_delete_floating_ips'

Renew the list of floating IP objects as it may have been changed
(i.e. a port may have been deleted).

9355a604 02/13/2014 04:20 pm Ilias Tsitsimpis

burnin: Change pylint disable-msg pragmas

'disable-msg' has been deprecated in favor of 'disable'.

d0bb677f 02/13/2014 04:20 pm Ilias Tsitsimpis

burnin: Skip whole testsuite

Add functionality to allow burnin to skip a testsuite after
it has been started.

a6e5a05f 02/13/2014 04:20 pm Ilias Tsitsimpis

burnin: Add QuotasTestSuite

c2f037ff 02/13/2014 04:20 pm Ilias Tsitsimpis

burnin: Rewrite check_quotas functionality

This patch enhances check_quotas functionality for better supporting
projects quotas.

2eb2f223 02/13/2014 04:20 pm Ilias Tsitsimpis

snf-ci: Add 'shell' command

411cbbf4 02/13/2014 04:20 pm Ilias Tsitsimpis

Test 'reassign_server' functionality

d9fca80b 02/13/2014 04:20 pm Giorgos Korfiatis

astakos: Do a PUT to modify project, not POST

Replace POST with PUT in the API call the modifies a project.

a6a70f40 02/13/2014 04:20 pm Giorgos Korfiatis

cyclades: Include project in server management commands

4334d1c8 02/13/2014 04:20 pm Giorgos Korfiatis

astakosclient: Update project calls to new scheme

Remove get application calls and set application_action to post to the
project endpoint.

9efd0075 02/13/2014 04:20 pm Kostas Papadimitriou

astakos: A bit of refactoring of projects views

- Update project views to work with the updated projects logic
- Use api.projects methods when applicable
- Common project view decorator
- Common view for app/project details

8735e44e 02/13/2014 04:20 pm Kostas Papadimitriou

astakos: Filter out not associated sources from user quota api response

return only resources that are related to projects the user has active
membership to.

4df9dfc9 02/13/2014 04:20 pm Kostas Papadimitriou

astakos: Display both summed up and per project quota in usage view

787f7372 02/13/2014 04:20 pm Giorgos Korfiatis

snf_django: Fix select_related in ListCommand

Pass all related fields in a single call, because select_related does not
chain as expected (yet). See https://code.djangoproject.com/ticket/16855

Also pass prefetch_related in a uniform way.

0de7c5a7 02/13/2014 04:20 pm Giorgos Korfiatis

astakos: Make project-list a ListCommand

Use --filter-by to filter by owner and name.

Refs #5014

b1f6aea8 02/13/2014 04:20 pm Giorgos Korfiatis

snf_django: Factor out resource reconcile

Generalize the checks operated during resource reconciliation so that they
can be used in all Synnefo components.

Adapt checks for user/project limits, include checks for project limits.

2e2fc330 02/13/2014 04:20 pm Giorgos Korfiatis

cyclades: Adapt resource reconciliation

Take projects into account when computing resource usage and comparing
with the quotaholder values.

eb83c485 02/13/2014 04:20 pm Sofia Papagiannaki

pithos: Update reconcile-resources-pithos command

f8cac8c7 02/13/2014 04:20 pm Giorgos Korfiatis

astakos: Adapt resource reconciliation

Assume base project when reconciling astakos resources.

87a86b71 02/13/2014 04:20 pm Ilias Tsitsimpis

burnin: Support the new quotas API

GetQuotas now returns a dictionary with the project's uuids as keys.
This patch changes burnin to support that.

9202a57d 02/13/2014 04:20 pm Giorgos Korfiatis

astakos: Fix project notification recipients

Notify applicant on an application action; notify project owner on project
actions if owner exists.

6debe235 02/13/2014 04:20 pm Giorgos Korfiatis

astakos: Disallow base project termination

Base projects accompany users and should not be arbitrarily terminated.

edc51a21 02/13/2014 04:20 pm Giorgos Korfiatis

astakos: Add member mode in GET projects

Get only active projects where request user is an active member if mode is
set to `member'.

a1ff970b 02/13/2014 04:20 pm Giorgos Korfiatis

astakos: Filter with GET params in project API

Pass GET options in project API calls as GET parameters rather than a json
body.

02353a1a 02/13/2014 04:20 pm Giorgos Korfiatis

cyclades: Expose user and tenant ID of floating IPs

Include user_id and tenant_id in the API details of a floating IP.

2070c5f8 02/13/2014 04:20 pm Giorgos Korfiatis

astakos: Update tests

b5780d85 02/13/2014 04:20 pm Giorgos Korfiatis

cyclades: Add field project in models

Add field `project' and initialize it to `userid' for all VMs, networks and
floating IPs. This means that all resources are assigned to the owner's base
project.

da9bcceb 02/13/2014 04:20 pm Giorgos Korfiatis

astakosclient: Hide provision complexity

Both issue_one_commission and the new call issue_commission_generic act
as wrappers on top of _issue_commission. They create the appropriate
project-level provisions, based on the original ones provided by the
astakosclient user.

1f4a46dd 02/13/2014 04:20 pm Giorgos Korfiatis

astakosclient: Support resource reassignment

Add issue_commission wrapper for assigning resources to a new project.

47c27955 02/13/2014 04:20 pm Giorgos Korfiatis

cyclades: Assign new resources to a project

Add optional parameter `project' in API calls that create VMs, networks,
and floating IPs. If missing, user's base project is assumed (same uuid
as the user).

13f1e2ff 02/13/2014 04:20 pm Giorgos Korfiatis

cyclades: Inspect qh NotFound response

Since a user can now specify the project where a resource is assigned,
user-provided data do reach the quotaholder. A NotFound response is
thus not necessarily an internal error; the user may just not be a
member of the input project. Query the quotaholder to find out whether...

5dc97d69 02/13/2014 04:20 pm Giorgos Korfiatis

astakos: Add command project-modify

Add a management command that directly modifies an initialized project.

fe4000a3 02/13/2014 04:20 pm Giorgos Korfiatis

quotaholder: Do not check provision integrity

The API is responsible to provide valid data to the backend.

daa780fa 02/13/2014 04:20 pm Giorgos Korfiatis

quotaholder: Merge similar provisions

Make sure that issue_commission handles a single provision per (holder,
source, resource) tuple by merging similar provisions.

99667854 02/13/2014 04:20 pm Giorgos Korfiatis

cyclades: Reassign resources

Add API calls to assign a VM, network, or floating IP to a new project.

78e1f8da 02/13/2014 04:20 pm Sofia Papagiannaki

pithos: Add support for project originated quota

Introduce ``project`` container policy. The value of this policy denotes
the project from which the container quota originate.

Further changes:
  • domain argument in get_{account|container|object}_meta backend methods...
70c51e5d 02/13/2014 04:20 pm Giorgos Korfiatis

cyclades: use project as tenant_id in API

7bc909c7 02/13/2014 04:20 pm Giorgos Korfiatis

cyclades: Update holdings in tests

e492238f 02/13/2014 04:20 pm Giorgos Korfiatis

pithos: Fix quota reporting during moves

Report quota change when moving across accounts or across containers
assigned to different projects.

bf644f91 02/13/2014 04:20 pm Giorgos Korfiatis

astakos: Refactor resource-modify

Remove interactive operations, rename default-quota to base-default.

ba8c50e5 02/13/2014 04:20 pm Giorgos Korfiatis

astakos: Modify resource project default

Add support in resource-modify for changing the project_default.

dccd7fa0 02/13/2014 04:20 pm Giorgos Korfiatis

astakos: Get service related project quota

Add API call for a service to request the project quota for its own
resources.

f600b74e 02/13/2014 04:20 pm Giorgos Korfiatis

cyclades: Enforce quota per project

Take project into account when checking and enforcing quota violations. Add
option to restrict check to a certain project.

a53ec93b 02/13/2014 04:20 pm Giorgos Korfiatis

astakos: Sync project-based quota

Update quota code to take into account the differentiated sources.
There is no more need to lock the user when updating quota; locking
the project is now adequate.

Update quota listing in management commands; introduce option --quota in...

44d950c6 02/13/2014 04:20 pm Giorgos Korfiatis

astakos: Improve printing in quota-verify

Also add option to delete project and user holdings that do not correspond
to actual astakos entities.

64a43a9a 02/13/2014 04:20 pm Giorgos Korfiatis

astakos: Disable setting user base quota

Remove functionality from management commands `quota' and `user-modify'
for setting base quota. They will now be handled through projects.

362dadaa 02/13/2014 03:19 pm Giorgos Korfiatis

astakos: Adapt to new project/app scheme

c3763b39 02/13/2014 03:19 pm Giorgos Korfiatis

astakos: Make ProjectResourceGrant fields non null

Field project_capacity now requires a value; field project_application
was mistakenly set nullable.

2c1a5a15 02/13/2014 03:19 pm Giorgos Korfiatis

astakos: Introduce base projects

Every user is associated with a special-purpose `base' project. Its
mission is to manage the user's base quota.

2c960473 02/13/2014 03:19 pm Giorgos Korfiatis

astakos: Make base project when creating user

Make base project along with the user with the same uuid. Enable the
project upon user acceptance.

d1c95ad9 02/13/2014 03:19 pm Giorgos Korfiatis

astakos: Mark project membership as initialized

Add flag `initialized' on ProjectMembership. It is set to true once a user
is accepted. It is used to distinguish users that have registered
project quota (but may have been removed since then).

508e13e3 02/13/2014 03:19 pm Giorgos Korfiatis

quotaholder: Migrate holdings for pool projects

Recreate quota holdings for all initialized projects and memberships.

552df4cd 02/12/2014 06:48 pm Giorgos Korfiatis

astakos: Fill grants' project_capacity

Each resource grant that a project provides is now also associated with
a project-level limit. This is set by consulting the existing user-level
limit and the max members allowed. If the latter limit is not set, we
consider the project's current number of active members.

5e3c112a 02/12/2014 06:48 pm Giorgos Korfiatis

astakos: Add project default in resources

Add field `project_default' in resources. This will serve as a skeleton to
fill project quota (both project-level and member-level limits) for
resources not specified by the application.

The field is initialized by consulting the default base quota (field...

8af74daf 02/12/2014 06:48 pm Giorgos Korfiatis

astakos: Make limit_on_members_number a bigint

We need bigint in order to represent infinite as 2**63-1.

11922155 02/12/2014 06:48 pm Giorgos Korfiatis

astakos: Replace application None values

None will from now on denote a missing field of the application. Use empty
string for missing string and the conventional max int (2**63-1) for a
missing limit.

2ffe077d 02/12/2014 06:48 pm Giorgos Korfiatis

astakos: Store all project info on the project model

A project entry will contain all information needed to operate a project.
An application will store just the information provided by the applicant.

88f5242e 02/12/2014 06:47 pm Giorgos Korfiatis

astakos: Identify projects with a uuid

Introduce field `uuid'; use it to refer to projects in the API and the
management commands.

9255938e 02/10/2014 02:40 pm Kostas Papadimitriou

astakos: Typo fix

7f3bbafa 02/10/2014 02:40 pm Giorgos Korfiatis

astakos: Reduce import clutter in functions.py

84498bca 02/10/2014 02:40 pm Giorgos Korfiatis

astakos: Refactor notification code

Introduce generic notify functions that consult a dict for a given action.

74c9dfca 02/10/2014 02:40 pm Giorgos Korfiatis

astakos: Remove unneeded argument

62d30634 02/10/2014 02:40 pm Giorgos Korfiatis

astakos: Introduce private projects

A private project can only be accessed by its owner and its members.
No user can join the project; but the owner can enroll members.

4398adc9 02/10/2014 02:36 pm Giorgos Korfiatis

docs: New project design wrt applications

b10f66b9 02/10/2014 01:36 pm Giorgos Korfiatis

common: Do not encode key paths as string

Handle explicitly key paths as lists of keys. This allows the key
to be any python object, as is the case in python dicts.

Provide utility unpack() to convert from a string representation to
a list of keys. It assumes that a key is either a string or an integer...

cd7282a1 02/07/2014 05:10 pm Ilias Tsitsimpis

snf-ci: Fix the branch name for pithos webclient

When cloning the pithos webclient, snf-ci tries to checkout a branch
with the same name as the synnefo one (if such branch exists). To do so
it gets the list of all branches using the 'git branch' command. But...