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.
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
Change astakos listing commands
Listing commands extend`synnefo.webproject.management.commands.ListCommand`
Delete service-token-renew command
This command is equivalent to`service-modiy --renew-token`
Change service-modify command option names
Change `--renew-auth-token` option to`--renew-token` and `--auth-token` to`--token` to conform the respective optionsof user-modify command
Change astakos show commands
Adjust astakos to new holding design
Simplifications due to removal of quantity and merging capacity into holding.Also make sure that holders and resources are represented as strings inquotaholder calls.
Compute and show quotas by source
Adjust astakos code to the new nested dict structure of quotas.
Move quota-related code out of models.py
Intention is to collect all quota-related code to a single file.