aboutsummaryrefslogtreecommitdiff
AgeCommit message (Expand)Author
2023-09-26Update /roles endpoint: rework code for new `user_roles` function...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. Frederick Muriuki Muriithi
2023-09-26Add default `REDIS_URI` configuration.Frederick Muriuki Muriithi
2023-09-26Add System resource, and group resource(s) to list of user resources...* 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. Frederick Muriuki Muriithi
2023-09-26Update `user_roles`: Return roles for user by resource.Frederick Muriuki Muriithi
2023-09-26Move `groups` package under `resources` package...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. Frederick Muriuki Muriithi
2023-09-26Update tests & fixtures to conform to schema changesFrederick Muriuki Muriithi
2023-09-26Remove group from resource objects...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. Frederick Muriuki Muriithi
2023-09-26Raise exception if no group for `resource_group`...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. Frederick Muriuki Muriithi
2023-09-26Add `resource_group` function to retrieve the owning group...Some resources are "owned" by specific user groups. This commit adds a way to retrieve those "owners" where relevant. Frederick Muriuki Muriithi
2023-09-26Extract resource-type-specific code into separate modules...For easier maintenance, extract the code that relates to specific resource types/categories into separate modules, each dealing with a single resource type/category. Frederick Muriuki Muriithi
2023-09-26Extract basic resource types to a separate module.Frederick Muriuki Muriithi
2023-09-26Fix foreign-key refs. Merge tables....* 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. Frederick Muriuki Muriithi
2023-09-26Add a 'system' resource...Add a 'system' resource to allow users to have roles they can use to act on the system itself. Frederick Muriuki Muriithi
2023-09-26migrations: Create `group_resources` table.Frederick Muriuki Muriithi
2023-09-26Drop `group_id` from resources table...Drop the `group_id` from the `resources` table and update all dependent tables to fix FOREIGN KEY constraints to ensure integrity of the data. Frederick Muriuki Muriithi
2023-09-26Add `system` and `group` resource categories.Frederick Muriuki Muriithi
2023-09-26Resources refactor: Add `resource_ownership` table...New table to link resources to groups, where relevant. Frederick Muriuki Muriithi
2023-09-19Remove pinned commitFrederick Muriuki Muriithi
2023-09-06Update yoyo-migration and mypy...Update the dependencies to enable the use of Python-3.10 Frederick Muriuki Muriithi
2023-08-31Add documentation on troubleshooting tokensFrederick Muriuki Muriithi
2023-08-31Indent the code with `guix-devel-mode`Frederick Muriuki Muriithi
2023-08-30Replace `(...) with (list ...): Fixes "undefined gexp" failure....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 Frederick Muriuki Muriithi
2023-08-30Include missing module.Frederick Muriuki Muriithi
2023-08-25Fix linting issues with package definition.Frederick Muriuki Muriithi
2023-08-24Add LICENSE fileFrederick Muriuki Muriithi
2023-08-23Add gunicorn as a dependency.Frederick Muriuki Muriithi
2023-08-23pylint: Load extra checkers.Frederick Muriuki Muriithi
2023-08-23pylint: Remove statement calling non-existent memberFrederick Muriuki Muriithi
2023-08-23pylint: replace ellipsis with statement raising exception.Frederick Muriuki Muriithi
2023-08-23pylint: Replace `lambda ...` statements with `def ...`Frederick Muriuki Muriithi
2023-08-16Do not use current-filename....For some reason, current-filename does not work with Guix channels. This change was provided by Arun Isaac<arunisaac@systemreboot.net> but I could not seem to figure out how to download the patches from protonmail therefore I give the credit here. Frederick Muriuki Muriithi
2023-08-16Fix typo in package name.Frederick Muriuki Muriithi
2023-08-16Do not find the exact version for Guix package....Finding the exact version number is a lot of work for a minor cosmetic effect. This change was suggested by Arun. I could not figure out how to download the patch from protonmail directly, so I have to give credit here. Frederick Muriuki Muriithi
2023-08-16Remove definition (use on in `guix-bioinformatics`)Frederick Muriuki Muriithi
2023-08-16Add `guix-bioinformatics` and `guix-past` as channel dependencies.Frederick Muriuki Muriithi
2023-08-16Avoid extreme nesting for single-package channel.Frederick Muriuki Muriithi
2023-08-14Set version to hard-coded value in checkoutFrederick Muriuki Muriithi
2023-08-14Fix bugsFrederick Muriuki Muriithi
2023-08-14Wrap package definition in `(define-public ...)`Frederick Muriuki Muriithi
2023-08-14Add missing dependency...Define `python-authlib` package. Frederick Muriuki Muriithi
2023-08-14Make repository a channel.Frederick Muriuki Muriithi
2023-08-09Add documentation on configuration and installation.Frederick Muriuki Muriithi
2023-08-08Set the root packages as "gn_auth"...* setup.py: Delete "packages". Add package_dir. Munyoki Kilyungi
2023-08-08Quiet linter: Eliminate trailing newline.Frederick Muriuki Muriithi
2023-08-08Run test with build...Modify the guix build `check' phase to run the tests with pytest. Frederick Muriuki Muriithi
2023-08-08Use relative imports to break circular import errorsFrederick Muriuki Muriithi
2023-08-08Docs: Add documentationFrederick Muriuki Muriithi
2023-08-08Add WSGI entry point.Frederick Muriuki Muriithi
2023-08-08Fix type-checking errorsFrederick Muriuki Muriithi
2023-08-08Fix issues caught by linter...* Add a .pylintrc to silence annoying messages * Fix imports * Add missing `parse_db_url` function * Add a new `gn_auth.auth.db.redis` module Frederick Muriuki Muriithi