Skip to main content

Collaboration

Abstract

Collaboration is the way different people can work on Bitrise projects together. Bitrise offers multiple levels of collaboration options, with different product solutions having their own fine-grained collaboration features.

Collaboration is the way different people can work on Bitrise projects together. Bitrise offers multiple levels of collaboration options, with different product solutions having their own fine-grained collaboration features.

Collaboration covers:

  • Membership in Bitrise workspaces, including workspace groups.

  • Roles and permissions in Bitrise workspaces: actions that users with different access levels can perform.

  • Product access: you can restrict users to access only Bitrise CI or Release Management.

  • Roles and permissions in projects, including CI configurations and Release Management apps.

Collaboration in workspaces

The main organizing entity of Bitrise is the workspace. Workspaces own projects, you can connect third-party integrations on workspace level, and you can set up collaboration in a workspace.

Workspace owners

Each workspace has at least one owner: by default, it's the account that created the workspace. Owners have full control over all aspects of the workspace, including collaboration features.

For more information, check out Managing the owners of a workspace.

Workspace members

You can add individual members to workspaces. You can assign product access and project roles to members:

  • Product access means selecting the products the member can work on. For example, you can configure members to only have access to Bitrise CI, not Release Management.

  • Project roles mean the roles and permissions on the specific projects owned by the workspace. You can assign different roles and permissions for different projects. Within the same project, you can assign different roles for Bitrise CI and Release Management, even if the member has access to both products.

As such, even if your workspace has hundreds of projects, you can configure fine-grained access for team members so they only see the products and projects that they need.

For more information, check out Workspace members.

Workspace groups

Workspace groups are made up of workspace members. Groups make it easy to manage product and project access in bulk. You don't need to set up specific fine-grained access for every member separately; instead, you invite a member and then add them to a group with the required permissions.

Just like members, groups can be restricted to certain products and projects. Groups can be assigned roles and permissions on projects: this means that all members in the group will be assigned those roles and permissions.

Group permissions don't override workspace member permissions. For example, let's say that:

  • A user is part of a group that has Developer access to a CI project.

  • The same user has Admin access to the same CI project as a workspace member.

In this case, the user will have Admin access to the project.

For more information, check out Workspace groups.

Outside contributors in workspaces

Outside contributors are users who aren't members of the workspace but they are added to one or more projects that the workspace owns. These users won't have access to the workspace itself, only the assigned projects. Their roles and permissions can be configured only on the Project settings page.

Outside contributors have to be enabled in the Workspace settings page.

Workspace roles

When inviting someone to a workspace, you can also assign a workspace role to them. Workspace roles define the users' access to the workspace itself, what actions the users can perform. For example, a user with the Manager role can update workspace integrations, add or remove members but can't access billing details.

For more information, check out Roles and permissions in workspaces.

Collaboration in projects

Project-level collaboration means users working together on a Bitrise project. User can have different roles and permissions within the same project. If the project has both a CI configuration and a Release Management app, you can configure separate access for those two products.

Project collaboration is defined in two ways: by adding contributors and by assigning workspace groups to the project.

Project contributors

A project contributor is a user who is individually assigned to a project, not as part of a group. A contributor can be a member of the workspace that owns the project, or they can be an outside contributor. Outside contributors can be added only if the feature is enabled for the workspace that owns the project.

Contributors are assigned their own roles and permissions to the project. You can add workspace members as contributors to a project either from the Workspace settings page or the Project settings page. Outside contributors can only be added on the Project settings page.

For details, check out Managing user access to a project.

Groups

Groups are workspace groups: you can assign workspace groups to any project owned by the workspace. On the project level, this means that every member of the group will have the same roles and permissions that the group has on the project.

You can assign workspace groups to projects either from the Workspace settings page or Project settings page.

For details, check out Managing user access to a project.

Roles and permissions in projects

Projects have no separate roles just for project access: roles and permissions are based on product access. Bitrise CI and Release Management both have their own set of roles and permissions. Each contributor and group can be assigned separate roles for these two products.

There is one exception: you can grant a user or group full Admin access to a project. Admin access means managing all aspects of a project, with access to all products. This is effectively the same as separately granting the Admin role on both Bitrise CI and Release Management.

Read more in Product access.

Product access

Collaboration includes roles and permissions: what actions users can perform. On Bitrise, the roles and permissions differ by product: you can configure fine-grained access separately for Bitrise CI and Release Management.

Product access is mostly independent of workspace roles and permissions. A user who is an Admin on a CI project or a Release Management app doesn't necessarily have full access to the settings of the workspace that owns the project. The exception to that is Workspace owners: all owners have full access to every aspect of the projects owned by the workspace.

Admin access

You can grant Admin access to users and groups to enable them to manage all aspects of one or more selected projects. This includes access to all products, such as Bitrise CI and Release Management.

You can configure admin access for users or groups both from the Workspace settings page and the Project settings page.

For details, check out Managing product and project access for a member.

Bitrise CI roles and permissions

Bitrise CI has its own set of roles and permissions that define how users can interact with the CI/CD process. Each user or workspace group can be granted access to Bitrise CI and then assigned roles on CI projects.

The specific CI roles and permissions define access to things such as project settings, Pipelines, Workflows, and other important parts of CI.

For details, check out Roles and permissions for Bitrise CI.

Release Management roles and permissions

Release Management has its own set of roles and permissions. These define how users can interact with releases, test distribution, and CodePush.

In addition, Release Management has a specific collaboration feature: tester groups. A tester group is a group of users who can automatically receive installable artifacts for testing. Testers have limited permissions and they can only be selected from users who are already members of the project that the Release Management app belongs to.

For details, check out Roles and permissions.