History | View | Annotate | Download (28.7 kB)
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...
astakos: Fix arg in terminate function
Conflicts: snf-astakos-app/astakos/im/views/projects.py snf-cyclades-app/synnefo/logic/backend.py snf-django-lib/snf_django/lib/astakos.py version
astakos: Fix call of helper function
astakos: Disallow join/leave for non-alive projects
astakos: pep8 fixes
astakos: Properly resolve urls from base host
BASE_URL contains the prefix which is also included in paths returned fromdjango's reverse utility. Thereby joining BASE_URL with a reverse resultgenerates urls with duplicate BASE_PREFIX. Replaced BASE_URL with BASE_HOST in...
astakos: remove BASEURL, use BASE_URL setting
make synnefo URLs consistent and configurable
https://service.deployment.vendor.tld/service-base/api-prefix/hard/path |___________________________________| |__________| |________| |_______| BASE_HOST BASE_PATH PREFIX Hardcoded...
astakos: Move email subjects from settings to messages
Email subjects are parameterized by site name and application-specific data. Other than that they should be constants ratherthan settings.
Remove unused GROUP_CREATION_SUBJECT.
astakos: unified settings handling
Import astakos settings module instead of importing specific settings
astakos: remove unused imports
astakos: Remove code handling UserSetting
Keep UserSetting model; to be removed in a future version.
astakos: Remove some unused imports
Also add a missing import in quotas.py
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,...
branding: Use branding util to render email templates
Use synnefo_branding.util.render_to_string accross synnefo apps to be able touse branding variables within the templates.
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.
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
astakos: Force query eval when used in __in filter
Related to commit aee9a38
Also fix call of qh_sync_users in migration script.
astakos: Allow submitting application with no resources
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 membership policy settings
Available join and leave policies are internally defined and shouldnot be changed by settings. Move policy descriptions to presentation.py.
Do not convert to string the lookup key in templatetags/filters.py
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
Use custom method for joining urls
Implement 'join_urls' method for joining a base URL with a path,without worrying about redundant or missing "/". Do not use'urlparse.urljoin', since it has different semantics.
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...
Revert "astakos: Fix bug in getting membership"
This reverts commit 7ce770be9fd9668fff4088eff2421cbeb0cc311e.
Update astakos tests to use membership id.
astakos: Remove an obsolete function
astakos: Fix bug in getting membership
Search based on 'person__id' and not 'id'.
astakos: Control project members by membership id
astakos: Add reason for all actions on applications
For cancel and dismiss, it is for now just a placeholder.
astakos: Make submit_application arguments explicit
astakos: Cleanup input of submit_application
Form passes only a tuple (name, limit) for each selected resource,omitting presentational data.
astakos: Handle pair of exceptions properly
astakos: Reconcile resources
Sync number of pending applications to quotaholder.
astakos: accept commission immediately after issue
Unify these operations when registering a pending application,in order to make sure no commission can be left pending.
Revert quotaholder's name to quotaholder_app
In order to facilitate migrations.
astakos: Replace some explicit settings imports
importing setting names explicitly makes it hard to write tests thatdepend on specific setting values and polutes the module namespace.
In this commit only settings that are currently used in tests whererefactored.
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: Standardize arguments of project calls
All calls take a request_user (of type AstakosUser) argument.
pep8 and style changes
astakos: Enroll in project even if request is pending
astakos: Move quota syncing code in quotas.py
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...
Cleanup obsolete quota code
Force query to list before passing as argument
An unevaluated query ends up being used as an argument of intended listtype to another query, which fails in the case of an EmptyQuerySet, whichis not iterable.
Move quota-related code out of models.py
Intention is to collect all quota-related code to a single file.
Sync to quotaholder by recomputing user quotas
On a user joining/leaving a project or on a project definition change,we used to compute quota diffs for affected users and add them upto existing values in quotaholder.
We now switch to recomputing all quotas for affected users and resetting...
wip Update astakos.im to use local quotaholder
Import directly quotaholder.callpoint in endpoint/qh.pyinstead of an HTTP client.Remove code related to entities, such as registering users and services.Remove sync_projects logic.
wip Remove check whether membership is pending sync
It is not needed any more, syncing to quotaholder will happenin a single transaction along with the call initiating the change.
wip New, simplified syncing to quotaholder
Merge branch 'feature-branding' of https://code.grnet.gr/git/synnefo into feature-branding
Merge branch 'tmp-common-email-recipients' into develop
Branding footer improvements (Astakos+ Cyclades)
Setting that allows copyright message to footer.Setting that allows about, feedback and support links to footer.
Astakos email notification improvements
- Use project setting SERVER_EMAIL as sender to all email notifications.- Remove astakos specific DEFAULT_CONTAC_EMAIL in favor of snf-common's CONTACT_EMAIL setting.- Remove DEFAULT_CONTACT_EMAIL and ADMINS astakos specific settings in favor of...
Impose pending application limit on owner
We used to check the limit on applicant; however we would like toto control pending applications per the original applicant, i.e theowner. The check is ignored when the applicant is a project admin.
Log project actions
Merge branch 'release-0.13' into feature-astakos-authpolicies
Specify reason when denying project application
Add field `response' in ProjectApplication model.Add option `-m' in project-control command.
Refs #3493
Astakos logging improvements
use the common user_log display method accross logging calls
Astakos logging fixes
Removed with_logging wrapper which inconsistently extracted user/requestarguments. Logging statements placed explicitly within login/logoutmethods.
Fix admin notification logging
Optimize computation of astakos user quotas
Add per-user limit on pending applications
Add UserSettings model for storing integer-valued settings.If an entry is missing, a default synnefo setting is consulted.
The limit can be set/unset with snf-manage user-update.
Bug fixing
Create membership without causing DB error on existence
Make ForUpdateManager thread-safe
The manager held a global flag `_for_update' on a single manager object,which could be read or set by multiple threads.
select_for_update() is now provided by a subclass of QuerySet.It must be used as the last modifier of a query set,...
Fix change email text
Update email change email content
- Include EmailChange instance in template context- Email body improvements
Automate the stress test for projects
Generalize instance checks for integers
Add LEAVE_REQUESTED state on ProjectMembership
Utility function get_project_by_name
Check user status when creating project membership
Notify for project enrollment
Add membership notifications
Ensure only verified users are added to a project
since users get registered at quotaholder during the activation process(qh_register_user_with_quotas call in `activate` method -- im/functions.py).
An additional safer check in `create_membership` method might be...
fix project admin permissions
Restrict argument of approve_application() to application id
Remove obsolete function get_project_id_of_application_id
View for cancelling a pending application
Changes in project_detail
Distinguish project/application view as well asowner/simple user mode
Use custom project_transaction_context in project views
Change feedback email sender and body
Option to cancel membership request
wip More progress with chains
wip Project views by chain_id
Checks for operations on applications
Fix membership checks
Checks for membership functions
Fix unicode urlencoding in feedback call
Better log printing
Advances in syncing quotaholder with astakos
Factor out trigger_sync() as lock_sync() to be used for othersync processes in addition to sync_projects().Implement sync_users(), which registers users and their quotas.Use both sync processes in astakos-qh-sync management command.
Management command to check and perform project expiration
Implement project suspension and resumption
Merge membership's SUSPENDED and TERMINATED states into PROJECT_DEACTIVATED.
Remove unused update_application()
Add states DISMISSED and CANCELLED in ProjectApplication and related callsFix defaults in DateTimeFields
Changes in registering to quotaholder
Add an 'uplimit' (default) field in Resource;change AstakosUserQuota fields to IntDecimalField;pass all four limits of initial quotas to the quotaholder;register services and resources explicitly upon creation;a wrapper for get_quota.
Implement application denial
Register a user to quotaholder only when is activated