Skip to content

User roles and Unit capabilities

Roles

What is the purpose of User roles in the system?

The User role affects their capabilities when using a Pepeunit instance, as well as how they interact with RepositoryRegisty, Repo, Unit, UnitNode, Instance and Operation Task entities.

Unit Developer

The Unit Developer is the creator of Git repositories in GitLab or GitHub. By using RepositoryRegisty for their own purposes, they indirectly interact with Pepeunit via their code, which is used by Users in the form of RepositoryRegisty, Repo and Unit entities.

Capabilities of a Unit Developer

User

The User is a person registered in a Pepeunit instance.

Capabilities of an ordinary User

Admin

The Administrator is the owner acting as a moderator, with full control over the Pepeunit instance.

Capabilities of an Administrator

  • Block Users who violate the terms of use of the instance
  • View all RepositoryRegisty, Repo, Unit and UnitNode entities; their interaction capabilities are equivalent to those they would have if appropriate visibility were granted
  • Cannot obtain encrypted data directly through Pepeunit, but has the technical ability to decrypt any encrypted information in the instance
  • Add external Instances, move them to Trust or Blocking, and force-poll one instance or all of them at once
  • Global commands on the Domain node and inspecting their logs in Operation Tasks: integration tests, scanning known instances, updating all RepositoryRegistry entries, and mass Unit firmware updates

Bot

An external agent — a regular internet User or any program that has not gone through the authorization stage.

Capabilities of an external agent

  • Can view all public records from RepositoryRegisty
  • Can interact only with entities whose visibility level is Public
  • Can read the public instance state GET /pepeunit/api/v1/instances/current and the lists of known Instances