aboutsummaryrefslogtreecommitdiff
AgeCommit message (Expand)Author
2023-03-13auth: separate user detail migration from data migration...Due to the fact that the data migration requires higher privileges than the user details, separate the user details migration endpoint from the data migrations endpoint. Frederick Muriuki Muriithi
2023-03-13Add 'ON UPDATE/DELETE' clauses to foreign keys.Frederick Muriuki Muriithi
2023-03-13auth: cURL: Add some docs on using cURLFrederick Muriuki Muriithi
2023-03-10auth: data-migration: Fix minor bugsFrederick Muriuki Muriithi
2023-03-09auth: redis data: migrate data in redis...Implement the code to migrate the data from redis to SQLite. Frederick Muriuki Muriithi
2023-03-09auth: data migration: Data migration outline...Provide an outline of the data migration steps to be taken from some results of the experiments with the data in redis. Frederick Muriuki Muriithi
2023-03-09auth: introspection: Protect introspection endpoint...The introspection endpoint could contain privileged information, thus requires that the endpoint be protected. This commit ensures that a user has authenticated to the system and that the client they are using be one of the allowed clients. Frederick Muriuki Muriithi
2023-03-08auth: users: Use the same basic functions for password hashing...To avoid repeating the same thing in multiple places, leading to errors and breakages, reuse the same basic functions for password hashing. Frederick Muriuki Muriithi
2023-03-08Replace Bcrypt with Argon2 for better security....Bcrypt is now somewhat vulnerable to offline cracking, so we move our password hashing over to Argon2. Frederick Muriuki Muriithi
2023-03-07auth: group_roles: Enable addition/deletion of privilegesFrederick Muriuki Muriithi
2023-03-07auth: resources: unassign roles on resource from a user.Frederick Muriuki Muriithi
2023-03-07auth: user_by_id: Return a user or raise an exception...Fetching the user by id should return the user, or raise an exception. We get rid of the Maybe monad here since it is leading to some weird code flows - probably the wrong monad to use here. Frederick Muriuki Muriithi
2023-03-06auth: privileges/roles: fix issues caught by tests.Frederick Muriuki Muriithi
2023-03-06auth: resources: Enable assigning a user roles on resourcesFrederick Muriuki Muriithi
2023-03-06auth: resources: Link role's group to the resource's groupFrederick Muriuki Muriithi
2023-03-06auth: resources: Get all users with access to a particular resource.Frederick Muriuki Muriithi
2023-03-03auth: Enable viewing group role details.Frederick Muriuki Muriithi
2023-03-03auth: group roles: enable creation and listing of group roles.Frederick Muriuki Muriithi
2023-03-02auth: user registration: Rework error checking. Add email validationFrederick Muriuki Muriithi
2023-03-01Fetch sampledata...* gn3/api/sampledata.py (get_sampledata): New end-point. * gn3/app.py: Register above end-point. * gn3/settings.py: Add new conf variable for LMDB. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com> Munyoki Kilyungi
2023-03-01Open lmdb path in readonly mode...* gn3/db/matrix.py (get_total_versions, get_nth_matrix, get_current_matrix): Open lmdb in readonly mode. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com> Munyoki Kilyungi
2023-03-01Create API endpoint for fetching trait metadata...* gn3/api/metadata.py (dataset_metadata): New function and endpoint. (jsonify_dataset_metadata): Rename to dataset_metadata. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com> Munyoki Kilyungi
2023-03-01Fetch trait metadata from RDF...* gn3/db/rdf.py (get_dataset_metadata): New function. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com> Munyoki Kilyungi
2023-02-28auth: Unlink data from resources...Enable the data editor to unlink data from a particular resource. data-access-levels-endpointFrederick Muriuki Muriithi
2023-02-28auth: Unlink data from resources...Enable the data editor to unlink data from a particular resource. Frederick Muriuki Muriithi
2023-02-27auth: Endpoint to get access levels for data...When the endpoint is accessed with a list of traits, it should/will respond with the access privileges for each of the traits attached for the active user. Frederick Muriuki Muriithi
2023-02-24auth: resources: Fix query for data not linked to resourcesFrederick Muriuki Muriithi
2023-02-24auth: resources: Fix queries loading resources data.Frederick Muriuki Muriithi
2023-02-24auth: resources: Link data to resources.Frederick Muriuki Muriithi
2023-02-23auth: Link data in MySQL to the groups (in SQLite)...In order for the group leaders (and other resource creators) to be able to link data to the resources, the data needs to be first linked to the relevant group. This commit enables the system admin to link the data in MySQL to the groups. Frederick Muriuki Muriithi
2023-02-22auth: List data not linked to any group.Frederick Muriuki Muriithi
2023-02-21auth: db: DEBUG: Output quer(y|ies) that were run.Frederick Muriuki Muriithi
2023-02-21auth: resources: Attach resource data and list unlinked data....Load the data that is attached to a particular resource together with the resource. List any unlinked data: useful when linking data to resources. Frederick Muriuki Muriithi
2023-02-21auth: migrations: Link to data in main db...Provide the `linked_group_data` table to be used to link to data in the main database. Update the `mrna_resources`, `genotype_resources` and `phenotype_resources` tables to rely on the `linked_group_data` table. Frederick Muriuki Muriithi
2023-02-13scripts: Fallback to 1 worker when indexing....* scripts/index-genenetwork (worker_queue): Set default number of workers to 1 if the number of CPUs cannot be determined. Arun Isaac
2023-02-13scripts: Type hint xapian indexing script....* scripts/index-genenetwork: Import Callable, Generator, Iterable and List from typing. Type hint all functions. Arun Isaac
2023-02-10Return empty tuple rather than Nothing...When user has no roles assigned, return an empty tuple rather than pymonad.maybe.Nothing to ease maintenance. Frederick Muriuki Muriithi
2023-02-10Fix linting errors.Frederick Muriuki Muriithi
2023-02-10Add example utility script to run development serverFrederick Muriuki Muriithi
2023-02-10auth: CLI: Provide a way to set an existing user as a system admin...Provide a way to set a user as a system administrator via CLI. This method was chosen rather that using the WebUI since most users will not have access to the CLI. It also means that assigning system administration privileges will not be an accident, since one has to actually run the command manually on the CLI. Frederick Muriuki Muriithi
2023-02-10auth: migrations: new privilege and role...Add a new data distribution privilege Add a new system-administrator role Frederick Muriuki Muriithi
2023-02-09auth: Reject request to join a group....* gn3/auth/authorisation/groups/models.py: Modify function to either accept or reject join requests. * gn3/auth/authorisation/groups/views.py: Provide endpoint to reject join requests. * migrations/auth/20230207_01_r0bkZ-create-group-join-requests-table.py: Prevent user from applying to join the same group more than once. Frederick Muriuki Muriithi
2023-02-09auth: users: Check whether a user has an active join request.Frederick Muriuki Muriithi
2023-02-08auth: groups: handle join requests.Frederick Muriuki Muriithi
2023-02-07auth: groups: Enable users to request to join group.Frederick Muriuki Muriithi
2023-02-06Get the N-th matrix given N, an index value...* gn3/db/matrix.py (get_nth_matrix): New function. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com> Munyoki Kilyungi
2023-02-06Get total number of versions that a database has...* gn3/db/matrix.py (get_total_versions): New function. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com> Munyoki Kilyungi
2023-02-06Add method to fetch the current matrix...* gn3/db/matrix.py: New file. Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com> Munyoki Kilyungi
2023-02-06auth: resource: Enable viewing the details of a resource.Frederick Muriuki Muriithi
2023-02-03auth: commit missing module.Frederick Muriuki Muriithi