userdata: Settings description update
userdata: Improve public key submission
- Validate key submission content size. Maximum allowed content size is configurable in userdata settings (USERDATA_SSH_KEY_MAX_CONTENT_LENGTH).- Return 422 status code on submission validation errors.
cyclades: Add setting for Ganeti clone providers
Add new 'GANETI_CLONE_PROVIDERS' setting to containg the list ofExtStorage providers that support cloning. For these providers thehashmap of the image is passed as an ExtStorage parameter('origin').Also, since the disk is already filled with data, snf-image performs...
cyclades: Setting for max NICs per Ganeti instance
Add new 'GANETI_MAX_NICS_PER_INSTANCE' setting which represents themaximum number of NICs that is allowed for each Ganeti instance. Thevalue of this setting must be less than 'max:nic-count` option ofGaneti's ipolicy.
cyclades: Pass arbitrary params to ext providers
Add 'GANETI_DISK_PROVIDER_KWARGS' setting, which contains a dictionaryof arbitrary parameters for each of Ganeti's ExtStorage providers andwhich will be passed to the 'disks' option of CreateInstance Ganeti job.
cyclades: Force redirect instead of proxying for astakos ui views
Signed-off-by: Kostas Papadimitriou <kpap@grnet.gr>Signed-off-by: Ilias Tsitsimpis <iliastsi@grnet.gr>
cyclades: Fix default values
cyclades: Remove DEFAULT_ROUTING_TABLE setting
Do not have a default value from 'link' attribute of IP_LESS_ROUTEDnetworks. Instead if the admin does not specify a value innetwork-create command, uniquely name the networks by with theBACKEND_PREFIX_ID and network id, e.g. snf-link-42.
cyclades: pep8 fix
Add support for snf-vncauthproxy >= 1.5
Encrypt instance ids in the stats URLs
cyclades: Change default value for default nets
Change default value for default server networks to be an IPv4 publicnetwork.
cyclades: Change behaviour of servers fqdn
Change behaviour of 'CYCLADES_SERVERS_FQDN' setting: * If this setting is set to 'None', do not fall back to the public IP address of the machine. * Return the value of the setting even if the machine has no public...
cyclades: Export Cyclades detailed stats from API
Add '/admin/stats/detail' API endpoint to export basic statistics aboutCyclades. Access to this view is only allowed to the users that belongto specific Astakos groups, as specified in the new setting'ADMIN_STATS_PERMITTED_GROUPS.' Also, added the new 'user_in_groups' API...
Merge branch 'hotfix-0.14.10' into develop
Conflicts: Changelog snf-cyclades-app/synnefo/api/servers.py snf-cyclades-app/synnefo/logic/backend.py snf-cyclades-app/synnefo/logic/callbacks.py snf-cyclades-app/synnefo/logic/management/commands/reconcile-networks.py...
Merge branch 'feature-cyclades-networks' into develop
Conflicts: snf-cyclades-app/synnefo/api/management/commands/server-inspect.py snf-cyclades-app/synnefo/app_settings/urls.py snf-cyclades-app/synnefo/logic/backend.py snf-cyclades-app/synnefo/logic/backend_allocator.py...
cyclades: Retry failed instance creation
Handle special case where an OP_INSTANCE_CREATE job which uses theopportunistic locking feature fails. This failure is probably due to thefact that all nodes may be already locked. In this case, makesnf-dispatcher retry the failed job with opportunistic locking turned...
cyclades: Create 'cyclades_network' service
Create 'cyclades_network' service which is part of Cyclades, of 'network'type and with 'network' prefix to hold all API endpoints that arerelative with networks. So, for example, the endpoint for networks will...
cyclades: Fix default/forced server networking
Fix the default behaviour for networking of servers that are beingcreated. There are two settings controlling this behaviour:
snf-cyclades-app: Use the new AstakosClient
Change AstakosClient to use ASTAKOS_AUTH_URL as entry point to theAstakos service, instead of ASTAKOS_BASE_URL it was using until now.
Remove ASTAKOS_BASE_URL from Cyclades settings, replace it withASTAKOS_AUTH_URL. Modify Cyclades to determine ASTAKOS_ACCOUNT_URL and...
cyclades: Use NIC UUID in firewall tags
Use NICs UUID instead of index to generate firewall tags. Make the'set_firewall_profile' action to take the NICs ID as argument. Also,update the firewall settings.
Request Django=>1.4, <1.5
Drop support for Django 1.2. Remove compatibility code that were used inorder to support Django 1.2 and 1.4. Finally update django documentationlink in the docs.
Merge branch 'hotfix-0.14.8' into develop
Merge hotfix-0.14.8 which ports Synnefo to wheezy and Django 1.4.5
Conflicts: ci/ci_squeeze.conf ci/ci_wheezy.conf ci/schemas/one_node_squeeze/packages.conf ci/schemas/one_node_squeeze/squeeze.conf ci/schemas/one_node_squeeze/wheezy.conf...
Allocate VMs based on enabled disk-templates
Remove the ARCHIPELAGO_BACKENDS setting. Instead allocate VMs based onthe disk-templates that are enabled and allowed in ipolicy for eachbackend. The command 'snf-manage backend-update-status' can be used to...
wheezy: urls module doesn't export defaults
Merge branch 'hotfix-0.14.6' into develop
Conflicts: Changelog docs/admin-guide.rst snf-cyclades-app/synnefo/api/management/commands/network-remove.py snf-cyclades-app/synnefo/api/servers.py snf-cyclades-app/synnefo/api/tests/servers.py snf-cyclades-app/synnefo/logic/backend.py...
common: Strip trailing slash from endpoints
Remove trailing slash from the endpoints' publicURL field in servicedefinitions. These values end up in the response of POST /tokens, and,according to the keystone API, should not end in slash. A trailing slash...
Move context_processors from common to middleware
cyclades: Add check for net action with no hotplug
In case hotplug is disabled, via GANETI_USE_HOTPLUG setting, networkactions should be allowed only on STOPPED vms. This commit adds thischeck and a unittest for this case. Also it makes some other checks...
cyclades: extend VM info with 'port_forwarding'
Extend servers info API response with 'SNF:port_forwarding' attribute,describing port fowarding rules (DNAT) that are applied to vms. Thedescription of such rules is done via the new CYCLADES_PORT_FORWARDING...
cyclades: Extend servers info with fqdn attribute
Extend the servers info API response with the 'SNF:fqdn' attribute,containg the vm's domain name in a DNS. This attribue is configurable bythe 'CYCLADES_SERVERS_FQDN' setting. If this setting is set to None,...
cyclades: Set firewall profile per NIC
Set firewall profile per NIC, because since Floating IPs an instance canhave more than one NICs in a public network. Extend the API call to takethe NIC index as argument, and modify the Ganeti instance tags to beformated with the NIC index.
Merge branch 'hotfix-0.14.2' into develop
Conflicts: Changelog snf-astakos-app/astakos/im/messages.py snf-astakos-app/astakos/im/views/target/__init__.py snf-cyclades-app/synnefo/logic/backend.py snf-cyclades-app/synnefo/logic/management/commands/reconcile-servers.py...
cyclades ui: Update OS images names
use libguestfs naming convention
redhat -> rhelsuse -> opensuse (also cloned as sles)
plankton: Make pithos backend pool size a setting
Make the pool size of the pithos backends a configurable setting,namely PITHOS_BACKEND_POOL_SIZE.
pep8 changes
PEP8 fixes
cyclades: Rename "public" to "SNF:ANY_PUBLIC"
Rename reserved work for automatically choosing a public network from"public" to "SNF:ANY_PUBLIC". Also add the setting description to conffiles.
cyclades: Remove PUBLIC_USE_POOL setting
Remove PUBLIC_USE_POOL setting, since in order to use floating IPs, thecyclades must be responsible for managing all IP pools.
cyclades: Remove obsolete settings
Remove obsolete GANETI_DISK_TEMPLATES and DEFAULT_GANETI_DISK_TEMPLATEsettings.
cyclades: Rename poolsize settings for uniformity
Rename ASTAKOS_POOLSIZE to CYCLADES_ASTAKOSCLIENT_POOLIZE;expose it to the conf file.
webproject: Disable APPEND_SLASH setting by default
cyclades: Implement /admin/stats API call
Implement API call to server statistics about servers and networks.
cyclades: Rename service token
Rename CYCLADES_ASTAKOS_SERVICE_TOKEN to CYCLADES_SERVICE_TOKEN foruniformity.
cyclades: Use api_patterns to register API urls
cloudbar: Automatic active service detection
automatically detect which cloudbar menu is active by matching the currentwindow location with the registered service url.
cyclades: Sensible root url redirects
cyclades: informative CYCLADES_BASE_URL default
astakos: Update references to astakos urls
/im/ renamed to /ui/.Updated all references in default settings, documentation and constants.
cyclades ui: Clean up ui url settings
- Removed most url's from ui conf file. Default values are dynamically set based on other settings (CYCLADES_BASE_URL, ASTAKOS_BASE_URL etc.). We still do service lookups to be able to change urls in extraordinary deployments....
cyclades ui: Configurable ui prefix path
cyclades ui: Move connect/console urls under ui
cyclades: Remove userdata api from ui prefix
- Individualize userdata api by placing module under synnefo namespace and urs under it's own USERDATA_PREFIX
cyclades: Remove duplicate INSTALLED_APPS entry
make synnefo URLs consistent and configurable
https://service.deployment.vendor.tld/service-base/api-prefix/hard/path |___________________________________| |__________| |________| |_______| BASE_HOST BASE_PATH PREFIX Hardcoded...
cyclades: remove all csrf_exempt usage.
The csrf middleware is not to be installed with cyclades,therefore there is no need to use csrf_exempt.
astakos: move get_services back to astakos im services
astakos: move get_menu service under astakos im services
get_menu is used only by astakos cloudbar:it should not be under astakos api services
cyclades: Sypport backends with Xen hypervisor
cyclades: fix name errors in app_settings
Merge branch 'feature-branding' into develop
Conflicts: snf-astakos-app/astakos/im/templates/im/account_pending_moderation_notification.txt snf-astakos-app/astakos/im/templates/im/group_creation_notification.txt snf-astakos-app/astakos/im/views.py
cyclades: Update proxy user services
use the common api.proxy method from snf-django-lib
Merge branch 'develop' into feature-branding
Conflicts: snf-astakos-app/astakos/im/static/im/cloudbar/cloudbar.js snf-astakos-app/astakos/im/templates/im/base.html snf-astakos-app/astakos/im/templates/im/landing.html snf-astakos-app/astakos/im/views.py...
astakos: WIP move all api calls under ``/astakos/api``
Refs: #3340
Add 'ASTAKOS_POOLSIZE' setting.
Synnefo branding: settings improvements
cyclades ui: Expose and use the new astakos quota api
- Removed /userdata/quota view in respect of astakos quotas api delegate views served in the same urls used by astakos api (/astakos/api/quotas, /astakos/api/resources). Base url is configurable using the...
cyclades: Remove obsolete code for static quotas
Remove the following obsolete settings, since their usage is coveredby Quotaholder:- MAX_VMS_PER_USER- MAX_NETWORKS_PER_USER- VMS_USER_QUOTA- NETWORKS_USER_QUOTA
Also remove 'cyclades-export-quota' management command.
Cyclades: remove all quotaholder settings
Remove from cyclades all settings that were relative with Quotaholder.Remove CYCLADES_USE_QUOTAHOLDER settings, since Cyclades can not workany more without quotas.Remove CYCLADES_QUOTAHOLDER_URL and CYCLADES_QUOTAHOLDER_TOKEN since...
cyclades: remove redundant settings
Remove 'CYCLADES_USER_CATALOG_URL' and 'CYCLADES_USER_FEEDBACK_URL'settings, since both of them can be derived from 'ASTAKOS_URL' setting.
plankton: Remove 'TRANSLATE_UUIDS' setting
Remove 'TRANSLATE_UUIDS' from plankton setting.
Improve settings related to ASTAKOS url
Rename 'PITHOS_AUTHENTICATION_URL' setting to 'ASTAKOS_URL'. Also remove'PITHOS_AUTHENTICATION_USERS' from docs (it was removed from code incommit 8df4fae).
Modify 'ASTAKOS_URL' to point to the node hosting the Astakos service...
Update cyclades webproject settings
remove deprecated admin app entries
Delegate cyclades ui feedback calls to astakos
Mimic pithos app/ui feedback handling to avoid duplicating boilerplatecode.
New settings:CYCLADES_USER_FEEDBACK_URL
Deprecated (removed) settings:FEEDBACK_CONTACTSFEEDBACK_EMAIL_FROM
Fix+move HTTP quotaholder client in synnefo.lib
Allow per-service configuration of the (http) quotaholder client.Kamaki is no longer needed in service (or ganeti) nodes,because the client has been moved to snf-common.
Also fix the default quotaholder settings for pithos backend to be disabled...
Update cyclades api settings and conf files
Remove stale import
Remove unused setting file
Delegate astakos user catalog call in cyclades
cyclades now serve a delegate view for the astakos /user_catalog apicall. Cyclades UI app should use this endpoint to translate user uuidsto display names.
Astakos endpoint is configurable from the CYCALDES_USER_CATALOG_URL...
ui compatibility: translate uuids to display names
Rename ARCHIPELAGOS to ARCHIPELAGO
Rename ARCHIPELAGOS_BACKENDS setting to ARCHIPELAGO_BACKEND.
Cyclades astakos migration helper command
Periodic update of user usage quotas
Import by default the quotas settings
Introduce network flavors to replace network types
Add tags and mode to network db model. Replace existing type withflavor. Introduce 4 different flavors. Each flavor has mode, link,mac_prefix, tags. Supported flavors are CUSTOM, IP_LESS_ROUTED,MAC_FILTERED, PHYSICAL_VLAN and are hardcoded in db models....
Implement quotas-init and quotas-verify
Implement quotas-init and quotas-verify management commands.- quotas-init sets quotas of Quotaholder to the state of quotas in Cyclades DB- quotas-verify detects incosistencies between quotas in Quotaholder and...
Fix quotaholder settings
Temporary fix for allocating archipelagos VMs
Merge branch 'origin/devel-0.13' into quota
Conflicts: snf-cyclades-app/synnefo/api/servers.py
Add USE_QUOTAHOLDER setting
Add setting indicating whether to use the Quotaholder service oruse the static limits.
Create quotas module
Create quotas module, containing functions for interacting withthe Quotaholder service.
Remove IGNORE_FLAVOR_DISK_SIZES setting
Remove nodeapi from app_settings
It survived from wrong merge conflict resolving.
Rename nodeapi to vmapi
Initial commit of the nodeapi application
Additional synnefo api to be used by internal synnefo services such assnf-image/ganeti etc.
Merge branch 'ui-0.11' into devel-0.12
Merge branch 'master' into devel-0.12
Conflicts: snf-cyclades-app/synnefo/api/management/commands/flavor-list.py snf-cyclades-app/synnefo/api/management/commands/server-list.py snf-cyclades-app/synnefo/api/networks.py snf-cyclades-app/synnefo/logic/rapi.py
Automatic private networks subnet assignment in ui
Automatically choose a subnet that doesn't already exists in user'sprivate networks if 'Auto' subnet option is selected.
UI vm connection improvements
- add configurable vm hostname template- allow override of vm connect messages- replace ip by hostname in vm connection messages- configurable ssh message template- optional setting to append extra content in windows rdp files
Change grouped public network name setting
UI_GROUPED_NETWORK_NAME -> UI_GROUPED_PUBLIC_NETWORK_NAME