Age | Commit message (Collapse) | Author | |
---|---|---|---|
2023-11-02 | mypy: Fix typing errors. | Frederick Muriuki Muriithi | |
2023-11-02 | pylint: Fix linting errors. | Frederick Muriuki Muriithi | |
2023-10-27 | Use upstream `yoyo-migrations` | Frederick Muriuki Muriithi | |
2023-10-27 | Configuration: OAUTH2_SCOPE - provide clarification | Frederick Muriuki Muriithi | |
Adds clarification that the `OAUTH2_SCOPE` setting is provided by default, and so the final settings are only necessary to override that. | |||
2023-10-12 | migrations: Create role for dealing with inbredset groups. | Frederick Muriuki Muriithi | |
2023-10-12 | Bugs: Fix query and provide default function for inbredset-group | Frederick Muriuki Muriithi | |
2023-10-12 | Assign role to act on InbredSets to admin. | Frederick Muriuki Muriithi | |
2023-10-10 | Get authorisation by resource_ids | Frederick Muriuki Muriithi | |
Add an endpoint to help users get the resources authorisation by the resource ids. | |||
2023-10-10 | Temporarily return no data for resources of types system and group. | Frederick Muriuki Muriithi | |
2023-10-09 | Fetch InbredSet group resource ID by SpeciesId and InbredSetId | Frederick Muriuki Muriithi | |
Get the resource used to control access to the InbredSet group by that group's SpeciesId and InbredSetId. | |||
2023-10-09 | scripts: Provide script to link InbredSets to auth system. | Frederick Muriuki Muriithi | |
2023-10-02 | migrations: New migration - InbredSet Resources | Frederick Muriuki Muriithi | |
Provide a new migration to create tables to handle the InbredSet resources. The migration also sets up the resource category and the related privileges. | |||
2023-09-29 | Make migrations directory a package. | Frederick Muriuki Muriithi | |
2023-09-27 | Add missing import | Frederick Muriuki Muriithi | |
2023-09-27 | List all packages to install. | Frederick Muriuki Muriithi | |
2023-09-27 | Update setup.py | Frederick Muriuki Muriithi | |
- Update the name and version - Include the whole of gn-auth in the `packages` list - Include any non-python files in the install | |||
2023-09-27 | Update dependency: Use upstream python-mypy | Frederick Muriuki Muriithi | |
2023-09-27 | guix-bioinformatics: Update guix channel URL | Frederick Muriuki Muriithi | |
2023-09-27 | typing: fix and ignore typing issues. | Frederick Muriuki Muriithi | |
2023-09-27 | linting: Remove unused import, handle unused variable | Frederick Muriuki Muriithi | |
2023-09-27 | Bug: Fix issue with viewing resources of type "group". | Frederick Muriuki Muriithi | |
2023-09-26 | Update query | Frederick Muriuki Muriithi | |
Replace `group_user_roles_on_resources` table with `user_roles` for the query that checks whether the user has appropriate permissions to act on a specific resource. | |||
2023-09-26 | Handle AuthorisationError at the top-level | Frederick Muriuki Muriithi | |
Add an error handler to gracefully handle the custom AuthorisationError at the application's top-level to avoid having to manually handle it everywhere that the error (and its sub-classes) might be raised. | |||
2023-09-26 | Handle temporary edge cases | Frederick Muriuki Muriithi | |
Fetching resource data: system and group categories of resources do not have associated genetic data. This commit adds some code to temporarily handle that case as an edge case before I can devote more time to fixing the issue in a much better way. | |||
2023-09-26 | Add `public-view` role. Assign it to users. | Frederick Muriuki Muriithi | |
Add a new `public-view` role to be assigned to all users on all resources that are defined as publicly viewable. Update code to make assign `public-view` role to a newly registered user for all publicly viewable roles. Update the code to assign/revoke the `public-view` role to/from users whenever the resource is toggled to and from being publicly viewable. Ensure that `public-view` is not revoked from system-administrators. Ensure that `public-view` is not revoked from the group administrators of the group that owns the resource. | |||
2023-09-26 | Update fetching a single role | Frederick Muriuki Muriithi | |
2023-09-26 | Initialise package to handle resources of type "system". | Frederick Muriuki Muriithi | |
2023-09-26 | Update /roles endpoint: rework code for new `user_roles` function | Frederick Muriuki Muriithi | |
The way the `gn_auth.auth.authorisation.roles.models.user_roles` function works has changed: this commit updates the code to take that into consideration and fix any errors. | |||
2023-09-26 | Add default `REDIS_URI` configuration. | Frederick Muriuki Muriithi | |
2023-09-26 | Add System resource, and group resource(s) to list of user resources | Frederick Muriuki Muriithi | |
* The system resource is public, and should be present for all users. * Each user that is a member of a group, should have their group show up in their list of resources. * Fix the SQL join: add an `ON ...` clause. | |||
2023-09-26 | Update `user_roles`: Return roles for user by resource. | Frederick Muriuki Muriithi | |
2023-09-26 | Move `groups` package under `resources` package | Frederick Muriuki Muriithi | |
With user groups being resources that users can act on (with the recent changes), this commit moves the `groups` module to under the `resources` module. It also renames the `*_resources.py` modules by dropping the `_resources` part since the code is under the `resources` module anyway. | |||
2023-09-26 | Update tests & fixtures to conform to schema changes | Frederick Muriuki Muriithi | |
2023-09-26 | Remove group from resource objects | Frederick Muriuki Muriithi | |
With the new schema, not all Resource objects are "owned" by a group. Those that are, are linked together through a different db table (`resource_ownership`). This commit removes the `Group` object from `Resource` objects and updates the `resource_ownership` where relevant. | |||
2023-09-26 | Raise exception if no group for `resource_group` | Frederick Muriuki Muriithi | |
Rather than using pymonad's Maybe monad and dealing with the complexity it introduces, raise an exception if there is no group found for the given resource. | |||
2023-09-26 | Add `resource_group` function to retrieve the owning group | Frederick Muriuki Muriithi | |
Some resources are "owned" by specific user groups. This commit adds a way to retrieve those "owners" where relevant. | |||
2023-09-26 | Extract resource-type-specific code into separate modules | Frederick Muriuki Muriithi | |
For easier maintenance, extract the code that relates to specific resource types/categories into separate modules, each dealing with a single resource type/category. | |||
2023-09-26 | Extract basic resource types to a separate module. | Frederick Muriuki Muriithi | |
2023-09-26 | Fix foreign-key refs. Merge tables. | Frederick Muriuki Muriithi | |
* Link the `role_id` field to the `roles` table rather than the `group_roles` table. * Merge the data in the `group_user_roles_on_resources` table in the `user_roles` table to have a single point-of-truth for all user roles on resources. | |||
2023-09-26 | Add a 'system' resource | Frederick Muriuki Muriithi | |
Add a 'system' resource to allow users to have roles they can use to act on the system itself. | |||
2023-09-26 | migrations: Create `group_resources` table. | Frederick Muriuki Muriithi | |
2023-09-26 | Drop `group_id` from resources table | Frederick Muriuki Muriithi | |
Drop the `group_id` from the `resources` table and update all dependent tables to fix FOREIGN KEY constraints to ensure integrity of the data. | |||
2023-09-26 | Add `system` and `group` resource categories. | Frederick Muriuki Muriithi | |
2023-09-26 | Resources refactor: Add `resource_ownership` table | Frederick Muriuki Muriithi | |
New table to link resources to groups, where relevant. | |||
2023-09-19 | Remove pinned commit | Frederick Muriuki Muriithi | |
2023-09-06 | Update yoyo-migration and mypy | Frederick Muriuki Muriithi | |
Update the dependencies to enable the use of Python-3.10 | |||
2023-08-31 | Add documentation on troubleshooting tokens | Frederick Muriuki Muriithi | |
2023-08-31 | Indent the code with `guix-devel-mode` | Frederick Muriuki Muriithi | |
2023-08-30 | Replace `(...) with (list ...): Fixes "undefined gexp" failure. | Frederick Muriuki Muriithi | |
Replace the backquoted expression in the (arguments ...) section of the package definition to fix the error where the build could not find the variable gexp | |||
2023-08-30 | Include missing module. | Frederick Muriuki Muriithi | |