Description
To get rid of PathMixin
and RepositoryApiMixin
move the following properties to the config class from #3081 and use the config dispatcher where they are needed.
- RepositoryApiMixin.renku_home
- RepositoryApiMixin.renku_path
- RepositoryApiMixin.parent
- RepositoryApiMixin.data_dir
- RepositoryApiMixin.docker_path
- RepositoryApiMixin.template_checksums
- RepositoryApiMixin.database_path
In addition, LOCK_SUFFIX
, DATABASE_PATH
, DOCKERFILE
, TEMPLATE_CHECKSUMS
, RENKU_PROTECTED_PATHS
and DATABASE_METADATA_PATH
should just be module level constants in renku/core/constant.py
.
We should remove attrs
and replace it with proper __init__
.
with_metadata
should be a ProjectContext
(or similar) context manager.
is_project_set
can be removed, as it's only used in one place and essentially useless.
RepositoryApiMixin.project
should be removed as well in favor of using the IProjectGateway directly.
transaction_id
can probably be moved to Repository
.
All the methods should be normal business logic methods, unless they really need to be on a class.
The locks can be added to the lock class from #3082 that also gets injected.
blocked by #3081
Metadata
Metadata
Assignees
Labels
Type
Projects
Status