Commit 4dbaf138 authored by Christos Stavrakakis's avatar Christos Stavrakakis

Merge branch 'release-0.16'

parents d4fffe49 7ffc81f1

Too many changes to show.

To preserve performance only 1000 of 1000+ files are displayed.

......@@ -8,6 +8,9 @@ bin/
......@@ -20,7 +23,7 @@ selenium-server-standalone-2.0b2.jar
......@@ -31,6 +34,7 @@ pithos/data
......@@ -41,5 +45,8 @@ astakosclient/astakosclient/
# Temp dirs generated by snf-deploy keygen
This diff is collapsed.
......@@ -6,6 +6,257 @@ Unified Changelog file for Synnefo versions >= 0.13
Since v0.13 most of the Synnefo components have been merged into a single
repository and have aligned versions.
.. _Changelog-0.16:
Released: Tue Nov 11 10:44:57 EET 2014
* Replace accumulative projects with pool projects:
* Projects are now viewed as a source of finite resources. A member can
reserve a part of these resources up to a specified limit.
* Base quota are now offered through a special purpose user-specific system
project, identified with the same UUID as the user.
* Each actual resource (Cyclades VM, network, floating IP and Pithos
container) is now also associated with a project besides the owner.
* In resource creation, project defaults to the user-specific system
project, if not specified otherwise. It is also possible to change the
project assignment of an existing resource.
* All existing resources have been assigned to the respective
user-specific system projects.
* Logging mechanism for Synnefo management commands
* Log all stdout and stderr output of every invocation of snf-manage,
on unique filenames under a given directory.
* Add a new setting in the snf-common package, namely 'LOG_DIR', which
specifies the directory to be used by Synnefo components to write
their log files.
* Rename argument names of Synnefo management commands
* All Synnefo management commands now use 'user/flavor/image/network'
as argument names, instead of 'userid/user-id/owner/flavor-id/image
-id/network-id', for consistency across commands.
* Decouple projects from applications:
* Support project creation (by the system) and modification (by a
privileged user) without the need to submit/approve an application.
* View applications as modifications. When a project is uninitialized
(e.g. an application for a new project is pending), no further
modification is allowed.
* Applications are removed from the API. A project's last application is
only accessible as part of the project details.
* Decouple project state from application state; they can be combined by
an API client, if needed.
* Changes concerning quota and pool projects:
* A project must provide limits for all registered resources. On project
activation, resources missing are automatically completed using a
* Field `uplimit' of registed resources is exposed as `system_default' and
provide the skeleton for user-specific system projects. A new field
`project_default' is introduce to act as a skeleton for conventional
* The quotaholder now also records project quota besides user quota. The
two types of holders are distinguished with a prefix: `user:' and
* The quota API is extended to make project quota available.
* Removed setting `ASTAKOS_PROJECTS_VISIBLE'; we now always display
projects in Astakos menu.
* Projects can be set `private', making it accessible only to its owner and
* Admin users API
* Extend astakos identity API to support user management functionality.
* Admin API related settings
Whether or not the admin api endpoints will be enabled.
A list of group names for which users which belong to any of
them be granted full access to the admin API endpoints.
* Updated projects integration in UI
* Display both max per member/total in group quota in project views.
* Enhanced usage view to display individual resource usage details for
each of the projects the user is associated with.
* Display project usage statistics in project details view.
* Display system projects in admin project list view.
* Handle display of infinite resource quota values.
* Explicitly specify the lists in which every notification will be sent.
* Introduce Volumes and Snapshots:
* Implement 'cyclades_volumes' service, containing the /volumes, /types,
and /snapshots API endpoints under '/volumes/v2.0'.
* Implement `snf-manage volume-{create, list, show, modify, inspect, remove}'
management commands for handling of volumes.
* Implement `snf-manage snapshot-{create, list, show, modify}` management
commands for handling of snapshots.
* Implement 'volume-type-{create, list, modify, show, remove}` management
commands for handling of volume types.
* Implement reconciliation for stale snapshots.
* Add new settings:
* GANETI_MAX_DISKS_PER_INSTANCE: Maximum number of disks that each Ganeti
instance can have.
* CYCLADES_VOLUME_MAX_SIZE: The maximum allowed size (in GB) for Cyclades
* CYCLADES_SNAPSHOTS_ENABLED: Enable/Disable the snapshots feature
altogether at the API level.
* Integrate Cyclades resources with Astakos projects.
* Extend API calls that create resources with the 'project' attribute
in order to assign resources to the specified project.
* Implement API calls for reassigning resources to a new project.
* Export the project that a resource belongs in the 'tenant_id' API
* Add support for snf-vncauthproxy 1.6 (configurable VNC console types).
* Change the ``CYCLADES_VNCAUTHPROXY_OPTS`` setting to a list of dictionaries
and support configurable vncauthproxy proxy addresses (added in
* Add support for more types of VM console:
* Modify the current 'console' action to support VNC WebSockets (requires
* Add support for the three OpenStack Compute console actions
(VNC, RDP, Spice). RDP and Spice are currently not implemented.
* Update Cyclades to work with Pithos with integrated Archipelago v2
* Include functionality for checking the status of the Cyclades update path,
which includes Ganeti, AMQP, snf-ganeti-eventd and snf-dispatcher. This
functionality is implemented as part of the snf-dispatcher and can be used
by passing the '--status-check' option.
* Add setting `CYCLADES_VM_MAX_METADATA` to limit the maximum number of
metadata per vm.
* Add setting `CYCLADES_VOLUME_MAX_METADATA` to limit the maximum number of
metadata per volume.
* Use common -u/--user option to specify the UUID or email of the user, for
all management commands.
* Store basic information about images that have been used to create servers,
in order to preserve this information even if images are deleted from
* Make 'snf-ganeti-eventd' tolerate failures when processing Ganeti jobs. The
daemon will not crash but continue to run in order to process jobs that can
be processed.
* Update 'backend-list' command to not count the free IPs from networks that
are drained.
* Fix the'network-inspect' command to not contain externally reserved IPs
in th number of available IPs.
* Add `GANETI_DISKS_WAIT_FOR_SYNC` setting to decide whether Ganeti will
wait for the disk mirror to sync (`--no-wait-for-sync` Ganeti option).
* Fix mishandling of `MAX_CIDR_BLOCK` setting. Allowed CIDR sizes
changed from (MAX_CIDR_BLOCK, 29) to [MAX_CIDR_BLOCK, 29].
* Fix various minor bugs.
* Remove stale '--public' and '--user' options from 'image-show' and
'snapshot-show' management commands.
Cyclades UI
* In sync with the updated astakos projects API
* Include a project select widget within all resource create views, to let user
decide the project that the created resources will be assigned to.
* Display resource assigned project in resource list views.
* Let user reassign resource project.
* Volumes API integration.
* Introduce the Disks list/create views.