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.
Any person with a user account can create a campaign.
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.
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 enable campaigns for other site admins by setting the site configuration property "experimentalFeatures": { "automation": "enabled" }
This setting gives site admins write and read access to campaigns.
A site admin can allow non-site-admin users to view campaigns by setting the site configuration property camapigns.readAccess.enabled
to true
.