cyclades: Add field project in models
Add field `project' and initialize it to `userid' for all VMs, networks andfloating IPs. This means that all resources are assigned to the owner's baseproject.
astakosclient: Hide provision complexity
Both issue_one_commission and the new call issue_commission_generic actas wrappers on top of _issue_commission. They create the appropriateproject-level provisions, based on the original ones provided by theastakosclient user.
astakosclient: Support resource reassignment
Add issue_commission wrapper for assigning resources to a new project.
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 uuidas the user).
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 isthus not necessarily an internal error; the user may just not be amember of the input project. Query the quotaholder to find out whether...
astakos: Add command project-modify
Add a management command that directly modifies an initialized project.
quotaholder: Do not check provision integrity
The API is responsible to provide valid data to the backend.
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; lockingthe project is now adequate.
Update quota listing in management commands; introduce option --quota in...
astakos: Improve printing in quota-verify
Also add option to delete project and user holdings that do not correspondto actual astakos entities.
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.
astakos: Adapt to new project/app scheme
astakos: Make ProjectResourceGrant fields non null
Field project_capacity now requires a value; field project_applicationwas mistakenly set nullable.
astakos: Introduce base projects
Every user is associated with a special-purpose `base' project. Itsmission is to manage the user's base quota.
astakos: Make base project when creating user
Make base project along with the user with the same uuid. Enable theproject upon user acceptance.
astakos: Mark project membership as initialized
Add flag `initialized' on ProjectMembership. It is set to true once a useris accepted. It is used to distinguish users that have registeredproject quota (but may have been removed since then).
quotaholder: Migrate holdings for pool projects
Recreate quota holdings for all initialized projects and memberships.
astakos: Fill grants' project_capacity
Each resource grant that a project provides is now also associated witha project-level limit. This is set by consulting the existing user-levellimit and the max members allowed. If the latter limit is not set, weconsider the project's current number of active members.
astakos: Add project default in resources
Add field `project_default' in resources. This will serve as a skeleton tofill project quota (both project-level and member-level limits) forresources not specified by the application.
The field is initialized by consulting the default base quota (field...
astakos: Make limit_on_members_number a bigint
We need bigint in order to represent infinite as 2**63-1.
astakos: Replace application None values
None will from now on denote a missing field of the application. Use emptystring for missing string and the conventional max int (2**63-1) for amissing limit.
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.
astakos: Identify projects with a uuid
Introduce field `uuid'; use it to refer to projects in the API and themanagement commands.
astakos: Typo fix
astakos: Reduce import clutter in functions.py
astakos: Refactor notification code
Introduce generic notify functions that consult a dict for a given action.
astakos: Remove unneeded argument
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.
docs: New project design wrt applications
common: Do not encode key paths as string
Handle explicitly key paths as lists of keys. This allows the keyto be any python object, as is the case in python dicts.
Provide utility unpack() to convert from a string representation toa list of keys. It assumes that a key is either a string or an integer...
snf-ci: Fix the branch name for pithos webclient
When cloning the pithos webclient, snf-ci tries to checkout a branchwith the same name as the synnefo one (if such branch exists). To do soit gets the list of all branches using the 'git branch' command. But...
deploy: Fix snf-ganeti-eventd setup
Enable eventd during prepare() so that after restarting it, initscript will not fail.
Signed-off-by: Dimitris Aragiorgis <dimara@grnet.gr>
Merge branch 'release-0.15' into develop
Tests should succeed even if tearing down DB fails
pithos: Fix TypeError in listing shared & public by me.
burnin: Delete ports attached to floating IPs
This patch fixes a problem with burnin where burnin couldn't delete afloating IP if it was attached to a port, by destroying the port first.
astakos: Change contact form textarea size
Conflicts: snf-deploy/snfdeploy/__init__.py version
cyclades: Fix numerous bugs in plankton views
docs: Fix typos in image api guide
plankton: Fix wrong import
s/lib/util
plankton: Validate parameters and catch assertions
plankton: Fix storing of image properties
Image properties where stored all together as one metadata (JSON dumpedstring). This caused problems with the maximum allowed length of for ametadata value. This commit fixes this by storing each property as aseparate metadata which is prefixed with the 'PROPERTY_PREFIX'.
pithos: Database data migration for the plankton properties.
plankton: Validate meta key/value length
Fail with BadRequest if length of metadata key or value is not valid.
snf-deploy: Fix ASTAKOS_AUTH_URL for cyclades.conf
Add the '/astakos' prefix to the ASTAKOS_AUTH_URL path.
Add missing dhcp_queue option in nfdhcpd template
Since 0.12.0 nfdhcpd serves DHCPv6 requests in order to supply DNSrelated info. So we have to define a new NFQUEUE to mangle thecorresponding packets.
deploy: Fix cyclades configure()
CYCLADES_NODE_IP is needed for customizing cyclades.conftemplate for UI_MEDIA_URL.
deploy: workaround for java console Issue
Java VncViewer class has an issue with self-signed certificates.With existing deployment it does not work if UI_MEDIA_URL usesFQDN. Use the node's IP instead.
NOTE: In a linux (Debian) client add the following in...
docs: Update image api guide
cyclades: Check if the name of an image is null
cyclades: Stats per backend from API
Extend Cyclades stats API endpoint with the ability to return statsonly for a backend. Also, add option to include image stats or not.
plankton: Check that object is an image
Fix bug that caused Plankton to return Pithos files that were notregistered as images. Plankton did not checked that the requested Pithosobject (UUID or URL) was an Image. This was caused because'get_object_meta' call of PithosBackend returns the common metadata for...
cyclades: Fix typo in tests/networks.py
snf-deploy: Fix ownership of snf_pithos database
deploy: add missing ganeti collectd setup
cyclades: Typo fix in api/networks.py
cyclades: Update api/networks.py and typo fixes
Refs #4979
cyclades: Validate fields of API requests
Make sure that all fields of a request (user input) have a valid type.This commit validates 'ports', 'servers' and 'floating_ips' APIs.
cyclades: Detach serial from resource when resolved
cyclades: Delete unused quota code
cyclades: Update serial only if actually resolved
astakos: Display auth provider identifier in user-show command
snf_django: Fix bug in list commands
Fix bug in Synnefo ListCommand where you could not select to print onlythe user email columnd ('-o user.email').
astakos oa2: Fix request authorisation code failures due to unicode issue
If the object to be urlencoded has its own urlencode() method,use this instead.
Refs: #4971
Remove remnants of django-oa2-client
docs: Mention enforce quota output
astakos: Prevent erroneus race conditions in simultaneous signups
Refs: #4966
cyclades: Fix typo
cyclades: Extend flavors with 'allow_create' field
cyclades: Improvements to Astakos stats
Improve the exposed stats from the Astakos API and the way they aredisplayed in 'stats-astakos' management command.
ui: Disable content editing in public key list view
snf-deploy: Stamp pithos most recent database migration
This is necessary so that future migrations know where to start upgrading.
cyclades: Update snf-manage subnet-* commands
cyclades: Fix broken tests
Fix tests that were broken by commit #7ef05bd.
cyclades: Fix quota bug in snf-dispatcher
Clear the 'vm.serial' field after processing a job that was notexpected. When processing such a job, we reject the pending commissionand issue a new one that reflects the unexpected job. However, since wereject the commission that is associated with the 'vm.task_job_id' job,...
ui: Fix super method call
astakos: Handle pending third party provider validation issues
skip validation errors and reset invalid field values for received usermetadata.
Update Changelog
cyclades: Fix corner case in reconciliation
Do not perform reconciliation for building servers that theOP_INSTANCE_CREATE job is completed after quering Ganeti about the stateof servers.
cyclades: Display IPs in stats-cyclades
Display free and total public IPv4 addresses when pretty-printingCyclades stats.
astakos: Fix bug in Astakos stats view
'ASTAKOS_AUTH_URL' setting is not present in Astakos node.
cyclades: Add deleted attribute for changes-since
Extend API response for servers, networks, subnets and floating IPs,to support HTTP 'changes-since' queries.
Catch EOF in astakos/quota commands
Abort operation when raw_input raises an EOFError.
Fix stdout/stderr write in astakos/quota commands
Write actual command output and user prompts to stdout; error and progressmessages to stderr.
Fix a typo in documentation
The correct filename is 20-cyclades-app-api.conf.
Bump version to 0.15rc5
astakos oa2: Improve tests
astakos oa2: Restrict redirect URI length during client registration.
Apply the check in the oauth2-client-add snf-manage command.
Refs: #4804
pithos: Reduce database interactions for access control.
Each frontend method calls several backend methods.Each backend method checks whether the user has permission to access thespecific path.This results to several identical queries to the database....
Merge branch 'feature-pithos-listing-performance' into develop
docs: Typo fix in quick install admin guide
ui: Styling for vms in error state in ips/network list view
ui: Improve recurrent api calls throttling
do not trigger faster recurrent intervals when api endpoint does not supportincremental updates (changes-since parameter).
ui: Disable port toggling when no ports available in network view
ui: Hide firewall view in private network ports