astakos: Remove custom ForUpdateManager
Remove custom manager that implemented select_for_update(), since thisis already implemented in Django 1.4.
astakos: Remove custom commit_on_success decorator
Prior to 1.3, django wouldn't set the transaction dirty upon a DBexception and thus wouldn't trigger a rollback, resulting in a danglingaborted DB exception. See https://code.djangoproject.com/ticket/9964...
astakos: user-modify command enhancements
New option ``--delete`` to permanently delete a user entry.New option ``--set-email`` to change user's email address.
astakos: Avoid spaces in field names
Rename fields in component-list management command so that they do notcontain spaces.
astakos: Store base URL in component
Deployer should provide it when adding a new component. Service endpointsoriginating from a component are expected to match its base URL; otherwise,a warning is issued during service registration. Re-registration with...
astakos: Show component details
Introduce management command `component-show', which lists componentattributes, including a list with the related registered services.
astakos: Simplify project schema
Applications now point to a project (rather than an extra model Chain).A Project is created upon submitting an application; it always points toa single `reference' application.
Model Chain is kept as a sequence to generate project ids.
astakos: Improve logging for Projects and Applications
Introduce model ProjectLog as well as fields in ProjectApplicationin order to record all actions.
astakos: Allow re-activation of terminated projects
Define function `reinstate' to re-activate a terminated project. If itsname is taken by another active project, it fails.
Fix stale import statements
Commit 7cfc0ce moved code from webproject to snf_django. This commitfixes some stale imports that skipped renaming.
snf-django: Move ListCommand to snf-django
snf-webproject contained the generic ListCommand, and because of this ithad a dependency from snf-django-lib. This commit moves this command fromsnf-webproject to snf-django-lib and removes this dependency. Also,...
astakos: Adapt reconcile-resources to new-style services
astakos: Register resources with services
If service-import finds resource definitions included in a servicedefinition, it imports them, too.
astakos: Add command to remove a component
astakos: Record the service originating a resource
Add field service_origin in model Resource as well as in theresource definitions, indicating the service where the resourcecomes from. It is not a foreign key, in order to allow deletinga component/service, without affecting registered resources and...
astakos: Cleanup and pep8 fixes in commands
astakos: Support reading from stdin in import commands
In commands resource-import and service-import, read from standard inputwith `--json -'.
astakos: Improve argument handling in commands
astakos: Purge services for a given component
Provide option `--purge-services' in command component-modify.One can always use service-import to register the services again.
common: Export only services specified as public
Employ helper function `filter_public' in service-export-* commands.Also set `pithos_ui' service to non-public and clear version of`astakos_ui'.
astakos: Add commands to handle components
astakos: Import new-style services and resources
astakos: add service-export-astakos command
astakos: Remove invitation management commands
Also add a notice in docs that inviting is currently disabled.
docs: Update list of astakos commands
Also fix some help messages.
astakos: rename full-cleanup command to cleanup-full
astakos: Rename group/authpolicy commands
- removed `user-` prefix for shorter command names- condensed auth-policy to authpolicy
astakos: Add missing import in management command
astakos: Update user-add command
removed activate option. User status can be changed using additionaluser-modify commands (--verify, --accept etc.)
astakos: Add confirmation step in service-add
Since there is no way to delete a registered service, confirmationis needed to register a service.
Add also a `--no-confirm' option to bypass this check in service-addas well as in user-modify.
astakos: Disable service renaming
Service name is significant: UI presentational data are indexed byit; resource names are prefixed by it.
astakos: Fix args reading in service-add
Service URL and API URL where set the other way around.Also add checks for the URLs being in use.
astakos: Show value even for unknown resource
Do not fail when looking up the unit, if resource is not found.
astakos: Fix permissions of service-add.py
Unset execute bit for file service-add.py
astakos: Remove commands deleting services and resources
We do not support removing a registered service or resource.
astakos: Add new command service-show
Leave the most important fields of Service in service-list;show all fields with service-show.
astakos: provide get_endpoints api call
astakos: Support changing resource's allow_in_projects
astakos: Cleanup management commands' common file
astakos: Support units in resource-related commands
Add library synnefo.util.units for parsing numerical valueswith an optional unit suffix and printing integer values basedon a given style.
Styles `b', `kb', `mb', etc allow printing in the respective multiples...
astakos: unified settings handling
Import astakos settings module instead of importing specific settings
astakos: Include project membership info in commands
`user-show --projects': Memberships and ownerships for a given user in separate tables `project-show --members': Members of the given project
astakos: Improve output of quota commands
astakos: Filter project listing by name or owner
Use a custom way to retrieve and filter project data; ListCommand isnot suitable when multiple tables must be consulted.
astakos: service-remove change to accept service id
instead of name
astakos: Add AstakosUser status_display property
the property provides a status outline of the current user status.
astakos: Remove code handling UserSetting
Keep UserSetting model; to be removed in a future version.
astakos: Lock chain for projects, user for syncing
Lock project's chain for every operation affecting either a project oran application. Subsequently, lock user when needing to sync or to issuecommission to update pending_app quota.
In views, replace locking qh_add_pending_app with check_pending_app_quota,...
astakos: do not catch send mail errors
The user should not be informed if for any reasonthe server can not send an email.
Revert "astakos: fix send mail error handling"
This reverts commit 903ce7dccb44db3d3e5fd280a7683747dfa37d7f.
astakos: fix send mail error handling
Restore SendMailError, ChangeEmailError and SendFeedbackError exceptions(deleted by previous commit) since they are still used.
astakos: Clean up user-list filter options
removed deprecated options `-p` and `-n`. Admins should use`--pending-moderation` and `--pending-verification` instead.
astakos: Allow admin to verify user from command line
using the new option `--verify` added in `user-modify` command
Catch QuotaLimit exception when reconciling resources
This can happen, if the actual usage registered by a service exceedsthe quota limit.Advise the user to try the --force option.
astakos: Do not show obsolete user settings
Also fix printing user quota.
astakos: User activation flow improvements
Major refactoring on user email verification/activation process---------------------------------------------------------------Activation logic moved from dispersed code in functions/view modules toActivationBackend methods. All user activation handling code in astakos views...
astakos: Remove obsolete keyword argument ctx
astakos: Improve quota syncing
- Split code that lists and syncs quotas - Merge the latter with qh_sync_users - Move qh_sync_projects in quotas.py; sync only active members - Add missing select for update in project suspend - Clean up quotas.py
astakos: Remove two options from resource-import
--service: We do not support automatic importing of resources--conf: Use resource-modify to configure resource limit
astakos: Rename astakos-quota command to quota
Also replace `quotas' with `quota' in strings and command line options.
astakos: Return resource object upon creation
astakos: Indent json output of resource export
astakos: Remove command user-set-initial-quota
To change base quota for a specified user: snf-manage user-modify user --set-base-quota resource limit
To import base quota in batch from a file: snf-manage astakos-quota --import-base-quota filename
Rename `initial' to `base quota' in command output....
astakos: remove obsolete code
astakos: List quotas in user-show with `--quotas'
Refs #3530
Use the same utility function as astakos-quota. Update the latterto a SynnefoCommand.
astakos: remove astakos.im.api module
Replace all AstakosCallpoint references
astakos: Visually separate apps in project-show
astakos: Remove unneeded import of a constant
astakos: Control exposing resources in projects
Add attribute `allow_in_projects' in Resource model (True by default).Set this flag for astakos.pending_app to False in the descriptionof astakos resources.
astakos: Reconcile resources
Sync number of pending applications to quotaholder.
Merge branch 'feature-change-astakos-commands' into feature-quotas
Conflicts: snf-astakos-app/astakos/im/management/commands/resource-list.py snf-astakos-app/astakos/im/management/commands/service-list.py snf-astakos-app/astakos/im/management/commands/service-modify.py...
astakos: Separate importing resources from setting limits
`snf-manage resource-import' does not provide a way to change thedefault base quota any more. When importing a resource for the firsttime, it sets the limit to zero.
Use `snf-manage resource-modify' to change limits. It supports both...
astakos: Define and export local resources
Handle max pending applications as a quotable resource
Assume a resource `astakos.pending_app' related to service `astakos'.On submitting an application, issue a commission that will update therelated counter if possible, and accept the commission on success....
astakos: Use `with' to open file in management command
astakos: Sync users when importing base quotas from file
astakos: Standardize arguments of project calls
All calls take a request_user (of type AstakosUser) argument.
Rename users_quotas to astakos_users_quotas
astakos: Move quota syncing code in quotas.py
astakos: Decouple listing from syncing quotas code
Sync user after changing base quota
astakos: Change response for API call `quotas'
The following indicators are returned for each holding:"limit": the quota limit (as before)"usage": the current usage (pessimistically, includes any pending allocations)"pending": the difference of max and min allocation, indicates...
Store service access url in database
Move transaction.py to snf_django package
astakos: Remove obsolete fields of AstakosUserQuota
Remove quantity, import_limit, export_limit.Update user-set-initial-quota management command.
Move resource data away from astakos settings
UI-related presentation data go to presentation.py.Remove load_service_resources call and related astakos-initmanagement command.
Import resources from definition and config files
Register a service's resources giving option --json <file>.The json file is expected to represent a dictionary with keys"service" and "resources".
Currently the default base quota (uplimit) for each resource is read...
Sync quotas efficiently when importing resources
When changing the default base quota (uplimit) for a preexisting resource,do a bulk update of the related holdings.When importing a new resource, create the new related holdings.
Prompt the admin for the uplimit in the management command, if a config...
Remove resource/service model dependencies
- Remove foreign key dependency between Service/Resource model. Replace it with a service CharField to keep track of the service identifier that the resource was registered from.- Remove all references to resource service name in resource lookups
Update resource-list management command
Modify resource limit from the command line
Services api/presentation logic cleanup
- Remove presentation information from Service model (order, icon)- To access the list of services filled with both presentation and api data use Service.catalog(). The method fills a dict with service identifiers and service metadata through the following steps...
astakos: update service-add and service-list
Make astakos-quota robust on missing base quotas
Merge branch 'develop' into feature-quotas
Conflicts: snf-astakos-app/astakos/im/api/service.py snf-quotaholder-app/quotaholder_django/quotaholder_app/callpoint.py
Merge branch 'release-0.13' into develop
Conflicts: snf-astakos-app/astakos/im/messages.py
Minor changes in astakos commands
Update astakos user-modify command
Permit also to lookup user using the UUID
Update astakos listing commands
Refs: #3346
Make pending project options more descriptive