diff --git a/CHANGELOG.md b/CHANGELOG.md index 2f00ed3aa99..cedbbbe4dd3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -704,7 +704,7 @@ All notable changes to Sourcegraph are documented in this file. - The environment variable `TELEMETRY_HTTP_PROXY` can be set on the `sourcegraph-frontend` service, to use an HTTP proxy for telemetry and update check requests. [#47466](https://github.com/sourcegraph/sourcegraph/pull/47466) - Kubernetes Deployments: Introduced a new Kubernetes deployment option ([deploy-sourcegraph-k8s](https://github.com/sourcegraph/deploy-sourcegraph-k8s)) to deploy Sourcegraph with Kustomize. [#46755](https://github.com/sourcegraph/sourcegraph/issues/46755) - Kubernetes Deployments: The new Kustomize deployment ([deploy-sourcegraph-k8s](https://github.com/sourcegraph/deploy-sourcegraph-k8s)) introduces a new base cluster that runs all Sourcegraph services as non-root users with limited privileges and eliminates the need to create RBAC resources. [#4213](https://github.com/sourcegraph/deploy-sourcegraph/pull/4213) -- Added the `other.exclude` setting to [Other external service config](https://docs.sourcegraph.com/admin/external_service/other#configuration). It can be configured to exclude mirroring of repositories matching a pattern similar to other external services. This is useful when you want to exclude repositories discovered via `src serve-git`. [#48168](https://github.com/sourcegraph/sourcegraph/pull/48168) +- Added the `other.exclude` setting to [Other external service config](https://docs.sourcegraph.com/admin/code_hosts/other#configuration). It can be configured to exclude mirroring of repositories matching a pattern similar to other external services. This is useful when you want to exclude repositories discovered via `src serve-git`. [#48168](https://github.com/sourcegraph/sourcegraph/pull/48168) - The **Site admin > Updates** page displays the upgrade readiness information about schema drift and out-of-band migrations. [#48046](https://github.com/sourcegraph/sourcegraph/pull/48046) - Pings now contain ownership search and file-view activity counts. [#47062](https://github.com/sourcegraph/sourcegraph/47062) - Greatly improves keyboard handling and accessibility of the files and symbol tree on the repository pages. [#12916](https://github.com/sourcegraph/sourcegraph/issues/12916) @@ -2217,7 +2217,7 @@ API docs is a new experimental feature of Sourcegraph ([learn more](https://docs - Go `1.15` introduced changes to SSL/TLS connection validation which requires certificates to include a `SAN`. This field was not included in older certificates and clients relied on the `CN` field. You might see an error like `x509: certificate relies on legacy Common Name field`. We recommend that customers using Sourcegraph with an external database and connecting to it using SSL/TLS check whether the certificate is up to date. - RDS Customers please reference [AWS' documentation on updating the SSL/TLS certificate](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/UsingWithRDS.SSL-certificate-rotation.html). - Search results on `.rs` files now recommend `lang:rust` instead of `lang:renderscript` as a filter. [#18316](https://github.com/sourcegraph/sourcegraph/pull/18316) -- Campaigns users creating Personal Access Tokens on GitHub are now asked to request the `user:email` scope in addition to the [previous scopes](https://docs.sourcegraph.com/@3.24/admin/external_service/github#github-api-token-and-access). This will be used in a future Sourcegraph release to display more fine-grained information on the progress of pull requests. [#17555](https://github.com/sourcegraph/sourcegraph/issues/17555) +- Campaigns users creating Personal Access Tokens on GitHub are now asked to request the `user:email` scope in addition to the [previous scopes](https://docs.sourcegraph.com/@3.24/admin/code_hosts/github#github-api-token-and-access). This will be used in a future Sourcegraph release to display more fine-grained information on the progress of pull requests. [#17555](https://github.com/sourcegraph/sourcegraph/issues/17555) ### Fixed @@ -2519,7 +2519,7 @@ API docs is a new experimental feature of Sourcegraph ([learn more](https://docs - Saved search emails now include a link to the user's saved searches page. [#11651](https://github.com/sourcegraph/sourcegraph/pull/11651) - Campaigns can now be synced using GitLab webhooks. [#12139](https://github.com/sourcegraph/sourcegraph/pull/12139) - Configured `observability.alerts` can now be tested using a GraphQL endpoint, `triggerObservabilityTestAlert`. [#12532](https://github.com/sourcegraph/sourcegraph/pull/12532) -- The Sourcegraph CLI can now serve local repositories for Sourcegraph to clone. This was previously in a command called `src-expose`. See [serving local repositories](https://docs.sourcegraph.com/admin/external_service/src_serve_git) in our documentation to find out more. [#12363](https://github.com/sourcegraph/sourcegraph/issues/12363) +- The Sourcegraph CLI can now serve local repositories for Sourcegraph to clone. This was previously in a command called `src-expose`. See [serving local repositories](https://docs.sourcegraph.com/admin/code_hosts/src_serve_git) in our documentation to find out more. [#12363](https://github.com/sourcegraph/sourcegraph/issues/12363) - The count of retained, churned, resurrected, new and deleted users will be sent back in pings. [#12136](https://github.com/sourcegraph/sourcegraph/pull/12136) - Saved search usage will be sent back in pings. [#12956](https://github.com/sourcegraph/sourcegraph/pull/12956) - Any request with `?trace=1` as a URL query parameter will enable Jaeger tracing (if Jaeger is enabled). [#12291](https://github.com/sourcegraph/sourcegraph/pull/12291) @@ -2637,7 +2637,7 @@ API docs is a new experimental feature of Sourcegraph ([learn more](https://docs - The search results page now shows a small UI notification if either repository forks or archives are excluded, when `fork` or `archived` options are not explicitly set. [#10624](https://github.com/sourcegraph/sourcegraph/pull/10624) - Prometheus metric `src_gitserver_repos_removed_disk_pressure` which is incremented everytime we remove a repository due to disk pressure. [#10900](https://github.com/sourcegraph/sourcegraph/pull/10900) -- `gitolite.exclude` setting in [Gitolite external service config](https://docs.sourcegraph.com/admin/external_service/gitolite#configuration) now supports a regular expression via the `pattern` field. This is consistent with how we exclude in other external services. Additionally this is a replacement for the deprecated `blacklist` configuration. [#11403](https://github.com/sourcegraph/sourcegraph/pull/11403) +- `gitolite.exclude` setting in [Gitolite external service config](https://docs.sourcegraph.com/admin/code_hosts/gitolite#configuration) now supports a regular expression via the `pattern` field. This is consistent with how we exclude in other external services. Additionally this is a replacement for the deprecated `blacklist` configuration. [#11403](https://github.com/sourcegraph/sourcegraph/pull/11403) - Notifications about Sourcegraph being out of date will now be shown to site admins and users (depending on how out-of-date it is). - Alerts are now configured using `observability.alerts` in the site configuration, instead of via the Grafana web UI. This does not yet support all Grafana notification channel types, and is not yet supported on `sourcegraph/server` ([#11473](https://github.com/sourcegraph/sourcegraph/issues/11473)). For more details, please refer to the [Sourcegraph alerting guide](https://docs.sourcegraph.com/admin/observability/alerting). - Experimental basic support for detecting if your Sourcegraph instance is over or under-provisioned has been added through a set of dashboards and warning-level alerts based on container utilization. @@ -2927,7 +2927,7 @@ API docs is a new experimental feature of Sourcegraph ([learn more](https://docs - Experimental: Added new field `experimentalFeatures.customGitFetch` that allows defining custom git fetch commands for code hosts and repositories with special settings. [#8435](https://github.com/sourcegraph/sourcegraph/pull/8435) - Experimental: the search query input now provides syntax highlighting, hover tooltips, and diagnostics on filters in search queries. Requires the global settings value `{ "experimentalFeatures": { "smartSearchField": true } }`. - Added a setting `search.hideSuggestions`, which when set to `true`, will hide search suggestions in the search bar. [#8059](https://github.com/sourcegraph/sourcegraph/pull/8059) -- Experimental: A tool, [src-expose](https://docs.sourcegraph.com/admin/external_service/other#experimental-src-expose), can be used to import code from any code host. +- Experimental: A tool, [src-expose](https://docs.sourcegraph.com/admin/code_hosts/other#experimental-src-expose), can be used to import code from any code host. - Experimental: Added new field `certificates` as in `{ "experimentalFeatures" { "tls.external": { "certificates": [""] } } }`. This allows you to add certificates to trust when communicating with a code host (via API or git+http). We expect this to be useful for adding internal certificate authorities/self-signed certificates. [#71](https://github.com/sourcegraph/sourcegraph/issues/71) - Added a setting `auth.minPasswordLength`, which when set, causes a minimum password length to be enforced when users sign up or change passwords. [#7521](https://github.com/sourcegraph/sourcegraph/issues/7521) - GitHub labels associated with code change campaigns are now displayed. [#8115](https://github.com/sourcegraph/sourcegraph/pull/8115) @@ -3255,8 +3255,8 @@ This is `3.12.8` release with internal infrastructure fixes to publish the docke - There is a new `patternType:` search token which overrides the `search.defaultPatternType` setting, and the active state of the dot-star icon in determining the pattern type of the query. - Old URLs without a patternType URL parameter will be redirected to the same URL with patternType=regexp appended to preserve intended behavior. -- Added support for GitHub organization webhooks to enable faster updates of metadata used by [campaigns](https://about.sourcegraph.com/product/code-change-management/), such as pull requests or issue comments. See the [GitHub webhook documentation](https://docs.sourcegraph.com/admin/external_service/github#webhooks) for instructions on how to enable webhooks. -- Added support for GitHub organization webhooks to enable faster updates of changeset metadata used by campaigns. See the [GitHub webhook documentation](https://docs.sourcegraph.com/admin/external_service/github#webhooks) for instructions on how to enable webhooks. +- Added support for GitHub organization webhooks to enable faster updates of metadata used by [campaigns](https://about.sourcegraph.com/product/code-change-management/), such as pull requests or issue comments. See the [GitHub webhook documentation](https://docs.sourcegraph.com/admin/code_hosts/github#webhooks) for instructions on how to enable webhooks. +- Added support for GitHub organization webhooks to enable faster updates of changeset metadata used by campaigns. See the [GitHub webhook documentation](https://docs.sourcegraph.com/admin/code_hosts/github#webhooks) for instructions on how to enable webhooks. - Added burndown chart to visualize progress of campaigns. - Added ability to edit campaign titles and descriptions. @@ -3302,7 +3302,7 @@ This is `3.12.8` release with internal infrastructure fixes to publish the docke ### Changed -- A `hardTTL` setting was added to the [Bitbucket Server `authorization` config](https://docs.sourcegraph.com/admin/external_service/bitbucketserver#configuration). This setting specifies a duration after which a user's cached permissions must be updated before any user action is authorized. This contrasts with the already existing `ttl` setting which defines a duration after which a user's cached permissions will get updated in the background, but the previously cached (and now stale) permissions are used to authorize any user action occuring before the update concludes. If your previous `ttl` value is larger than the default of the new `hardTTL` setting (i.e. **3 days**), you must change the `ttl` to be smaller or, `hardTTL` to be larger. +- A `hardTTL` setting was added to the [Bitbucket Server `authorization` config](https://docs.sourcegraph.com/admin/code_hosts/bitbucketserver#configuration). This setting specifies a duration after which a user's cached permissions must be updated before any user action is authorized. This contrasts with the already existing `ttl` setting which defines a duration after which a user's cached permissions will get updated in the background, but the previously cached (and now stale) permissions are used to authorize any user action occuring before the update concludes. If your previous `ttl` value is larger than the default of the new `hardTTL` setting (i.e. **3 days**), you must change the `ttl` to be smaller or, `hardTTL` to be larger. ### Fixed @@ -3340,7 +3340,7 @@ This is `3.12.8` release with internal infrastructure fixes to publish the docke ### Changed -- In the [GitHub external service config](https://docs.sourcegraph.com/admin/external_service/github#configuration) it's now possible to specify `orgs` without specifying `repositoryQuery` or `repos` too. +- In the [GitHub external service config](https://docs.sourcegraph.com/admin/code_hosts/github#configuration) it's now possible to specify `orgs` without specifying `repositoryQuery` or `repos` too. - Out-of-the-box TypeScript code intelligence is much better with an updated ctags version with a built-in TypeScript parser. - Sourcegraph uses Git protocol version 2 for increased efficiency and performance when fetching data from compatible code hosts. - Searches with `repohasfile:` are faster at finding repository matches. [#4833](https://github.com/sourcegraph/sourcegraph/issues/4833). @@ -3372,7 +3372,7 @@ This is `3.12.8` release with internal infrastructure fixes to publish the docke ### Added -- The `github.exclude` setting in [GitHub external service config](https://docs.sourcegraph.com/admin/external_service/github#configuration) additionally allows you to specify regular expressions with `{"pattern": "regex"}`. +- The `github.exclude` setting in [GitHub external service config](https://docs.sourcegraph.com/admin/code_hosts/github#configuration) additionally allows you to specify regular expressions with `{"pattern": "regex"}`. - A new [`quicklinks` setting](https://docs.sourcegraph.com/user/personalization/quick_links) allows adding links to be displayed on the homepage and search page for all users (or users in an organization). - Compatibility with the [Sourcegraph for Bitbucket Server](https://github.com/sourcegraph/bitbucket-server-plugin) plugin. - Support for [Bitbucket Cloud](https://bitbucket.org) as an external service. @@ -3381,7 +3381,7 @@ This is `3.12.8` release with internal infrastructure fixes to publish the docke - Updating or creating an external service will no longer block until the service is synced. - The GraphQL fields `Repository.createdAt` and `Repository.updatedAt` are deprecated and will be removed in 3.8. Now `createdAt` is always the current time and updatedAt is always null. -- In the [GitHub external service config](https://docs.sourcegraph.com/admin/external_service/github#configuration) and [Bitbucket Server external service config](https://docs.sourcegraph.com/admin/external_service/bitbucket_server#permissions) `repositoryQuery` is now only required if `repos` is not set. +- In the [GitHub external service config](https://docs.sourcegraph.com/admin/code_hosts/github#configuration) and [Bitbucket Server external service config](https://docs.sourcegraph.com/admin/code_hosts/bitbucket_server#permissions) `repositoryQuery` is now only required if `repos` is not set. - Log messages from query-runner when saved searches fail now include the raw query as part of the message. - The status indicator in the navigation bar is now enabled by default - Usernames and org names can now contain the `.` character. [#4674](https://github.com/sourcegraph/sourcegraph/issues/4674) @@ -3430,9 +3430,9 @@ This is `3.12.8` release with internal infrastructure fixes to publish the docke ### Added - Indexed search now supports matching consecutive literal newlines, with queries like e.g. `foo\nbar.*` to search over multiple lines. [#4138](https://github.com/sourcegraph/sourcegraph/issues/4138) -- The `orgs` setting in [GitHub external service config](https://docs.sourcegraph.com/admin/external_service/github) allows admins to select all repositories from the specified organizations to be synced. +- The `orgs` setting in [GitHub external service config](https://docs.sourcegraph.com/admin/code_hosts/github) allows admins to select all repositories from the specified organizations to be synced. - A new experimental search filter `repohascommitafter:"30 days ago"` allows users to exclude stale repositories that don't contain commits (to the branch being searched over) past a specified date from their search query. -- The `authorization` setting in the [Bitbucket Server external service config](https://docs.sourcegraph.com/admin/external_service/bitbucket_server#permissions) enables Sourcegraph to enforce the repository permissions defined in Bitbucket Server. +- The `authorization` setting in the [Bitbucket Server external service config](https://docs.sourcegraph.com/admin/code_hosts/bitbucket_server#permissions) enables Sourcegraph to enforce the repository permissions defined in Bitbucket Server. - A new, experimental status indicator in the navigation bar allows admins to quickly see whether the configured repositories are up to date or how many are currently being updated in the background. You can enable the status indicator with the following site configuration: `"experimentalFeatures": { "statusIndicator": "enabled" }`. - A new search filter `repohasfile` allows users to filter results to just repositories containing a matching file. For example `ubuntu file:Dockerfile repohasfile:\.py$` would find Dockerfiles mentioning Ubuntu in repositories that contain Python files. [#4501](https://github.com/sourcegraph/sourcegraph/pull/4501) @@ -3505,10 +3505,10 @@ This is `3.12.8` release with internal infrastructure fixes to publish the docke - When `repositoryPathPattern` is configured, paths from the full long name will redirect to the configured name. Extensions will function with the configured name. `repositoryPathPattern` allows administrators to configure "nice names". For example `sourcegraph.example.com/github.com/foo/bar` can configured to be `sourcegraph.example.com/gh/foo/bar` with `"repositoryPathPattern": "gh/{nameWithOwner}"`. (#462) - Admins can now turn off site alerts for patch version release updates using the `alerts.showPatchUpdates` setting. Alerts will still be shown for major and minor version updates. -- The new `gitolite.exclude` setting in [Gitolite external service config](https://docs.sourcegraph.com/admin/external_service/gitolite#configuration) allows you to exclude specific repositories by their Gitolite name so that they won't be mirrored. Upon upgrading, previously "disabled" repositories will be automatically migrated to this exclusion list. -- The new `aws_codecommit.exclude` setting in [AWS CodeCommit external service config](https://docs.sourcegraph.com/admin/external_service/aws_codecommit#configuration) allows you to exclude specific repositories by their AWS name or ID so that they won't be synced. Upon upgrading, previously "disabled" repositories will be automatically migrated to this exclusion list. -- Added a new, _required_ `aws_codecommit.gitCredentials` setting to the [AWS CodeCommit external service config](https://docs.sourcegraph.com/admin/external_service/aws_codecommit#configuration). These Git credentials are required to create long-lived authenticated clone URLs for AWS CodeCommit repositories. For more information about Git credentials, see the AWS CodeCommit documentation: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_ssh-keys.html#git-credentials-code-commit. For detailed instructions on how to create the credentials in IAM, see this page: https://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-gc.html -- Added support for specifying a URL formatted `gitolite.host` setting in [Gitolite external service config](https://docs.sourcegraph.com/admin/external_service/gitolite#configuration) (e.g. `ssh://git@gitolite.example.org:2222/`), in addition to the already supported SCP like format (e.g `git@gitolite.example.org`) +- The new `gitolite.exclude` setting in [Gitolite external service config](https://docs.sourcegraph.com/admin/code_hosts/gitolite#configuration) allows you to exclude specific repositories by their Gitolite name so that they won't be mirrored. Upon upgrading, previously "disabled" repositories will be automatically migrated to this exclusion list. +- The new `aws_codecommit.exclude` setting in [AWS CodeCommit external service config](https://docs.sourcegraph.com/admin/code_hosts/aws_codecommit#configuration) allows you to exclude specific repositories by their AWS name or ID so that they won't be synced. Upon upgrading, previously "disabled" repositories will be automatically migrated to this exclusion list. +- Added a new, _required_ `aws_codecommit.gitCredentials` setting to the [AWS CodeCommit external service config](https://docs.sourcegraph.com/admin/code_hosts/aws_codecommit#configuration). These Git credentials are required to create long-lived authenticated clone URLs for AWS CodeCommit repositories. For more information about Git credentials, see the AWS CodeCommit documentation: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_ssh-keys.html#git-credentials-code-commit. For detailed instructions on how to create the credentials in IAM, see this page: https://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-gc.html +- Added support for specifying a URL formatted `gitolite.host` setting in [Gitolite external service config](https://docs.sourcegraph.com/admin/code_hosts/gitolite#configuration) (e.g. `ssh://git@gitolite.example.org:2222/`), in addition to the already supported SCP like format (e.g `git@gitolite.example.org`) - Added support for overriding critical, site, and external service configurations via files. Specify `CRITICAL_CONFIG_FILE=critical.json`, `SITE_CONFIG_FILE=site.json`, and/or `EXTSVC_CONFIG_FILE=extsvc.json` on the `frontend` container to do this. ### Changed @@ -3554,7 +3554,7 @@ This is `3.12.8` release with internal infrastructure fixes to publish the docke ### Added -- The `bitbucketserver.exclude` setting in [Bitbucket Server external service config](https://docs.sourcegraph.com/admin/external_service/bitbucketserver#configuration) additionally allows you to exclude repositories matched by a regular expression (so that they won't be synced). +- The `bitbucketserver.exclude` setting in [Bitbucket Server external service config](https://docs.sourcegraph.com/admin/code_hosts/bitbucketserver#configuration) additionally allows you to exclude repositories matched by a regular expression (so that they won't be synced). ### Changed @@ -3607,7 +3607,7 @@ This is `3.12.8` release with internal infrastructure fixes to publish the docke - Fixed an issue where the default `bitbucketserver.repositoryQuery` would not be created on migration from older Sourcegraph versions. https://github.com/sourcegraph/sourcegraph/issues/3591 - Fixed an issue where Sourcegraph would add deleted repositories to the external service configuration. https://github.com/sourcegraph/sourcegraph/issues/3588 - Fixed an issue where a repo-updater migration would hit code host rate limits. https://github.com/sourcegraph/sourcegraph/issues/3582 -- The required `bitbucketserver.username` field of a [Bitbucket Server external service configuration](https://docs.sourcegraph.com/admin/external_service/bitbucketserver#configuration), if unset or empty, is automatically migrated to match the user part of the `url` (if defined). https://github.com/sourcegraph/sourcegraph/issues/3592 +- The required `bitbucketserver.username` field of a [Bitbucket Server external service configuration](https://docs.sourcegraph.com/admin/code_hosts/bitbucketserver#configuration), if unset or empty, is automatically migrated to match the user part of the `url` (if defined). https://github.com/sourcegraph/sourcegraph/issues/3592 - Fixed a panic that would occur in indexed search / the frontend when a search error ocurred. https://github.com/sourcegraph/sourcegraph/issues/3579 - Fixed an issue where the repo-updater service could become deadlocked while performing a migration. https://github.com/sourcegraph/sourcegraph/issues/3590 @@ -3624,11 +3624,11 @@ This is `3.12.8` release with internal infrastructure fixes to publish the docke - In search queries, treat `foo(` as `foo\(` and `bar[` as `bar\[` rather than failing with an error message. - Enterprise admins can now customize the appearance of the homepage and search icon. - A new settings property `notices` allows showing custom informational messages on the homepage and at the top of each page. The `motd` property is deprecated and its value is automatically migrated to the new `notices` property. -- The new `gitlab.exclude` setting in [GitLab external service config](https://docs.sourcegraph.com/admin/external_service/gitlab#configuration) allows you to exclude specific repositories matched by `gitlab.projectQuery` and `gitlab.projects` (so that they won't be synced). Upon upgrading, previously "disabled" repositories will be automatically migrated to this exclusion list. -- The new `gitlab.projects` setting in [GitLab external service config](https://docs.sourcegraph.com/admin/external_service/gitlab#configuration) allows you to select specific repositories to be synced. -- The new `bitbucketserver.exclude` setting in [Bitbucket Server external service config](https://docs.sourcegraph.com/admin/external_service/bitbucketserver#configuration) allows you to exclude specific repositories matched by `bitbucketserver.repositoryQuery` and `bitbucketserver.repos` (so that they won't be synced). Upon upgrading, previously "disabled" repositories will be automatically migrated to this exclusion list. -- The new `bitbucketserver.repos` setting in [Bitbucket Server external service config](https://docs.sourcegraph.com/admin/external_service/bitbucketserver#configuration) allows you to select specific repositories to be synced. -- The new required `bitbucketserver.repositoryQuery` setting in [Bitbucket Server external service configuration](https://docs.sourcegraph.com/admin/external_service/bitbucketserver#configuration) allows you to use Bitbucket API repository search queries to select repos to be synced. Existing configurations will be migrate to have it set to `["?visibility=public", "?visibility=private"]` which is equivalent to the previous implicit behaviour that this setting supersedes. +- The new `gitlab.exclude` setting in [GitLab external service config](https://docs.sourcegraph.com/admin/code_hosts/gitlab#configuration) allows you to exclude specific repositories matched by `gitlab.projectQuery` and `gitlab.projects` (so that they won't be synced). Upon upgrading, previously "disabled" repositories will be automatically migrated to this exclusion list. +- The new `gitlab.projects` setting in [GitLab external service config](https://docs.sourcegraph.com/admin/code_hosts/gitlab#configuration) allows you to select specific repositories to be synced. +- The new `bitbucketserver.exclude` setting in [Bitbucket Server external service config](https://docs.sourcegraph.com/admin/code_hosts/bitbucketserver#configuration) allows you to exclude specific repositories matched by `bitbucketserver.repositoryQuery` and `bitbucketserver.repos` (so that they won't be synced). Upon upgrading, previously "disabled" repositories will be automatically migrated to this exclusion list. +- The new `bitbucketserver.repos` setting in [Bitbucket Server external service config](https://docs.sourcegraph.com/admin/code_hosts/bitbucketserver#configuration) allows you to select specific repositories to be synced. +- The new required `bitbucketserver.repositoryQuery` setting in [Bitbucket Server external service configuration](https://docs.sourcegraph.com/admin/code_hosts/bitbucketserver#configuration) allows you to use Bitbucket API repository search queries to select repos to be synced. Existing configurations will be migrate to have it set to `["?visibility=public", "?visibility=private"]` which is equivalent to the previous implicit behaviour that this setting supersedes. - "Quick configure" buttons for common actions have been added to the config editor for all external services. - "Quick configure" buttons for common actions have been added to the management console. - Site-admins now receive an alert every day for the seven days before their license key expires. @@ -3641,12 +3641,12 @@ This is `3.12.8` release with internal infrastructure fixes to publish the docke - Indexed searches that time out more consistently report a timeout instead of erroneously saying "No results." - The symbols sidebar now only shows symbols defined in the current file or directory. - The dynamic filters on search results pages will now display `lang:` instead of `file:` filters for language/file-extension filter suggestions. -- The default `github.repositoryQuery` of a [GitHub external service configuration](https://docs.sourcegraph.com/admin/external_service/github#configuration) has been changed to `["none"]`. Existing configurations that had this field unset will be migrated to have the previous default explicitly set (`["affiliated", "public"]`). -- The default `gitlab.projectQuery` of a [GitLab external service configuration](https://docs.sourcegraph.com/admin/external_service/gitlab#configuration) has been changed to `["none"]`. Existing configurations that had this field unset will be migrated to have the previous default explicitly set (`["?membership=true"]`). +- The default `github.repositoryQuery` of a [GitHub external service configuration](https://docs.sourcegraph.com/admin/code_hosts/github#configuration) has been changed to `["none"]`. Existing configurations that had this field unset will be migrated to have the previous default explicitly set (`["affiliated", "public"]`). +- The default `gitlab.projectQuery` of a [GitLab external service configuration](https://docs.sourcegraph.com/admin/code_hosts/gitlab#configuration) has been changed to `["none"]`. Existing configurations that had this field unset will be migrated to have the previous default explicitly set (`["?membership=true"]`). - The default value of `maxReposToSearch` is now unlimited (was 500). -- The default `github.repositoryQuery` of a [GitHub external service configuration](https://docs.sourcegraph.com/admin/external_service/github#configuration) has been changed to `["none"]` and is now a required field. Existing configurations that had this field unset will be migrated to have the previous default explicitly set (`["affiliated", "public"]`). -- The default `gitlab.projectQuery` of a [GitLab external service configuration](https://docs.sourcegraph.com/admin/external_service/gitlab#configuration) has been changed to `["none"]` and is now a required field. Existing configurations that had this field unset will be migrated to have the previous default explicitly set (`["?membership=true"]`). -- The `bitbucketserver.username` field of a [Bitbucket Server external service configuration](https://docs.sourcegraph.com/admin/external_service/bitbucketserver#configuration) is now **required**. This field is necessary to authenticate with the Bitbucket Server API with either `password` or `token`. +- The default `github.repositoryQuery` of a [GitHub external service configuration](https://docs.sourcegraph.com/admin/code_hosts/github#configuration) has been changed to `["none"]` and is now a required field. Existing configurations that had this field unset will be migrated to have the previous default explicitly set (`["affiliated", "public"]`). +- The default `gitlab.projectQuery` of a [GitLab external service configuration](https://docs.sourcegraph.com/admin/code_hosts/gitlab#configuration) has been changed to `["none"]` and is now a required field. Existing configurations that had this field unset will be migrated to have the previous default explicitly set (`["?membership=true"]`). +- The `bitbucketserver.username` field of a [Bitbucket Server external service configuration](https://docs.sourcegraph.com/admin/code_hosts/bitbucketserver#configuration) is now **required**. This field is necessary to authenticate with the Bitbucket Server API with either `password` or `token`. - The settings and account pages for users and organizations are now combined into a single tab. ### Removed @@ -3704,7 +3704,7 @@ This is `3.12.8` release with internal infrastructure fixes to publish the docke - Sourcegraph can now automatically use the system's theme. To enable, open the user menu in the top right and make sure the theme dropdown is set to "System". This is currently supported on macOS Mojave with Safari Technology Preview 68 and later. -- The `github.exclude` setting was added to the [GitHub external service config](https://docs.sourcegraph.com/admin/external_service/github#configuration) to allow excluding repositories yielded by `github.repos` or `github.repositoryQuery` from being synced. +- The `github.exclude` setting was added to the [GitHub external service config](https://docs.sourcegraph.com/admin/code_hosts/github#configuration) to allow excluding repositories yielded by `github.repos` or `github.repositoryQuery` from being synced. ### Changed diff --git a/client/browser/src/shared/code-hosts/gitlab/scrape.ts b/client/browser/src/shared/code-hosts/gitlab/scrape.ts index 5e48a79e728..6c529e84835 100644 --- a/client/browser/src/shared/code-hosts/gitlab/scrape.ts +++ b/client/browser/src/shared/code-hosts/gitlab/scrape.ts @@ -78,7 +78,7 @@ const parseGitLabRepoURL = (): { hostname: string; projectFullName: string; owne /** * Subject to store repo name on the Sourcegraph instance (e.g. 'gitlab.com/SourcegraphCody/jsonrpc2'). * It may be different from the repo name on the code host because of the name transformations applied - * (see {@link https://sourcegraph.com/docs/admin/external_service/gitlab#nameTransformations}). + * (see {@link https://sourcegraph.com/docs/admin/code_hosts/gitlab#nameTransformations}). * Set in `gitlabCodeHost.prepareCodeHost` method. */ export const repoNameOnSourcegraph = new BehaviorSubject('') diff --git a/client/web/src/components/externalServices/ExternalServiceWebhook.tsx b/client/web/src/components/externalServices/ExternalServiceWebhook.tsx index 370a6c55ccf..f1f9616ea54 100644 --- a/client/web/src/components/externalServices/ExternalServiceWebhook.tsx +++ b/client/web/src/components/externalServices/ExternalServiceWebhook.tsx @@ -25,7 +25,7 @@ export const ExternalServiceWebhook: React.FunctionComponent @@ -34,7 +34,7 @@ export const ExternalServiceWebhook: React.FunctionComponent @@ -93,7 +93,7 @@ function commonDescription(url: string): JSX.Element { return ( Point{' '} - + webhooks {' '} for this code host connection at the following URL: diff --git a/client/web/src/components/externalServices/externalServices.tsx b/client/web/src/components/externalServices/externalServices.tsx index 4f211824548..fcaf558176e 100644 --- a/client/web/src/components/externalServices/externalServices.tsx +++ b/client/web/src/components/externalServices/externalServices.tsx @@ -195,7 +195,7 @@ const GitHubInstructions: React.FunctionComponent<{ isEnterprise: boolean }> = ( See{' '} - + the docs for more options , or try one of the buttons below. @@ -280,7 +280,7 @@ const GitLabInstructions: React.FunctionComponent<{ isSelfManaged: boolean }> = See{' '} - + the docs for more options , or try one of the buttons below. @@ -685,7 +685,7 @@ const AWS_CODE_COMMIT: AddExternalServiceOptions = { the docs for more options @@ -839,7 +839,7 @@ const BITBUCKET_CLOUD: AddExternalServiceOptions = { the docs for more options @@ -929,7 +929,7 @@ const BITBUCKET_SERVER: AddExternalServiceOptions = { the docs for more options @@ -1094,11 +1094,7 @@ const GITOLITE: AddExternalServiceOptions = { See{' '} - + the docs for more advanced options , or try one of the buttons below. @@ -1146,7 +1142,7 @@ const PHABRICATOR_SERVICE: AddExternalServiceOptions = { defaultConfig: `{ // Use Ctrl+Space for completion, and hover over JSON properties for documentation. // Configuration options are documented here: - // https://sourcegraph.com/docs/admin/external_service/phabricator#configuration + // https://sourcegraph.com/docs/admin/code_hosts/phabricator#configuration "url": "https://phabricator.example.com", "token": "", @@ -1208,7 +1204,7 @@ const GENERIC_GIT: AddExternalServiceOptions = { See{' '} - + the docs for more options , or try one of the buttons below. diff --git a/client/web/src/components/gitHubApps/CreateGitHubAppPage.tsx b/client/web/src/components/gitHubApps/CreateGitHubAppPage.tsx index 92fa41701b1..467e12610c5 100644 --- a/client/web/src/components/gitHubApps/CreateGitHubAppPage.tsx +++ b/client/web/src/components/gitHubApps/CreateGitHubAppPage.tsx @@ -219,7 +219,7 @@ export const CreateGitHubAppPage: FC = ({ headerDescription || ( <> Register a GitHub App to better manage GitHub code host connections.{' '} - + See how GitHub App configuration works. @@ -305,7 +305,7 @@ export const CreateGitHubAppPage: FC = ({ Your GitHub App must be public if you want to install it on multiple organizations or user accounts.{' '} diff --git a/client/web/src/components/gitHubApps/GitHubAppPage.tsx b/client/web/src/components/gitHubApps/GitHubAppPage.tsx index 22815c3f286..46bdf43fe97 100644 --- a/client/web/src/components/gitHubApps/GitHubAppPage.tsx +++ b/client/web/src/components/gitHubApps/GitHubAppPage.tsx @@ -188,7 +188,7 @@ export const GitHubAppPage: FC = ({ . A private GitHub App can only be installed on the account that originally created it.{' '} diff --git a/client/web/src/components/gitHubApps/GitHubAppsPage.tsx b/client/web/src/components/gitHubApps/GitHubAppsPage.tsx index a703a0ca67d..2564347e5fe 100644 --- a/client/web/src/components/gitHubApps/GitHubAppsPage.tsx +++ b/client/web/src/components/gitHubApps/GitHubAppsPage.tsx @@ -64,7 +64,7 @@ export const GitHubAppsPage: React.FC = ({ batchChangesEnabled, telemetry description={ <> Create and connect a GitHub App to better manage GitHub code host connections.{' '} - + See how GitHub App configuration works. {batchChangesEnabled && ( diff --git a/cmd/worker/internal/authz/integration_test.go b/cmd/worker/internal/authz/integration_test.go index 967dc64134d..a1b304beacd 100644 --- a/cmd/worker/internal/authz/integration_test.go +++ b/cmd/worker/internal/authz/integration_test.go @@ -106,7 +106,7 @@ func assertGitHubRepoPermissions(t *testing.T, ctx context.Context, repoID api.R // for GITHUB_TOKEN, which can be found in 1Password. // // We also recommend setting up a new token for "sourcegraph-vcr" using the auth scope -// guidelines https://sourcegraph.com/docs/admin/external_service/github#github-api-access +// guidelines https://sourcegraph.com/docs/admin/code_hosts/github#github-api-access // to ensure everything works, in case of new scopes being required. func TestIntegration_GitHubPermissions(t *testing.T) { if testing.Short() { diff --git a/doc/admin/observability/alerts.md b/doc/admin/observability/alerts.md index f1a4392ccb0..accb230b92f 100644 --- a/doc/admin/observability/alerts.md +++ b/doc/admin/observability/alerts.md @@ -3303,7 +3303,7 @@ Generated query for warning alert: `max((max(src_codeintel_commit_graph_queued_d **Next steps** - **Enabled permissions for the first time:** Wait for few minutes and see if the number goes down. -- **Otherwise:** Increase the API rate limit to [GitHub](https://sourcegraph.com/docs/admin/external_service/github#github-com-rate-limits), [GitLab](https://sourcegraph.com/docs/admin/external_service/gitlab#internal-rate-limits) or [Bitbucket Server](https://sourcegraph.com/docs/admin/external_service/bitbucket_server#internal-rate-limits). +- **Otherwise:** Increase the API rate limit to [GitHub](https://sourcegraph.com/docs/admin/code_hosts/github#github-com-rate-limits), [GitLab](https://sourcegraph.com/docs/admin/code_hosts/gitlab#internal-rate-limits) or [Bitbucket Server](https://sourcegraph.com/docs/admin/code_hosts/bitbucket_server#internal-rate-limits). - Learn more about the related dashboard panel in the [dashboards reference](./dashboards.md#worker-perms-syncer-outdated-perms). - **Silence this alert:** If you are aware of this alert and want to silence notifications for it, add the following to your site configuration and set a reminder to re-evaluate the alert: diff --git a/internal/authz/providers/bitbucketserver/provider_test.go b/internal/authz/providers/bitbucketserver/provider_test.go index 5786386578d..09287dc7b06 100644 --- a/internal/authz/providers/bitbucketserver/provider_test.go +++ b/internal/authz/providers/bitbucketserver/provider_test.go @@ -315,7 +315,7 @@ func marshalJSON(v any) []byte { // need a Bitbucket Server API up and running to run those tests. But if // you want to work on these tests / code, you need to start a new instance // of Bitbucket Server with docker, create an Application Link as per -// https://sourcegraph.com/docs/admin/external_service/bitbucket_server, and +// https://sourcegraph.com/docs/admin/code_hosts/bitbucket_server, and // then run the tests with -update=true. type fixtures struct { users map[string]*bitbucketserver.User diff --git a/monitoring/definitions/worker.go b/monitoring/definitions/worker.go index b2afdf2995a..123a3264360 100644 --- a/monitoring/definitions/worker.go +++ b/monitoring/definitions/worker.go @@ -412,7 +412,7 @@ func repoPermsSyncerGroup(owner monitoring.ObservableOwner) monitoring.Group { Owner: owner, NextSteps: ` - **Enabled permissions for the first time:** Wait for few minutes and see if the number goes down. - - **Otherwise:** Increase the API rate limit to [GitHub](https://sourcegraph.com/docs/admin/external_service/github#github-com-rate-limits), [GitLab](https://sourcegraph.com/docs/admin/external_service/gitlab#internal-rate-limits) or [Bitbucket Server](https://sourcegraph.com/docs/admin/external_service/bitbucket_server#internal-rate-limits). + - **Otherwise:** Increase the API rate limit to [GitHub](https://sourcegraph.com/docs/admin/code_hosts/github#github-com-rate-limits), [GitLab](https://sourcegraph.com/docs/admin/code_hosts/gitlab#internal-rate-limits) or [Bitbucket Server](https://sourcegraph.com/docs/admin/code_hosts/bitbucket_server#internal-rate-limits). `, }, }, diff --git a/schema/bitbucket_server.schema.json b/schema/bitbucket_server.schema.json index 20ee157ca60..cf4e78d504a 100644 --- a/schema/bitbucket_server.schema.json +++ b/schema/bitbucket_server.schema.json @@ -110,7 +110,7 @@ "minLength": 1 }, "disableSync": { - "description": "Disallow Sourcegraph from automatically syncing webhook config with the Bitbucket Server / Bitbucket Data Center instance. For details of how the webhook is configured, see our docs: https://sourcegraph.com/docs/admin/external_service/bitbucket_server#webhooks", + "description": "Disallow Sourcegraph from automatically syncing webhook config with the Bitbucket Server / Bitbucket Data Center instance. For details of how the webhook is configured, see our docs: https://sourcegraph.com/docs/admin/code_hosts/bitbucket_server#webhooks", "type": "boolean", "default": false } diff --git a/schema/github.schema.json b/schema/github.schema.json index 9ff0e53fe51..be3cbf0b834 100644 --- a/schema/github.schema.json +++ b/schema/github.schema.json @@ -26,7 +26,7 @@ "default": "http" }, "token": { - "description": "A GitHub personal access token. Create one for GitHub.com at https://github.com/settings/tokens/new?description=Sourcegraph (for GitHub Enterprise, replace github.com with your instance's hostname). See https://sourcegraph.com/docs/admin/external_service/github#github-api-access for which scopes are required for which use cases.", + "description": "A GitHub personal access token. Create one for GitHub.com at https://github.com/settings/tokens/new?description=Sourcegraph (for GitHub Enterprise, replace github.com with your instance's hostname). See https://sourcegraph.com/docs/admin/code_hosts/github#github-api-access for which scopes are required for which use cases.", "type": "string", "minLength": 1 }, @@ -181,7 +181,7 @@ "type": "object", "properties": { "groupsCacheTTL": { - "description": "Experimental: If set, configures hours cached permissions from teams and organizations should be kept for. Setting a negative value disables syncing from teams and organizations, and falls back to the default behaviour of syncing all permisisons directly from user-repository affiliations instead. [Learn more](https://sourcegraph.com/docs/admin/external_service/github#teams-and-organizations-permissions-caching).", + "description": "Experimental: If set, configures hours cached permissions from teams and organizations should be kept for. Setting a negative value disables syncing from teams and organizations, and falls back to the default behaviour of syncing all permisisons directly from user-repository affiliations instead. [Learn more](https://sourcegraph.com/docs/admin/code_hosts/github#teams-and-organizations-permissions-caching).", "type": "number", "default": 72 }, diff --git a/schema/schema.go b/schema/schema.go index e7f78d0d52a..3b51c91c326 100644 --- a/schema/schema.go +++ b/schema/schema.go @@ -503,7 +503,7 @@ type BitbucketServerPlugin struct { Webhooks *BitbucketServerPluginWebhooks `json:"webhooks,omitempty"` } type BitbucketServerPluginWebhooks struct { - // DisableSync description: Disallow Sourcegraph from automatically syncing webhook config with the Bitbucket Server / Bitbucket Data Center instance. For details of how the webhook is configured, see our docs: https://sourcegraph.com/docs/admin/external_service/bitbucket_server#webhooks + // DisableSync description: Disallow Sourcegraph from automatically syncing webhook config with the Bitbucket Server / Bitbucket Data Center instance. For details of how the webhook is configured, see our docs: https://sourcegraph.com/docs/admin/code_hosts/bitbucket_server#webhooks DisableSync bool `json:"disableSync,omitempty"` // Secret description: Secret for authenticating incoming webhook payloads Secret string `json:"secret"` @@ -1263,7 +1263,7 @@ type GitHubAppDetails struct { // GitHubAuthProvider description: Configures the GitHub (or GitHub Enterprise) OAuth authentication provider for SSO. In addition to specifying this configuration object, you must also create a OAuth App on your GitHub instance: https://developer.github.com/apps/building-oauth-apps/creating-an-oauth-app/. When a user signs into Sourcegraph or links their GitHub account to their existing Sourcegraph account, GitHub will prompt the user for the repo scope. type GitHubAuthProvider struct { - // AllowGroupsPermissionsSync description: Experimental: Allows sync of GitHub teams and organizations permissions across all external services associated with this provider to allow enabling of [repository permissions caching](https://sourcegraph.com/docs/admin/external_service/github#teams-and-organizations-permissions-caching). + // AllowGroupsPermissionsSync description: Experimental: Allows sync of GitHub teams and organizations permissions across all external services associated with this provider to allow enabling of [repository permissions caching](https://sourcegraph.com/docs/admin/code_hosts/github#teams-and-organizations-permissions-caching). AllowGroupsPermissionsSync bool `json:"allowGroupsPermissionsSync,omitempty"` // AllowOrgs description: Restricts new logins and signups (if allowSignup is true) to members of these GitHub organizations. Existing sessions won't be invalidated. Leave empty or unset for no org restrictions. AllowOrgs []string `json:"allowOrgs,omitempty"` @@ -1287,7 +1287,7 @@ type GitHubAuthProvider struct { // GitHubAuthorization description: If non-null, enforces GitHub repository permissions. This requires that there is an item in the [site configuration json](https://sourcegraph.com/docs/admin/config/site_config#auth-providers) `auth.providers` field, of type "github" with the same `url` field as specified in this `GitHubConnection`. type GitHubAuthorization struct { - // GroupsCacheTTL description: Experimental: If set, configures hours cached permissions from teams and organizations should be kept for. Setting a negative value disables syncing from teams and organizations, and falls back to the default behaviour of syncing all permisisons directly from user-repository affiliations instead. [Learn more](https://sourcegraph.com/docs/admin/external_service/github#teams-and-organizations-permissions-caching). + // GroupsCacheTTL description: Experimental: If set, configures hours cached permissions from teams and organizations should be kept for. Setting a negative value disables syncing from teams and organizations, and falls back to the default behaviour of syncing all permisisons directly from user-repository affiliations instead. [Learn more](https://sourcegraph.com/docs/admin/code_hosts/github#teams-and-organizations-permissions-caching). GroupsCacheTTL float64 `json:"groupsCacheTTL,omitempty"` // MarkInternalReposAsPublic description: If true, internal repositories will be accessible to all users on Sourcegraph as if they were public. This overrides repository permissions but allows easier discovery and access to internal repositories, and may be desirable if all users on the Sourcegraph instance should have access to all internal repositories anyways. Defaults to false. MarkInternalReposAsPublic bool `json:"markInternalReposAsPublic,omitempty"` @@ -1356,7 +1356,7 @@ type GitHubConnection struct { // // If you need to narrow the set of mirrored repositories further (and don't want to enumerate it with a list or query set as above), create a new bot/machine user on GitHub or GitHub Enterprise that is only affiliated with the desired repositories. RepositoryQuery []string `json:"repositoryQuery,omitempty"` - // Token description: A GitHub personal access token. Create one for GitHub.com at https://github.com/settings/tokens/new?description=Sourcegraph (for GitHub Enterprise, replace github.com with your instance's hostname). See https://sourcegraph.com/docs/admin/external_service/github#github-api-access for which scopes are required for which use cases. + // Token description: A GitHub personal access token. Create one for GitHub.com at https://github.com/settings/tokens/new?description=Sourcegraph (for GitHub Enterprise, replace github.com with your instance's hostname). See https://sourcegraph.com/docs/admin/code_hosts/github#github-api-access for which scopes are required for which use cases. Token string `json:"token,omitempty"` // Url description: URL of a GitHub instance, such as https://github.com or https://github-enterprise.example.com. Url string `json:"url"` diff --git a/schema/site.schema.json b/schema/site.schema.json index a4dbdc15fe0..c833e59bd62 100644 --- a/schema/site.schema.json +++ b/schema/site.schema.json @@ -3332,7 +3332,7 @@ ] }, "allowGroupsPermissionsSync": { - "description": "Experimental: Allows sync of GitHub teams and organizations permissions across all external services associated with this provider to allow enabling of [repository permissions caching](https://sourcegraph.com/docs/admin/external_service/github#teams-and-organizations-permissions-caching).", + "description": "Experimental: Allows sync of GitHub teams and organizations permissions across all external services associated with this provider to allow enabling of [repository permissions caching](https://sourcegraph.com/docs/admin/code_hosts/github#teams-and-organizations-permissions-caching).", "default": false, "type": "boolean" }