Skip to content

repository_tool vs developer_tool: refactoring needed #840

@awwad

Description

@awwad

TUF provides interfaces for the update-providing side: repository_tool and developer_tool, and interfaces for the update-client side: updater (and now client...).

On the update-providing side, repository_tool and developer_tool have a lot of code achieving the same or similar things distinctly. These are in need of refactoring, as the disparities make the whole difficult to read and keep in mind, and they sit in a reference implementation. (Note that, historically, part of the reason for the redundant code is that they were originally intended as two separate stand-alone clients.)

Now, I think, the missions for these two modules should be to provide a simple, flexible, and thin interface to a set of code that provides the majority of the common functionality -- preferably in repository_lib, but alternatively in some new module if that proves more appropriate.

  • developer_tool is meant to allow developers an interface to update/sign their artifacts and provide whatever is needed to a repository maintainer
  • repository_tool is meant to allow repository maintainers to manage the repository, including updates to top-level roles and integration of delegated roles.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions