Use pprint_table in server-show command
Make 'type' parameter for network-create mandatory
Do not use a default value (was "MAC_FILTERED") for "type" parameter of"network_create" API method. The client must explicitly choose thenetwork type.
Merge branch 'release-0.13' into develop
Conflicts: snf-astakos-app/astakos/im/messages.py snf-astakos-app/astakos/im/views.py version
Merge branch 'tmp-common-email-recipients' into develop
Merge branch 'feature-astakos-authpolicies' into develop
Conflicts: snf-cyclades-app/synnefo/api/management/commands/flavor-create.py version
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
pool context manager, http pool AssertionError fix
Refs #3492
- Introduce a generic PooledObject class to act both as a context manager for getting and putting back an object from a pool.
- Implement a class PooledHTTPConnection(PooledObject) as a sublcass of the one in (1)...
Create public NIC when creating VM
Until now, a server's public NetworkInterface was not created in the DBuntil the arrival of the message from Ganeti hooks. However, the IPv4address of the NIC is reserved before sending the OP_INSTANCE_CREATEjob to Ganeti....
flavor-create: warn if flavor is deleted
Move UserCache from cyclades.common to lib.astakos
Move UserCache from synnefo.management.common to synnefo.lib.astakos.Also, update ListCommand with 'astakos_url' and 'astakos_token' classattributes, which must be declared only when 'user_uuid_field' is used.
Use --deleted=True|False in flavor-modify
Add --dry-run option to snf-manage network-create
Move common code for mngmt commands to webproject
Move cyclades functions that are useful for all managament commands, likepprint_table or parse_filters, to snf-webproject.
Add ListCommand to be used for all *-list commands
Create a generic ListCommand to be user for all *-list managementcommands. ListCommand handles must tasks that are common to allmanagement commands, like retrieving objects from db, filteringresults and formating output to a pretty table, json or csv....
Add --dry-run option to flavor-create
Add --dry-run option to flavor-create management command. Also, do notcrash if flavor already exists.
Refs #3366
Conflicts: version
Fix bugs in UserCache
Fix an infinite loop bug in UserCache.fetch_names(), and correct the*-list commands to only call fetch_names(), when invoked with the--displayname option.
Conflicts: snf-cyclades-app/synnefo/api/management/commands/cyclades-export-quota.py snf-cyclades-app/synnefo/api/management/commands/network-list.py snf-cyclades-app/synnefo/api/management/commands/server-inspect.py...
Fix log string format
Add negative caching in ImageCache
Refs #3375
Improve server-list usability
Improve perf for snf-manage cyclades commands
When the snf-manage {server, network}-list commands are invoked with the--displayname option, batch the UUID-to-displayname requests to astakos,instead of issuing a request for each (unique) UUID.
pep8 fixes
fix and better document quota export/import
Validate all network-create parameters
Fix bug: Detect malformed network subnet
Fix bug in Cyclades network API. API should raise BadRequest ifspecified network subnet is invalid. Also, do not allow subnets withhost bits set (like 10.0.0.1/28).
pep8 convension to cyclades management commands
Fix testcase-mock
Mocked get_image_dict should contain checksum, needed by archipelago
Remove unused function delete_to_login_service
Add --uuids option to snf-manage cmds
Fixes relave to --uuids option
Add --uuids option to server-list
Move exception handling in get_user()
Cyclades astakos migration command fixes
- Rename to cyclades-astakos-migrate-013- Handle invalid uuids- Some code cleanup
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...
Totally remove password from create_instance
Never pass password as an 'osparam' to Ganeti. Always use the vmapi,even for VMs created with server-create management command.
Make server-create work with vmapi and archipelago
Fix bug in networks create
re-raise the exception after rolling back transaction
Fix transaction handling when creating server
Better handling of transactions when creating a server. Commit thecreation of VM in DB, before enqueuing the job to the Ganeti backend.If communication with Ganeti fails, then the VM is deleted from the DB....
Add command for exporting cyclades quota
Add 'cyclades-export-quota' management command, for exporting to a fileVMS_PER_USER and NETWORKS_PER_USER settings, in a format expected by theastakos management command 'user-set-initial-quota'.
Handle transaction manually when creating network
When creating private networks, commit the transaction before sendingthe job to all Ganeti backends. If communication with all Ganetibackends is included in the transaction, notifications from backendsmay be received before the Network entry is created in the DB.
Fix image 'backend_id' for archipelago
Archipelago needs as disk origin, the hashmap of the imageinstead of its url in the backend.
Expose /user_catalogs service api call
Change migration scripts to use this instead of the user api call
Change feedback & user_catalogs astakos && pithos api calls
Merge branch 'latest-quota' into develop
bring quotas, projects, astakos logins, pithos/RADOSinto the new synnefo development workflow
Helper api method to retrieve existing userids
Cyclades astakos migration helper command
Remove unused imports from tests
Refactor tests
Add more tests for db, logic and api
Fix bug in images API
Use image_backend context manager to ensure that ImageBackend is alwaysclosed. list_images method did not close the ImageBackend, whichresulted in depletion of the Pithos backend connection pool.
Refactor some test code
Fix current db, logic and api tests
Fix handling of firewallProfile action
Refs #3097
Fix variable scope
Merge branch 'devel-0.13' into latest-quota
Conflicts: snf-cyclades-app/synnefo/api/servers.py snf-cyclades-app/synnefo/logic/backend.py
Use img['checksum'] as origin disk param.
Use the img['checksum'], instead of img['backend_id'] as the origin diskparamater, as neede by the new archipelago code (and drop support for the oldone).
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....
Fix metatada and personality of vmapi
Fix typos
Merge handling of ext_<provider> disk templates
Use helper function for verifying personalities
Merge branch 'origin/devel-0.13' into quota
Conflicts: snf-cyclades-app/synnefo/api/servers.py
Fix wrong setting
PUBLIC_ROUTED_USE_POOL has been renamed to PUBLIC_USE_POOL
Fix bugs from merging
Merge branch 'devel-0.12' into devel-0.13
Conflicts: snf-cyclades-app/synnefo/plankton/backend.py
Issue commissions when creating server/networks
Issue commissions to the Quotaholder when creating a VM or a Network.The VM/Network that is associated with the corresponding serial in DB.Also, the serial is marked as accepted because at the end of thetransaction the resource will be present in the DB. Even in case the...
Refactor some code to API create_server method
Handle Pithos NotAllowedError
Use vmapi when creating servers
Use the vmapi when creating servers. Creete instance RAPI call takes theconfiguration url instead all the image parametere. The id and formatof the image are still passed, just for readability and debugging.
Also renamed params_url to config-url.
Rename nodeapi to vmapi
vmapi improvements
VM creation signal
`synnefo.api.servers.server_created` signal has been created. The signalis send for each created server. The signal sender is the created vm andone argument named `created_vm_params` is passed to the connectedcallback functions.
Add function for pretty printing tables
Implement server-import management command
Implement management command for importing an existing Ganeti instanceinto Synnefo. The owner, flavor and image are specified by command linearguments. Importing will fail if the instance has NICs connected to...
Fix HTTP code when adding NIC to inactive network
Add --filter-by option to *-list commands
Add --filter-by option to server-list, network-list and flavor-listmanagement commands. The value of this option is a comma-seperated listof key 'cond' val pairs and, when used, only the DB entries that satisfy all of...
Sort all API list_* responses
Use the per-user network limit setting
Refactor code in management commands
Improve management commands
Enrich servers-list to list only suspended servers
add new option `--suspended` in servers-list command to filter output suspendedservers
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
Import snf-manage network-modify command
Add extra support for changing link and mac_prefix. Also supportreserving and releasing IPs.
Forbid creation of non enabled networks
Use select_for_update for VirtualMachines
Use select_for_update method when accessing VM objects to preventrace conditions. Also move start_action from logic to api.
Search for jobs if server does not exist
PUBLIC_ROUTED minor changes
Do not allow api to create public networks and type otherthan PRIVATE_MAC_FILTERED/PRIVATE_PHYSICAL_VLAN.
Rename PUBLIC_ROUTED_USE_POOL setting to PUBLIC_USE_POOL.
Let synnefo do IP pool management only if network is private or...
Fix HTTP response code when refusing action
Return Forbidden(403) instead of Unauthorized(401) when refusing arequested action, because the VM is suspended or the resource is public.Unauthorized should be used only when authentication is required and has...
Order output of *-list management commands by id
Implement image-list and image-show commands
Implement two new management commands for plankton.- image-list: lists public images or all images availableto a user- image-show: displays information about a public image
Also, this commit fixes a bug in server-show, when trying...
Return the VM!
Display VM build percentage in management commands
Allow custom link, mac_prefix in network-create
Add extra command line arguments, to allow the user specify thelink and mac_prefix of the new network if needed.