Skip to content

Roles & Permissions

RunnerHub uses a role-based access control (RBAC) system for managing team members and their permissions. Four roles define what team members can do within a workspace, from full administrative control down to read-only access.

PermissionOWNERADMINMEMBERVIEWER
View workspaces
View apps & jobs
View logs & artifacts
Download artifacts
Trigger builds (cancel/rerun)
Manage app settings
Delete apps
Edit Cloud YAML
Manage environment variables
Manage schedules
Connect repositories
Configure signing
Manage secrets
Manage team members
Delete workspace
Manage billing

The workspace owner has full administrative control over the workspace and all its resources.

  • Create and delete apps
  • Configure build pipelines (Cloud YAML)
  • Manage environment variables
  • Set up Apple code signing credentials
  • Create and manage team members
  • Share workspaces with team members
  • Manage billing and subscription
  • Access all job logs and artifacts

The workspace OWNER is responsible for the subscription plan and billing. All minutes used by team members (including reruns) are charged to the OWNER’s account.

The ADMIN role provides management capabilities for team configuration and app lifecycle, while maintaining developer execution permissions.

  • Manage team members (invite, remove, change roles)
  • Configure app settings (environment variables, signing, schedules, repositories)
  • Create and delete apps
  • Trigger builds (cancel, rerun)
  • View all team resources
  • Team leads who need to configure settings and manage team access
  • Senior developers who manage app configurations
  • DevOps engineers responsible for CI/CD setup

The MEMBER role provides build execution and monitoring without configuration management.

  • View: Workspaces, apps, build history, logs
  • Execute: Trigger builds (cancel, rerun)
  • Download: Build artifacts
  • Cannot: Edit configuration, manage team, manage apps, manage signing
  • Developers who need to monitor builds and rerun jobs
  • QA engineers who need to download artifacts
  • Team members who should not modify CI configuration
  • Contractors or freelancers with limited scope

The UI adapts to member permissions:

  • Configuration tabs (Cloud YAML, Variables, Settings, Schedule, Repositories) are hidden for MEMBER users
  • Direct URL navigation to restricted pages redirects to the Jobs tab
  • Only executable actions appear in the interface

The VIEWER role provides read-only access to a workspace. Viewers can see all builds and artifacts but cannot execute any actions.

  • View: Workspaces, apps, build history, logs, and artifacts
  • Download: Build artifacts
  • Cannot: Cancel jobs, rerun jobs, trigger builds, edit any configuration
  • Stakeholders or managers who need to monitor progress
  • Clients who need visibility into builds without execution rights
  • Team members from non-technical departments
  • Archival/read-only team access during project transitions
  • Compliance officers or auditors who need visibility

The UI adapts to viewer permissions:

  • All build and artifact viewing features are available
  • Configuration tabs (Cloud YAML, Variables, Settings, Schedule, Repositories) are hidden
  • Action buttons (Cancel, Rerun, Trigger Build) are disabled or hidden
  • Direct URL navigation to restricted pages redirects to the Jobs tab
  • Minutes are charged to the workspace OWNER, regardless of who triggered the job
  • If a MEMBER reruns a job, the cost is charged to the OWNER
  • Teams do not require PAYG or higher plans for each individual member
  • A user on the Free plan can be invited as a MEMBER to teams owned by paid users (PAYG, Pro, Business)
  • Free members consume minutes from the team owner’s plan
  • Free users themselves cannot create teams (only PAYG+ users can create teams)

Only OWNER can invite new team members.

  1. Open your workspace
  2. Navigate to Teams → [team card]
  3. Click the Add icon button (person_add)
  4. Enter the email and select role (ADMIN, MEMBER, or VIEWER)
  5. Click Send Invite

The invited user will receive an email invitation. They can accept the invitation to gain access to the team.

Role Selection Tips:

  • Choose ADMIN for team leads and those who need to manage app settings and team members
  • Choose MEMBER for developers and build operators
  • Choose VIEWER for stakeholders, managers, and read-only access
  1. Open your workspace
  2. Navigate to Teams → [team card]
  3. Find the member in the list
  4. Click the Remove button or icon
  5. Confirm removal

The member immediately loses access to the team and shared workspaces.

Scenario 1: Indie Developer with Contractors

Section titled “Scenario 1: Indie Developer with Contractors”
  • OWNER: Indie developer
  • MEMBERS: Contractors who need to monitor builds and download releases
  • OWNER: Engineering lead (manages billing, configuration)
  • MEMBERS: 2-3 developers (run jobs, view logs)
  • OWNER: Tech lead (overall responsibility)
  • ADMIN (future): DevOps engineer (expanded permissions)
  • MEMBERS: Developers (daily CI usage)
  • VIEWER: Product managers, stakeholders (monitoring only)
  • OWNER: Engineering lead
  • MEMBERS: Backend and iOS developers
  • VIEWER: QA team, product managers, client stakeholders
  • Result: Everyone can see builds, only developers can execute

Permission Assignment

Role Transitions

When a team member’s responsibilities change:

FromToNotes
VIEWER → MEMBERPerson now needs to rerun/cancel buildsIncrease privileges
MEMBER → VIEWERPerson moving to non-technical roleDecrease privileges
MEMBER → OWNERRare; consider creating separate workspace insteadHigh responsibility

External Access

  • Contractors: Usually MEMBER; use VIEWER if they only need to monitor
  • Clients/Stakeholders: Use VIEWER for maximum safety
  • Vendors: VIEWER only, never OWNER
  • Auditors: VIEWER to maintain read-only compliance