You can customize access to a campaign and propose changes to repositories with varying permission levels. Other people see the campaign's proposed changes to a repository if they can view that repository; otherwise, they can see only limited, non-identifying information about the change.
The permission levels for a campaign are:
To see the campaign's proposed changes on a repository, a person also needs read access to that specific repository. Read or admin access on the campaign does not (by itself) entitle a person to viewing all of the campaign's changes. For more information, see "Repository permissions for campaigns".
Site admins have admin permissions on all campaigns.
For now, users only have read access to campaigns. In the future, users will have admin permissions on their own campaigns too.
Campaign action | Read | Admin |
---|---|---|
View campaign name and description Also applies to viewing the input branch name, created/updated date, and campaign status |
⬤ | ⬤ |
View burndown chart (aggregate changeset statuses over time) | ⬤ | ⬤ |
View list of patches and changesets | ⬤ | ⬤ |
View diffstat (aggregate count of added/changed/deleted lines) | ⬤ | ⬤ |
View error messages (related to creating or syncing changesets) | ⬤ | |
Edit campaign name, description, and branch name | ⬤ | ⬤ |
Update campaign patches (and changesets on code hosts) | ⬤ | |
Publish changesets to code host | ⬤ | |
Add/remove existing changesets to/from campaign | ⬤ | |
Refresh changeset statuses | ⬤ | |
Close campaign | ⬤ | |
Delete campaign | ⬤ |
Authorization for all actions is also subject to repository permissions.
When you create a campaign, you are given admin permissions on the campaign.
All users are automatically given read permissions to a campaign. Granular permissions are not yet supported. Assigning admin permissions on a campaign to another person or to all organization members is not yet supported. Transferring ownership of a campaign is not yet supported.
All interactions with the code host are performed by Sourcegraph with the token with which you configured the code host. These operations include:
In the future you'll be able to perform all code host interactions with a separate access token or your personal code host account.
Your repository permissions determine what information in a campaign you can view. You can only see a campaign's proposed changes to a repository if you have read access to that repository. Read or admin permissions on a campaign does not (by itself) permit you to view all of the campaign's changes.
When you view a campaign, you can see a list of patches and changesets. For each patch and changeset:
When you perform any campaign operation that involves repositories or code host interaction, your current repository permissions are taken into account.
Your repository permissions can change at any time:
If you are not permitted to view a repository on Sourcegraph, then you won't be able to perform any operations on it, even if you are authorized on the code host.
A site admin can disable campaigns for the entire site by setting the site configuration property "campaigns.enabled"
to false
.