From ae2c38fe452c4ed49f320395df15c5f48bba76ca Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Thu, 20 Mar 2025 09:13:13 +0000 Subject: [PATCH] Add latest changes from gitlab-org/gitlab@master --- .../issue_templates/Feature Flag Roll Out.md | 2 +- .../vscode_extension_marketplace_settings.yml | 4 +- .../beta/web_ide_extensions_marketplace.yml | 2 +- danger/stable_branch_patch/Dangerfile | 6 +- db/docs/ci_job_artifact_states.yml | 13 +- db/docs/ci_secure_file_states.yml | 13 +- db/docs/dependency_proxy_blob_states.yml | 13 +- db/docs/dependency_proxy_manifest_states.yml | 13 +- db/docs/group_wiki_repositories.yml | 5 +- db/docs/group_wiki_repository_states.yml | 14 +- db/docs/lfs_object_states.yml | 2 +- db/docs/lfs_objects.yml | 2 +- db/docs/merge_request_diff_details.yml | 15 +- db/docs/pages_deployment_states.yml | 13 +- db/docs/pool_repositories.yml | 2 +- db/docs/project_repositories.yml | 5 +- db/docs/project_states.yml | 5 +- db/docs/snippet_repositories.yml | 23 +- db/docs/snippet_repository_states.yml | 4 +- db/docs/upload_states.yml | 3 +- ...ension_marketplace_feature_flag_to_data.rb | 6 +- doc/administration/credentials_inventory.md | 2 +- .../settings/vscode_extension_marketplace.md | 74 ++ doc/api/chat.md | 11 +- .../first_contribution/contribute-gitpod.md | 2 +- .../first_contribution/contribute-web-ide.md | 2 +- doc/development/python_guide/_index.md | 2 +- .../python_guide/create_project.md | 123 ++ .../python_guide/maintainership.md | 27 +- ...dening_operating_system_recommendations.md | 2 +- doc/security/two_factor_authentication.md | 2 +- doc/subscriptions/gitlab_dedicated/_index.md | 2 +- doc/subscriptions/subscription-add-ons.md | 2 +- .../cloud_deployments/auto_devops_with_eks.md | 2 +- doc/topics/git/branch.md | 2 +- .../api_fuzzing/_index.md | 2 +- .../api_security/api_discovery/_index.md | 2 +- .../api_security_testing/_index.md | 2 +- .../migration_guide_to_sbom_based_scans.md | 2 +- .../clusters/management_project_template.md | 6 +- doc/user/custom_roles/_index.md | 6 +- doc/user/enterprise_user/_index.md | 13 +- doc/user/gitlab_com/_index.md | 2 +- doc/user/gitlab_duo/setup.md | 6 +- doc/user/gitlab_duo_chat/turn_on_off.md | 2 +- doc/user/group/saml_sso/_index.md | 2 +- doc/user/group/saml_sso/troubleshooting.md | 2 +- doc/user/infrastructure/iac/_index.md | 2 +- .../packages/container_registry/_index.md | 2 +- .../delete_container_registry_images.md | 2 +- doc/user/profile/account/delete_account.md | 4 +- doc/user/profile/preferences.md | 20 +- doc/user/project/codeowners/reference.md | 6 + doc/user/project/import/bitbucket_server.md | 10 + .../project/issues/crosslinking_issues.md | 2 +- doc/user/project/merge_requests/_index.md | 2 +- .../merge_requests/creating_merge_requests.md | 71 +- doc/user/project/pages/_index.md | 4 +- .../project/repository/branches/_index.md | 77 +- .../repository/code_suggestions/_index.md | 2 +- doc/user/project/settings/import_export.md | 2 +- doc/user/project/web_ide/_index.md | 15 +- doc/user/storage_management_automation.md | 2 +- .../example_runtimes/master_report.json | 1046 ++++++++--------- qa/knapsack/master_report.json | 579 +++++---- ...erate-failed-test-on-omnibus-mr-message.rb | 8 +- .../database/no_cross_db_foreign_keys_spec.rb | 27 +- spec/services/emails/destroy_service_spec.rb | 2 +- 68 files changed, 1248 insertions(+), 1104 deletions(-) rename config/feature_flags/{wip => beta}/vscode_extension_marketplace_settings.yml (90%) create mode 100644 doc/administration/settings/vscode_extension_marketplace.md create mode 100644 doc/development/python_guide/create_project.md diff --git a/.gitlab/issue_templates/Feature Flag Roll Out.md b/.gitlab/issue_templates/Feature Flag Roll Out.md index 8a47a8f0869..171f55a5101 100644 --- a/.gitlab/issue_templates/Feature Flag Roll Out.md +++ b/.gitlab/issue_templates/Feature Flag Roll Out.md @@ -41,7 +41,7 @@ Note: Please make sure to run the chatops commands in the Slack channel that get - test kicked off: `Feature flag has been set to true on **gstg**` - test result: `This pipeline was triggered due to toggling of feature flag` -For assistance with end-to-end test failures, please reach out via the [`#s_developer_experience` Slack channel](https://gitlab.enterprise.slack.com/archives/C07TWBRER7H). Note that end-to-end test failures on `staging-ref` [don't block deployments](https://about.gitlab.com/handbook/engineering/infrastructure/environments/staging-ref/#how-to-use-staging-ref). +If you encounter end-to-end test failures and are unable to diagnose them, you may reach out to the [`#s_developer_experience` Slack channel](https://gitlab.enterprise.slack.com/archives/C07TWBRER7H) for assistance. Note that end-to-end test failures on `staging-ref` [don't block deployments](https://about.gitlab.com/handbook/engineering/infrastructure/environments/staging-ref/#how-to-use-staging-ref). ### Specific rollout on production diff --git a/config/feature_flags/wip/vscode_extension_marketplace_settings.yml b/config/feature_flags/beta/vscode_extension_marketplace_settings.yml similarity index 90% rename from config/feature_flags/wip/vscode_extension_marketplace_settings.yml rename to config/feature_flags/beta/vscode_extension_marketplace_settings.yml index 8614962383f..bb4f5797137 100644 --- a/config/feature_flags/wip/vscode_extension_marketplace_settings.yml +++ b/config/feature_flags/beta/vscode_extension_marketplace_settings.yml @@ -5,5 +5,5 @@ introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181624 rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/508996 milestone: '17.10' group: group::remote development -type: wip -default_enabled: false +type: beta +default_enabled: true diff --git a/config/feature_flags/beta/web_ide_extensions_marketplace.yml b/config/feature_flags/beta/web_ide_extensions_marketplace.yml index ba76b1d3fb5..03f8a375bf6 100644 --- a/config/feature_flags/beta/web_ide_extensions_marketplace.yml +++ b/config/feature_flags/beta/web_ide_extensions_marketplace.yml @@ -6,4 +6,4 @@ rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/459028 milestone: '17.0' group: group::ide type: beta -default_enabled: false +default_enabled: true diff --git a/danger/stable_branch_patch/Dangerfile b/danger/stable_branch_patch/Dangerfile index b97184173d1..55373307c55 100644 --- a/danger/stable_branch_patch/Dangerfile +++ b/danger/stable_branch_patch/Dangerfile @@ -2,12 +2,12 @@ if stable_branch.encourage_package_and_qa_execution? markdown(<<~MARKDOWN) - ## QA `e2e:test-on-omnibus-ee` + ## `e2e:test-on-omnibus-ee` **@#{helper.mr_author}, the `e2e:test-on-omnibus` job must complete before merging this merge request.*** - If there are failures on the `e2e:test-on-omnibus` pipeline, ask for assistance from a Software Engineer in Test (SET) - on the `#s_developer_experience` Slack channel to confirm the failures are unrelated to the merge request. + If the `e2e:test-on-omnibus` pipeline fails and you're unable to diagnose the issue, request assistance in the + `#s_developer_experience` Slack channel to confirm that the failures are unrelated to the merge request. MARKDOWN end diff --git a/db/docs/ci_job_artifact_states.yml b/db/docs/ci_job_artifact_states.yml index 387298f09fa..d893fde7569 100644 --- a/db/docs/ci_job_artifact_states.yml +++ b/db/docs/ci_job_artifact_states.yml @@ -7,15 +7,6 @@ feature_categories: description: Separate table for job artifacts containing Geo verification metadata. introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/75264 milestone: '14.8' -gitlab_schema: gitlab_ci -desired_sharding_key: - project_id: - references: projects - backfill_via: - parent: - foreign_key: job_artifact_id - table: p_ci_job_artifacts - sharding_key: project_id - belongs_to: job_artifact -desired_sharding_key_migration_job_name: BackfillCiJobArtifactStatesProjectId +gitlab_schema: gitlab_ci_cell_local +sharding_key_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/493768 table_size: medium diff --git a/db/docs/ci_secure_file_states.yml b/db/docs/ci_secure_file_states.yml index 1f065df1629..6e830b919f8 100644 --- a/db/docs/ci_secure_file_states.yml +++ b/db/docs/ci_secure_file_states.yml @@ -7,15 +7,6 @@ feature_categories: description: Stores verification state for Geo replicated Project-level Secure Files. introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/90510 milestone: '15.2' -gitlab_schema: gitlab_ci -desired_sharding_key: - project_id: - references: projects - backfill_via: - parent: - foreign_key: ci_secure_file_id - table: ci_secure_files - sharding_key: project_id - belongs_to: ci_secure_file -desired_sharding_key_migration_job_name: BackfillCiSecureFileStatesProjectId +gitlab_schema: gitlab_ci_cell_local +sharding_key_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/493768 table_size: small diff --git a/db/docs/dependency_proxy_blob_states.yml b/db/docs/dependency_proxy_blob_states.yml index a95be68fe13..cc9d2002038 100644 --- a/db/docs/dependency_proxy_blob_states.yml +++ b/db/docs/dependency_proxy_blob_states.yml @@ -7,15 +7,6 @@ feature_categories: description: Separate table for dependency proxy blob verification states introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/101429 milestone: '15.6' -gitlab_schema: gitlab_main_cell -desired_sharding_key: - group_id: - references: namespaces - backfill_via: - parent: - foreign_key: dependency_proxy_blob_id - table: dependency_proxy_blobs - sharding_key: group_id - belongs_to: dependency_proxy_blob -desired_sharding_key_migration_job_name: BackfillDependencyProxyBlobStatesGroupId +gitlab_schema: gitlab_main_cell_local +sharding_key_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/493768 table_size: small diff --git a/db/docs/dependency_proxy_manifest_states.yml b/db/docs/dependency_proxy_manifest_states.yml index c14cc027a96..e85186a75b3 100644 --- a/db/docs/dependency_proxy_manifest_states.yml +++ b/db/docs/dependency_proxy_manifest_states.yml @@ -7,15 +7,6 @@ feature_categories: description: Separate table for dependency proxy manifest verification states introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/102908 milestone: '15.6' -gitlab_schema: gitlab_main_cell -desired_sharding_key: - group_id: - references: namespaces - backfill_via: - parent: - foreign_key: dependency_proxy_manifest_id - table: dependency_proxy_manifests - sharding_key: group_id - belongs_to: dependency_proxy_manifest -desired_sharding_key_migration_job_name: BackfillDependencyProxyManifestStatesGroupId +gitlab_schema: gitlab_main_cell_local +sharding_key_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/493768 table_size: small diff --git a/db/docs/group_wiki_repositories.yml b/db/docs/group_wiki_repositories.yml index c19c60c6c28..3b13cb9c3ef 100644 --- a/db/docs/group_wiki_repositories.yml +++ b/db/docs/group_wiki_repositories.yml @@ -7,7 +7,6 @@ feature_categories: description: Stores information about group wiki repositories. introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/31121 milestone: '13.0' -gitlab_schema: gitlab_main_cell -sharding_key: - group_id: namespaces +gitlab_schema: gitlab_main_cell_local +sharding_key_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/524716 table_size: small diff --git a/db/docs/group_wiki_repository_states.yml b/db/docs/group_wiki_repository_states.yml index 1be22a53842..0890380c50c 100644 --- a/db/docs/group_wiki_repository_states.yml +++ b/db/docs/group_wiki_repository_states.yml @@ -7,16 +7,6 @@ feature_categories: - geo_replication classes: - Geo::GroupWikiRepositoryState -gitlab_schema: gitlab_main_cell -desired_sharding_key: - group_id: - references: namespaces - backfill_via: - parent: - foreign_key: group_wiki_repository_id - table: group_wiki_repositories - table_primary_key: group_id - sharding_key: group_id - belongs_to: group_wiki_repository +gitlab_schema: gitlab_main_cell_local +sharding_key_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/493768 table_size: small -desired_sharding_key_migration_job_name: BackfillGroupWikiRepositoryStatesGroupId diff --git a/db/docs/lfs_object_states.yml b/db/docs/lfs_object_states.yml index e822b82990a..ae83c5aca63 100644 --- a/db/docs/lfs_object_states.yml +++ b/db/docs/lfs_object_states.yml @@ -7,6 +7,6 @@ feature_categories: description: Geo verification states for LFS objects introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/63981 milestone: '14.6' -gitlab_schema: gitlab_main +gitlab_schema: gitlab_main_cell_local sharding_key_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/490481 table_size: small diff --git a/db/docs/lfs_objects.yml b/db/docs/lfs_objects.yml index d9e1d751007..713787fe15a 100644 --- a/db/docs/lfs_objects.yml +++ b/db/docs/lfs_objects.yml @@ -7,6 +7,6 @@ feature_categories: description: LFS files introduced_by_url: https://gitlab.com/gitlab-org/gitlab-foss/-/merge_requests/1727 milestone: '8.2' -gitlab_schema: gitlab_main +gitlab_schema: gitlab_main_cell_local sharding_key_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/490482 table_size: small diff --git a/db/docs/merge_request_diff_details.yml b/db/docs/merge_request_diff_details.yml index 4e410282707..68de60bf18b 100644 --- a/db/docs/merge_request_diff_details.yml +++ b/db/docs/merge_request_diff_details.yml @@ -4,18 +4,9 @@ classes: - MergeRequestDiffDetail feature_categories: - geo_replication -description: External MR diff replication detail +description: Separate table for merge_request_diffs containing Geo verification metadata. introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/34248 milestone: '13.4' -gitlab_schema: gitlab_main_cell -desired_sharding_key: - project_id: - references: projects - backfill_via: - parent: - foreign_key: merge_request_diff_id - table: merge_request_diffs - sharding_key: project_id - belongs_to: merge_request_diff +gitlab_schema: gitlab_main_cell_local +sharding_key_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/493768 table_size: small -desired_sharding_key_migration_job_name: BackfillMergeRequestDiffDetailsProjectId diff --git a/db/docs/pages_deployment_states.yml b/db/docs/pages_deployment_states.yml index 9f7d4e2ba76..9a7782602d2 100644 --- a/db/docs/pages_deployment_states.yml +++ b/db/docs/pages_deployment_states.yml @@ -7,15 +7,6 @@ feature_categories: description: Stores verification state for Geo replicated Pages deployments. introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/74905 milestone: '14.6' -gitlab_schema: gitlab_main_cell -desired_sharding_key: - project_id: - references: projects - backfill_via: - parent: - foreign_key: pages_deployment_id - table: pages_deployments - sharding_key: project_id - belongs_to: pages_deployment -desired_sharding_key_migration_job_name: BackfillPagesDeploymentStatesProjectId +gitlab_schema: gitlab_main_cell_local +sharding_key_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/493768 table_size: small diff --git a/db/docs/pool_repositories.yml b/db/docs/pool_repositories.yml index faeea6e7b87..90031413f4d 100644 --- a/db/docs/pool_repositories.yml +++ b/db/docs/pool_repositories.yml @@ -8,6 +8,6 @@ description: Holds information about a repository storing objects which are shar across a pool of forks. introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/commit/fff7754186202cfcdeaa0962c28e5d43ddd705b7 milestone: '11.6' -gitlab_schema: gitlab_main +gitlab_schema: gitlab_main_cell_local sharding_key_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/490484 table_size: small diff --git a/db/docs/project_repositories.yml b/db/docs/project_repositories.yml index 7c69c2fd729..ff469e07ea8 100644 --- a/db/docs/project_repositories.yml +++ b/db/docs/project_repositories.yml @@ -7,7 +7,6 @@ feature_categories: description: Keeps disk path to repositories and link to the shard introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/8614 milestone: '11.6' -gitlab_schema: gitlab_main_cell -sharding_key: - project_id: projects +gitlab_schema: gitlab_main_cell_local +sharding_key_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/524718 table_size: small diff --git a/db/docs/project_states.yml b/db/docs/project_states.yml index 70b872bec9c..78869b09504 100644 --- a/db/docs/project_states.yml +++ b/db/docs/project_states.yml @@ -7,7 +7,6 @@ feature_categories: description: Separate table for project containing Geo verification metadata. introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/117909 milestone: '16.0' -gitlab_schema: gitlab_main_cell -sharding_key: - project_id: projects +gitlab_schema: gitlab_main_cell_local +sharding_key_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/524719 table_size: small diff --git a/db/docs/snippet_repositories.yml b/db/docs/snippet_repositories.yml index 40d10b5236b..1a809df8b4c 100644 --- a/db/docs/snippet_repositories.yml +++ b/db/docs/snippet_repositories.yml @@ -8,26 +8,7 @@ description: Stores repository information used to version control snippets. introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/23796 milestone: '12.8' table_size: small -gitlab_schema: gitlab_main_cell +gitlab_schema: gitlab_main_cell_local +sharding_key_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/493768 allow_cross_foreign_keys: - gitlab_main_clusterwide -desired_sharding_key: - snippet_project_id: - references: projects - backfill_via: - parent: - foreign_key: snippet_id - table: snippets - sharding_key: project_id - belongs_to: snippet - snippet_organization_id: - references: organizations - backfill_via: - parent: - foreign_key: snippet_id - table: snippets - sharding_key: organization_id - belongs_to: snippet -desired_sharding_key_migration_job_name: -- BackfillSnippetRepositoriesSnippetProjectId -- BackfillSnippetRepositoriesSnippetOrganizationId diff --git a/db/docs/snippet_repository_states.yml b/db/docs/snippet_repository_states.yml index 49d762a14c6..6c55904f2bf 100644 --- a/db/docs/snippet_repository_states.yml +++ b/db/docs/snippet_repository_states.yml @@ -7,6 +7,6 @@ feature_categories: description: Separate table for snippet repositories containing Geo verification metadata. introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/181255 milestone: '17.10' -gitlab_schema: gitlab_main_cell -exempt_from_sharding: true +gitlab_schema: gitlab_main_cell_local +sharding_key_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/464440 table_size: small diff --git a/db/docs/upload_states.yml b/db/docs/upload_states.yml index e42f16b67ec..cacd0c777f0 100644 --- a/db/docs/upload_states.yml +++ b/db/docs/upload_states.yml @@ -7,7 +7,6 @@ feature_categories: description: Separate table for uploads containing Geo verification metadata. introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/65921 milestone: '14.6' -gitlab_schema: gitlab_main_cell +gitlab_schema: gitlab_main_cell_local sharding_key_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/464440 -notes: Issue 464440 blocked on sharding the uploads table table_size: small diff --git a/db/migrate/20250228183319_migrate_vscode_extension_marketplace_feature_flag_to_data.rb b/db/migrate/20250228183319_migrate_vscode_extension_marketplace_feature_flag_to_data.rb index 1f81de3853b..eb0a681f273 100644 --- a/db/migrate/20250228183319_migrate_vscode_extension_marketplace_feature_flag_to_data.rb +++ b/db/migrate/20250228183319_migrate_vscode_extension_marketplace_feature_flag_to_data.rb @@ -44,6 +44,10 @@ class MigrateVSCodeExtensionMarketplaceFeatureFlagToData < Gitlab::Database::Mig def extension_marketplace_flag_enabled? # NOTE: It's possible the flag is only enabled for a specific user, but in that case we'll assume # the instance admin didn't want the feature globally available and we won't initialize the data. - Feature.enabled?(:web_ide_extensions_marketplace, nil) && Feature.enabled?(:vscode_web_ide, nil) + Feature.enabled?(:web_ide_extensions_marketplace, nil) && + # NOTE: We only want to migrate instances that have **explicitly** opted in to the early + # extensions marketplace experience (not just enabled by default feature flag). + Feature.persisted_name?(:web_ide_extensions_marketplace) && + Feature.enabled?(:vscode_web_ide, nil) end end diff --git a/doc/administration/credentials_inventory.md b/doc/administration/credentials_inventory.md index 8ae4994a443..424b80414a3 100644 --- a/doc/administration/credentials_inventory.md +++ b/doc/administration/credentials_inventory.md @@ -24,7 +24,7 @@ For GitLab.com, see [Credentials inventory for GitLab.com](../user/group/credent {{< /alert >}} -Use the credentials inventory to monitor and control access to your GitLab self-managed instance. +Use the credentials inventory to monitor and control access to your GitLab Self-Managed instance. As an administrator, you can: diff --git a/doc/administration/settings/vscode_extension_marketplace.md b/doc/administration/settings/vscode_extension_marketplace.md new file mode 100644 index 00000000000..1a1d5516d26 --- /dev/null +++ b/doc/administration/settings/vscode_extension_marketplace.md @@ -0,0 +1,74 @@ +--- +stage: Create +group: Remote Development +info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments +description: Configure VS Code Extension Marketplace for features on the GitLab self-managed instance. +title: Configure VS Code Extension Marketplace +--- + +{{< details >}} + +- Tier: Free, Premium, Ultimate +- Offering: GitLab Self-Managed + +{{< /details >}} + +The VS Code Extension Marketplace provides you with access to extensions that enhance the +functionality of the [Web IDE](../../user/project/web_ide/_index.md) and +[Workspaces](../../user/workspace/_index.md) in GitLab. As an administrator, you can enable this +feature across your GitLab instance and configure which extension registry your users can access. + +## Access VS Code Extension Marketplace settings + +Prerequisites: + +- You must be an administrator. + +To access the VS Code Extension Marketplace settings: + +1. On the left sidebar, at the bottom, select **Admin**. +1. Select **Settings > General**. +1. Expand **VS Code Extension Marketplace**. + +## Enable with default extension registry + +By default, the GitLab instance is configured to use the [Open VSX](https://open-vsx.org/) +extension registry. To enable the extension marketplace with this default configuration: + +Prerequisites: + +- You must be an administrator. + +1. On the left sidebar, at the bottom, select **Admin**. +1. Select **Settings > General**. +1. Expand **VS Code Extension Marketplace**. +1. Toggle on **Enable Extension Marketplace** to enable the extension marketplace across the GitLab instance. + +## Customize extension registry + +To connect the GitLab instance with a custom extension registry: + +Prerequisites: + +- You must be an administrator. + +1. On the left sidebar, at the bottom, select **Admin**. +1. Select **Settings > General**. +1. Expand **VS Code Extension Marketplace**. +1. Expand **Extension registry settings**. +1. Toggle off **Use Open VSX extension registry**. +1. Enter full URLs for a VS Code extension registry's **Service URL**, **Item URL**, and **Resource URL Template**. +1. Select **Save changes**. + +{{< alert type="note" >}} + +After enabling the extension marketplace, users must still +[opt in to use the extension marketplace](../../user/profile/preferences.md#integrate-with-the-extension-marketplace). + +If you modify the extension registry URLs: + +- Users who previously opted in must opt in again with the new registry. +- Users who have not opted in are not affected. +- Active Web IDE or Workspaces sessions continue to use their current configuration until refreshed. + +{{< /alert >}} diff --git a/doc/api/chat.md b/doc/api/chat.md index b1b22cfd61d..7ca9999cab4 100644 --- a/doc/api/chat.md +++ b/doc/api/chat.md @@ -39,7 +39,7 @@ Supported attributes: | `client_subscription_id` | string | No | Client Subscription ID. | | `with_clean_history` | boolean | No | Indicates if we need to reset the history before and after the request. | | `project_id` | integer | No | Project ID. Required if `resource_type` is a commit. | -| `additional_context` | hash | No | Additional context for this chat request. See [Context attributes](#context-attributes) for a list of parameters this attribute accepts. | +| `additional_context` | array | No | An array of additional context items for this chat request. See [Context attributes](#context-attributes) for a list of parameters this attribute accepts. | ### Context attributes @@ -57,7 +57,14 @@ curl --request POST \ --header "Authorization: Bearer " \ --header "Content-Type: application/json" \ --data '{ - "content": "how to define class in ruby" + "content": "how to define class in ruby", + "additional_context": [ + { + "category": "file", + "id": "main.rb", + "content": "class Foo\nend" + } + ] }' \ --url "https://gitlab.example.com/api/v4/chat/completions" ``` diff --git a/doc/development/contributing/first_contribution/contribute-gitpod.md b/doc/development/contributing/first_contribution/contribute-gitpod.md index 6e776c6ad7d..1481b58d4a8 100644 --- a/doc/development/contributing/first_contribution/contribute-gitpod.md +++ b/doc/development/contributing/first_contribution/contribute-gitpod.md @@ -18,7 +18,7 @@ I want to change `Customize the color of GitLab` to `Customize the color theme o Select `master` in the status bar, then from the **Select a branch or tag to checkout** box, select **Create new branch** and enter a name for the new branch. - If your code change addresses an issue, [start the branch name with the issue number](../../../user/project/repository/branches/_index.md#prefix-branch-names-with-issue-numbers). + If your code change addresses an issue, [start the branch name with the issue number](../../../user/project/repository/branches/_index.md#prefix-branch-names-with-a-number). The examples in this doc use a new branch called `ui-updates`. diff --git a/doc/development/contributing/first_contribution/contribute-web-ide.md b/doc/development/contributing/first_contribution/contribute-web-ide.md index 002b91757ea..1b212780c2d 100644 --- a/doc/development/contributing/first_contribution/contribute-web-ide.md +++ b/doc/development/contributing/first_contribution/contribute-web-ide.md @@ -48,7 +48,7 @@ to GitLab code using the Web IDE. 1. Select **Commit to new branch** from the **Commit to** dropdown list, and enter `1st-contrib-example`. - If your code change addresses an issue, [start the branch name with the issue number](../../../user/project/repository/branches/_index.md#prefix-branch-names-with-issue-numbers). + If your code change addresses an issue, [start the branch name with the issue number](../../../user/project/repository/branches/_index.md#prefix-branch-names-with-a-number). 1. In the notification that appears in the lower right, select **Create MR**. diff --git a/doc/development/python_guide/_index.md b/doc/development/python_guide/_index.md index bc1ef155441..82e3fea120c 100644 --- a/doc/development/python_guide/_index.md +++ b/doc/development/python_guide/_index.md @@ -34,7 +34,7 @@ large codebases. ## Creating a new Python application -Scaffolding libraries and pipelines for a new codebase. +[Scaffolding libraries and pipelines for a new codebase](create_project.md) ## Conventions Style Guidelines diff --git a/doc/development/python_guide/create_project.md b/doc/development/python_guide/create_project.md new file mode 100644 index 00000000000..5357d209f3f --- /dev/null +++ b/doc/development/python_guide/create_project.md @@ -0,0 +1,123 @@ +--- +stage: none +group: unassigned +info: Any user with at least the Maintainer role can merge updates to this content. For details, see https://docs.gitlab.com/ee/development/development_processes.html#development-guidelines-review. +title: Create a new python projects +--- + +When creating a new Python repository, some guidelines help keep our code standardized. + +## Recommended libraries + +### Development & testing + +- [`pytest`](https://docs.pytest.org/): Primary testing framework for writing and running tests. +- [`pytest-cov`](https://pytest-cov.readthedocs.io/): Test coverage reporting plugin for `pytest`. +- [`black`](https://black.readthedocs.io/): Opinionated code formatter that ensures consistent code + style. +- [`flake8`](https://flake8.pycqa.org/): Linter for style enforcement. +- [`pylint`](https://pylint.pycqa.org/): Comprehensive linter for error detection and quality + enforcement. +- [`mypy`](https://mypy.readthedocs.io/): Static type checker. +- [`isort`](https://pycqa.github.io/isort/): Utility to sort imports. + +### Package manager & build system + +- [`poetry`](https://python-poetry.org/): Modern packaging and dependency management. + +### Common utilities + +- [`typer`](https://typer.tiangolo.com/): Library for building CLI applications. +- [`python-dotenv`](https://saurabh-kumar.com/python-dotenv/): Environment variable management. +- [`pydantic`](https://docs.pydantic.dev/latest/): Data validation and settings management using + Python type annotations. +- [`fastapi`](https://fastapi.tiangolo.com): Modern, high-performance web framework for building + APIs. +- [`structlog`](https://www.structlog.org/): Structured logging library. +- [`httpx`](https://docs.pydantic.dev/latest/): Asynchronous and performant HTTP client. +- [`rich`](https://rich.readthedocs.io/en/latest/): Terminal formatting library for rich text. +- [`sqlmodel`](https://sqlmodel.tiangolo.com/): Intuitive and robust ORM. +- [`tqdm`](https://github.com/tqdm/tqdm): Fast, extensible progress bar for CLI. + +## Recommended folder structure + +Depending on the type of project, for example, API service, CLI application or library, the folder +structure can be varied. The following structure is for a standard CLI application. + +```plaintext +project_name/ +├── .gitlab/ # GitLab-specific configuration +│ ├── issue_templates/ # Issue templates +│ └── merge_request_templates/ # MR templates +├── .gitlab-ci.yml # CI/CD configuration +├── project_name/ # Main package directory +│ ├── __init__.py # Package initialization +│ ├── cli.py # Command-line interface entry points +│ ├── config.py # Configuration handling +│ └── core/ # Core functionality +│ └── __init__.py +├── tests/ # Test directory +│ ├── __init__.py +│ ├── conftest.py # pytest fixtures and configuration +│ └── test_*.py # Test modules +├── docs/ # Documentation +├── scripts/ # Utility scripts +├── README.md # Project overview +├── CONTRIBUTING.md # Contribution guidelines +├── LICENSE # License information +├── pyproject.toml # Project metadata and dependencies (Poetry) +``` + +## Linter configuration + +We should consolidate configurations into `pyproject.toml` as much as possible. + +### `pyproject.toml` + +```toml +[tool.black] +line-length = 120 + +[tool.isort] +profile = "black" + +[tool.mypy] +python_version = 3.12 +ignore_missing_imports = true + +[tool.pylint.main] +jobs = 0 +load-plugins = [ + # custom plugins +] + +[tool.pylint.messages_control] +enable = [ + # custom plugins +] + +[tool.pylint.reports] +score = "no" +``` + +### `setup.cfg` + +```ini +[flake8] +extend-ignore = E203,E501 +extend-exclude = **/__init__.py,.venv,tests +indent-size = 4 +max-line-length = 120 +``` + +## Adding reviewer roulette + +We recommend reviewer roulette to distribute review workload across reviewers and maintainers. + +1. Follow the + [GitLab Dangerfiles instructions](https://gitlab.com/gitlab-org/ruby/gems/gitlab-dangerfiles/-/blob/master/README.md#simple_roulette) + to add the configuration to your project. + +1. Implement the + [Danger Reviewer component](https://gitlab.com/gitlab-org/components/danger-review#example) in + your GitLab CI pipeline to automatically trigger the roulette. diff --git a/doc/development/python_guide/maintainership.md b/doc/development/python_guide/maintainership.md index f6ea031b24c..7c343a677e9 100644 --- a/doc/development/python_guide/maintainership.md +++ b/doc/development/python_guide/maintainership.md @@ -46,9 +46,23 @@ Please refer to [the documentation](../code_review.md#reviewer-roulette) If contributors have questions or need additional help with Python-specific reviews, direct them to the GitLab `#python` or `#python_maintainers` Slack channels for assistance. -## How to find a project to review +## How to become Python maintainer -[Work item](https://gitlab.com/gitlab-org/gitlab/-/issues/511513). +Established projects have their own pools of reviewers and maintainers. Smaller or new projects can benefit from the help of established Python experts at GitLab. + +### GitLab Python experts + +GitLab Python experts are professionals with Python expertise who contribute to improving code quality across different projects. +To become one: + +1. Create a merge request to add `python: maintainer` competency under `projects` to your [team](https://gitlab.com/gitlab-com/www-gitlab-com/-/tree/master/data/team_members/person?ref_type=heads) file. +1. Use [this](https://gitlab.com/gitlab-org/python/code-review-templates/-/tree/main/merge_request_templates/Python_expert.md) template and follow the described process. + +Once your merge request is merged, you'll be added to the Python maintainers group. + +### Reviewers and maintainers of a specific project + +Each project can establish their own review process. Review the maintainership guidelines and/or contact current maintainers for more information. ## Maintainer responsibilities @@ -71,19 +85,14 @@ In addition to code reviews, maintainers are responsible for guiding architectur **Additional responsibilities:** -- Maintain relevant documentation accuracy and completeness. +- Maintain accurate and complete documentation. - Monitor and update package dependencies as necessary. - Mentor other engineers on Python best practices. - Evaluate and propose new tools and libraries. - Monitor performance and propose optimizations. - Ensure security standards are maintained. - Ensure the project is consistent and aligned with GitLab standards by regularly monitoring and adopting relevant engineering practices introduced in GitLab.com. - -## How to become a maintainer - -Each project has its own process and maintainership program. We recommend reviewing the following guideline: - -[Work item](https://gitlab.com/gitlab-org/gitlab/-/issues/514316). +- Establish and enforce clear code review processes. ## Code review best practices diff --git a/doc/security/hardening_operating_system_recommendations.md b/doc/security/hardening_operating_system_recommendations.md index 60fbca5ce7f..d560d74c95e 100644 --- a/doc/security/hardening_operating_system_recommendations.md +++ b/doc/security/hardening_operating_system_recommendations.md @@ -85,7 +85,7 @@ clients are also on `192.168.1.0/24`, restrict access to ports `80` and `443` to `192.168.1.0/24` only (as a safety restriction), even if access is restricted elsewhere with another firewall. -Ideally, if you're installing a self-managed instance, you should implement the firewall rules before the installation begins with access restricted to the admins and installers, and only add additional ranges of IP addresses for +Ideally, if you're installing a GitLab Self-Managed instance, you should implement the firewall rules before the installation begins with access restricted to the admins and installers, and only add additional ranges of IP addresses for users after the instance is installed and properly hardened. Usage of `iptables` or `ufw` is acceptable to implement and enforce port `80` and `443` diff --git a/doc/security/two_factor_authentication.md b/doc/security/two_factor_authentication.md index 83aa51adcc9..1f710e0a061 100644 --- a/doc/security/two_factor_authentication.md +++ b/doc/security/two_factor_authentication.md @@ -80,7 +80,7 @@ For more information, see the [list of settings that can be accessed through API {{< /history >}} -Administrators can enforce 2FA for administrator users in a self-managed instance. +Administrators can enforce 2FA for administrator users in a GitLab Self-Managed instance. 1. On the left sidebar, at the bottom, select **Admin**. 1. On the left sidebar, select **Settings > General**. diff --git a/doc/subscriptions/gitlab_dedicated/_index.md b/doc/subscriptions/gitlab_dedicated/_index.md index 9efe12f0465..1ab7245e3ef 100644 --- a/doc/subscriptions/gitlab_dedicated/_index.md +++ b/doc/subscriptions/gitlab_dedicated/_index.md @@ -111,7 +111,7 @@ You can use your own hostname to access your GitLab Dedicated instance. Instead Add a custom hostname to: - Increase control over branding -- Avoid having to migrate away from an existing domain already configured for a self-managed instance +- Avoid having to migrate away from an existing domain already configured for a GitLab Self-Managed instance When you add a custom hostname: diff --git a/doc/subscriptions/subscription-add-ons.md b/doc/subscriptions/subscription-add-ons.md index 2ac58ea18c1..c36ffe9e407 100644 --- a/doc/subscriptions/subscription-add-ons.md +++ b/doc/subscriptions/subscription-add-ons.md @@ -35,7 +35,7 @@ To purchase GitLab Duo Pro seats, you can use the Customers Portal, or you can c ## Purchase additional GitLab Duo seats -You can purchase additional GitLab Duo Pro or GitLab Duo Enterprise seats for your group namespace or self-managed instance. After you complete the purchase, the seats are added to the total number of GitLab Duo seats in your subscription. +You can purchase additional GitLab Duo Pro or GitLab Duo Enterprise seats for your group namespace or GitLab Self-Managed instance. After you complete the purchase, the seats are added to the total number of GitLab Duo seats in your subscription. Prerequisites: diff --git a/doc/topics/autodevops/cloud_deployments/auto_devops_with_eks.md b/doc/topics/autodevops/cloud_deployments/auto_devops_with_eks.md index 6cca86b68fa..c85a0f243d9 100644 --- a/doc/topics/autodevops/cloud_deployments/auto_devops_with_eks.md +++ b/doc/topics/autodevops/cloud_deployments/auto_devops_with_eks.md @@ -11,7 +11,7 @@ through an example of how to deploy an application to Amazon Elastic Kubernetes The tutorial uses the GitLab native Kubernetes integration, so you don't need to create a Kubernetes cluster manually using the AWS console. -You can also follow this tutorial on a self-managed instance. +You can also follow this tutorial on a GitLab Self-Managed instance. Ensure your own [runners are configured](../../../ci/runners/_index.md). To deploy a project to EKS: diff --git a/doc/topics/git/branch.md b/doc/topics/git/branch.md index 3247ad19775..6379adc390c 100644 --- a/doc/topics/git/branch.md +++ b/doc/topics/git/branch.md @@ -25,7 +25,7 @@ git checkout -b GitLab enforces [branch naming rules](../../user/project/repository/branches/_index.md#name-your-branch) to prevent problems, and provides -[branch naming patterns](../../user/project/repository/branches/_index.md#prefix-branch-names-with-issue-numbers) +[branch naming patterns](../../user/project/repository/branches/_index.md#prefix-branch-names-with-a-number) to streamline merge request creation. ## Switch to a branch diff --git a/doc/user/application_security/api_fuzzing/_index.md b/doc/user/application_security/api_fuzzing/_index.md index dbbe9e2f31f..cf1ab54253e 100644 --- a/doc/user/application_security/api_fuzzing/_index.md +++ b/doc/user/application_security/api_fuzzing/_index.md @@ -64,7 +64,7 @@ Use `~"Category:API Security"` [label](../../../development/labels/_index.md) wh When experiencing a behavior not working as expected, consider providing contextual information: -- GitLab version if using a self-managed instance. +- GitLab version if using a GitLab Self-Managed instance. - `.gitlab-ci.yml` job definition. - Full job console output. - Scanner log file available as a job artifact named `gl-api-security-scanner.log`. diff --git a/doc/user/application_security/api_security/api_discovery/_index.md b/doc/user/application_security/api_security/api_discovery/_index.md index ac2a78a2c8c..f687ce8ef23 100644 --- a/doc/user/application_security/api_security/api_discovery/_index.md +++ b/doc/user/application_security/api_security/api_discovery/_index.md @@ -179,7 +179,7 @@ Use `~"Category:API Security"` [label](../../../../development/labels/_index.md) When experiencing a behavior not working as expected, consider providing contextual information: -- GitLab version if using a self-managed instance. +- GitLab version if using a GitLab Self-Managed instance. - `.gitlab-ci.yml` job definition. - Full job console output. - Framework in use with version (for example Spring Boot v2.3.2). diff --git a/doc/user/application_security/api_security_testing/_index.md b/doc/user/application_security/api_security_testing/_index.md index e24ff62800f..a5b58408a9c 100644 --- a/doc/user/application_security/api_security_testing/_index.md +++ b/doc/user/application_security/api_security_testing/_index.md @@ -82,7 +82,7 @@ Use `~"Category:API Security"` [label](../../../development/labels/_index.md) wh When experiencing a behavior not working as expected, consider providing contextual information: -- GitLab version if using a self-managed instance. +- GitLab version if using a GitLab Self-Managed instance. - `.gitlab-ci.yml` job definition. - Full job console output. - Scanner log file available as a job artifact named `gl-api-security-scanner.log`. diff --git a/doc/user/application_security/dependency_scanning/migration_guide_to_sbom_based_scans.md b/doc/user/application_security/dependency_scanning/migration_guide_to_sbom_based_scans.md index 9a06f32c1b0..3215e4017db 100644 --- a/doc/user/application_security/dependency_scanning/migration_guide_to_sbom_based_scans.md +++ b/doc/user/application_security/dependency_scanning/migration_guide_to_sbom_based_scans.md @@ -111,7 +111,7 @@ See [this epic](https://gitlab.com/groups/gitlab-org/-/epics/17150) for more det ## Identify affected projects Understanding which of your projects need attention for this migration is an important first step. The most significant impact will be on your Java and Python projects, since the way these handle dependencies is changing fundamentally. -To help you identify affected projects, GitLab provides the [Dependency Scanning Build Support Detection Helper](https://gitlab.com/security-products/tooling/build-support-detection-helper) tool. This tool examines your GitLab group or self-managed instance and identifies projects that currently use the Dependency Scanning feature with either the `gemnasium-maven-dependency_scanning` or `gemnasium-python-dependency_scanning` CI/CD jobs. +To help you identify affected projects, GitLab provides the [Dependency Scanning Build Support Detection Helper](https://gitlab.com/security-products/tooling/build-support-detection-helper) tool. This tool examines your GitLab group or GitLab Self-Managed instance and identifies projects that currently use the Dependency Scanning feature with either the `gemnasium-maven-dependency_scanning` or `gemnasium-python-dependency_scanning` CI/CD jobs. When you run this tool, it creates a comprehensive report of projects that will need your attention during the migration. Having this information early helps you plan your migration strategy effectively, especially if you manage multiple projects across your organization. ## Migrate to Dependency Scanning using SBOM diff --git a/doc/user/clusters/management_project_template.md b/doc/user/clusters/management_project_template.md index 6def7adc1ba..3bc515dda36 100644 --- a/doc/user/clusters/management_project_template.md +++ b/doc/user/clusters/management_project_template.md @@ -19,7 +19,7 @@ your custom cluster applications. {{< alert type="note" >}} -The project template works on GitLab.com without modifications. If you're on a self-managed instance, you must modify the `.gitlab-ci.yml` file. +The project template works on GitLab.com without modifications. If you're on a GitLab Self-Managed instance, you must modify the `.gitlab-ci.yml` file. {{< /alert >}} @@ -78,9 +78,9 @@ The base image used in the pipeline is built by the [cluster-applications](https://gitlab.com/gitlab-org/cluster-integration/cluster-applications) project. This image contains a set of Bash utility scripts to support [Helm v3 releases](https://helm.sh/docs/intro/using_helm/#three-big-concepts). -If you are on a self-managed instance of GitLab, you must modify the `.gitlab-ci.yml` file. +If you are on a GitLab Self-Managed instance, you must modify the `.gitlab-ci.yml` file. Specifically, the section that starts with the comment `Automatic package upgrades` does not -work on a self-managed instance, because the `include` refers to a GitLab.com project. +work on a GitLab Self-Managed instance, because the `include` refers to a GitLab.com project. If you remove everything below this comment, the pipeline succeeds. ### The main `helmfile.yml` file diff --git a/doc/user/custom_roles/_index.md b/doc/user/custom_roles/_index.md index e542aacb8e0..5e437b95274 100644 --- a/doc/user/custom_roles/_index.md +++ b/doc/user/custom_roles/_index.md @@ -82,7 +82,7 @@ In **Settings > Roles and permissions**, the list of all custom roles displays t Prerequisites: -- You must be an administrator for the self-managed instance. +- You must be an administrator for the GitLab Self-Managed instance. After you create a custom role for your GitLab Self-Managed instance, you can assign that custom role to a user in any group or subgroup in that instance. @@ -133,7 +133,7 @@ Prerequisites: Prerequisites: -- You must be an administrator for the self-managed instance. +- You must be an administrator for the GitLab Self-Managed instance. 1. On the left sidebar, at the bottom, select **Admin**. 1. Select **Settings > Roles and permissions**. @@ -354,7 +354,7 @@ You can sync users to custom roles with following authentication providers: Prerequisites: -- You must be an administrator for the self-managed instance. +- You must be an administrator for the GitLab Self-Managed instance. You can use the API to [create](../../api/graphql/reference/_index.md#mutationmemberroleadmincreate) and [assign](../../api/graphql/reference/_index.md#mutationmemberroletouserassign) custom admin roles. These roles allow you to grant limited access to administrator resources. diff --git a/doc/user/enterprise_user/_index.md b/doc/user/enterprise_user/_index.md index 5db71e6643d..0ec05b2f645 100644 --- a/doc/user/enterprise_user/_index.md +++ b/doc/user/enterprise_user/_index.md @@ -245,9 +245,11 @@ To disable 2FA: {{< history >}} - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161819) as a [beta](../../policy/development_stages_support.md#beta) in GitLab 17.0 [with flags](../../administration/feature_flags.md) named `web_ide_oauth` and `web_ide_extensions_marketplace`. Disabled by default. -- Feature flag `web_ide_oauth` [enabled on GitLab.com, GitLab Self-Managed, and GitLab Dedicated](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/163181) in GitLab 17.4. -- Feature flag `web_ide_extensions_marketplace` [enabled on GitLab.com](https://gitlab.com/gitlab-org/gitlab/-/issues/459028) in GitLab 17.4. -- Feature flag `web_ide_oauth` [removed](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/167464) in GitLab 17.5. +- `web_ide_oauth` [enabled on GitLab.com, GitLab Self-Managed, and GitLab Dedicated](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/163181) in GitLab 17.4. +- `web_ide_extensions_marketplace` [enabled on GitLab.com](https://gitlab.com/gitlab-org/gitlab/-/issues/459028) in GitLab 17.4. +- `web_ide_oauth` [removed](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/167464) in GitLab 17.5. +- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/508996) the `vscode_extension_marketplace_settings` [feature flag](../../administration/feature_flags.md) in GitLab 17.10. Disabled by default. +- `web_ide_extensions_marketplace` and `vscode_extension_marketplace_settings` [enabled on GitLab Self-Managed](https://gitlab.com/gitlab-org/gitlab/-/issues/459028) in GitLab 17.11. {{< /history >}} @@ -258,6 +260,11 @@ For more information, see the history. {{< /alert >}} +Prerequisites: + +- In the **Admin** area, a GitLab administrator must + [enable the extension marketplace](../../administration/settings/vscode_extension_marketplace.md). + If you have the Owner role for a top-level group, you can enable the [extension marketplace](../project/web_ide/_index.md#extension-marketplace) for enterprise users. diff --git a/doc/user/gitlab_com/_index.md b/doc/user/gitlab_com/_index.md index 8bf49ed5914..ee9cbe82bd8 100644 --- a/doc/user/gitlab_com/_index.md +++ b/doc/user/gitlab_com/_index.md @@ -649,7 +649,7 @@ The limit varies depending on your plan and the number of seats in your subscrip | Timeout | 10 seconds | | [Parallel Pages deployments](../project/pages/parallel_deployments.md#limits) | 100 extra deployments (Premium tier), 500 extra deployments (Ultimate tier) | -For self-managed instance limits, see: +For GitLab Self-Managed instance limits, see: - [Webhook rate limit](../../administration/instance_limits.md#webhook-rate-limit). - [Number of webhooks](../../administration/instance_limits.md#number-of-webhooks). diff --git a/doc/user/gitlab_duo/setup.md b/doc/user/gitlab_duo/setup.md index 8d1c64386f4..da1a3b05d2f 100644 --- a/doc/user/gitlab_duo/setup.md +++ b/doc/user/gitlab_duo/setup.md @@ -2,7 +2,7 @@ stage: AI-powered group: AI Framework info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments -title: Configure GitLab Duo on a self-managed instance +title: Configure GitLab Duo on a GitLab Self-Managed instance --- {{< details >}} @@ -13,7 +13,7 @@ title: Configure GitLab Duo on a self-managed instance {{< /details >}} GitLab Duo is powered by large language models (LLMs), with data sent through an AI gateway. -To use GitLab Duo on a self-managed instance, you can do either of the following: +To use GitLab Duo on a GitLab Self-Managed instance, you can do either of the following: - Use the GitLab AI vendor models and the cloud-based AI gateway that’s hosted by GitLab. This is the default option. @@ -26,7 +26,7 @@ You must have an Ultimate subscription with the GitLab Duo Enterprise add-on to {{< /alert >}} -This page focuses on how to configure a self-managed instance if you're using the default, GitLab-hosted option. +This page focuses on how to configure a GitLab Self-Managed instance if you're using the default, GitLab-hosted option. ## Prerequisites diff --git a/doc/user/gitlab_duo_chat/turn_on_off.md b/doc/user/gitlab_duo_chat/turn_on_off.md index 834c191f5f6..d4e0a06d79a 100644 --- a/doc/user/gitlab_duo_chat/turn_on_off.md +++ b/doc/user/gitlab_duo_chat/turn_on_off.md @@ -18,7 +18,7 @@ If you [turn on or turn off GitLab Duo](../gitlab_duo/turn_on_off.md), you turn ## For self-managed -To enable GitLab Duo Chat on a self-managed instance, +To enable GitLab Duo Chat on a GitLab Self-Managed instance, you must have the following prerequisites. Prerequisites: diff --git a/doc/user/group/saml_sso/_index.md b/doc/user/group/saml_sso/_index.md index 3673537ceca..fa9dc2f211d 100644 --- a/doc/user/group/saml_sso/_index.md +++ b/doc/user/group/saml_sso/_index.md @@ -641,7 +641,7 @@ identity provider: configurations for information on the terms they use. 1. Check the [SAML SSO for GitLab Self-Managed documentation](../../../integration/saml.md). The GitLab Self-Managed SAML configuration file supports more options - than the GitLab.com file. You can find information on the self-managed instance + than the GitLab.com file. You can find information on the GitLab Self-Managed instance file in the: - External [OmniAuth SAML documentation](https://github.com/omniauth/omniauth-saml/). - [`ruby-saml` library](https://github.com/onelogin/ruby-saml). diff --git a/doc/user/group/saml_sso/troubleshooting.md b/doc/user/group/saml_sso/troubleshooting.md index 96e10b3327e..b2797be232a 100644 --- a/doc/user/group/saml_sso/troubleshooting.md +++ b/doc/user/group/saml_sso/troubleshooting.md @@ -15,7 +15,7 @@ title: Troubleshooting SAML This page contains possible solutions for problems you might encounter when using: - [SAML SSO for GitLab.com groups](_index.md). -- The self-managed instance-level [SAML OmniAuth Provider](../../../integration/saml.md). +- The GitLab Self-Managed instance-level [SAML OmniAuth Provider](../../../integration/saml.md). - [Switchboard](../../../administration/dedicated/configure_instance/saml.md#activate-saml-with-switchboard) to configure SAML for GitLab Dedicated instances. ## SAML debugging tools diff --git a/doc/user/infrastructure/iac/_index.md b/doc/user/infrastructure/iac/_index.md index 241e4d29a71..06445ac971d 100644 --- a/doc/user/infrastructure/iac/_index.md +++ b/doc/user/infrastructure/iac/_index.md @@ -92,7 +92,7 @@ GitLab features, but can potentially include breaking changes. You can safely use the latest Terraform template: - If you use GitLab.com. -- If you use a self-managed instance updated with every new GitLab release. +- If you use a GitLab Self-Managed instance updated with every new GitLab release. ### Stable and advanced Terraform templates (deprecated) diff --git a/doc/user/packages/container_registry/_index.md b/doc/user/packages/container_registry/_index.md index 15c4eab3b3b..c0e102b0596 100644 --- a/doc/user/packages/container_registry/_index.md +++ b/doc/user/packages/container_registry/_index.md @@ -113,7 +113,7 @@ the entire project. Renaming projects with populated container repositories is only supported on GitLab.com. -On a self-managed instance, you can delete all container images before moving or renaming +On a GitLab Self-Managed instance, you can delete all container images before moving or renaming a group or project. Alternatively, [issue 18383](https://gitlab.com/gitlab-org/gitlab/-/issues/18383#possible-workaround) contains community suggestions to work around this limitation. [Epic 9459](https://gitlab.com/groups/gitlab-org/-/epics/9459) proposes adding support for moving projects and groups with container repositories diff --git a/doc/user/packages/container_registry/delete_container_registry_images.md b/doc/user/packages/container_registry/delete_container_registry_images.md index b93e7ca5b0d..24eeaea7da0 100644 --- a/doc/user/packages/container_registry/delete_container_registry_images.md +++ b/doc/user/packages/container_registry/delete_container_registry_images.md @@ -31,7 +31,7 @@ a deleted container image, you must rebuild and re-upload it. ## Garbage collection Deleting a container image on self-managed instances doesn't free up storage space, it only marks the image -as eligible for deletion. To actually delete unreferenced container images and recover storage space, self-managed instance administrators +as eligible for deletion. To actually delete unreferenced container images and recover storage space, GitLab Self-Managed instance administrators must run [garbage collection](../../../administration/packages/container_registry.md#container-registry-garbage-collection). The container registry on GitLab.com includes an automatic online garbage diff --git a/doc/user/profile/account/delete_account.md b/doc/user/profile/account/delete_account.md index d4eb69f7c70..06005ba1891 100644 --- a/doc/user/profile/account/delete_account.md +++ b/doc/user/profile/account/delete_account.md @@ -151,7 +151,7 @@ User approvals are associated with a user ID. Other user contributions do not ha {{< /alert >}} -## Delete the root account on a self-managed instance +## Delete the root account on a GitLab Self-Managed instance {{< details >}} @@ -177,7 +177,7 @@ Before you delete the root account: Prerequisites: -- You must be an administrator for the self-managed instance. +- You must be an administrator for the GitLab Self-Managed instance. To delete the root account: diff --git a/doc/user/profile/preferences.md b/doc/user/profile/preferences.md index 8fd80f0d667..9df609302c9 100644 --- a/doc/user/profile/preferences.md +++ b/doc/user/profile/preferences.md @@ -474,10 +474,13 @@ You must be the administrator of the GitLab instance to configure GitLab with So {{< history >}} -- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/151352) as a [beta](../../policy/development_stages_support.md#beta) in GitLab 17.0 [with flags](../../administration/feature_flags.md) named `web_ide_oauth` and `web_ide_extensions_marketplace`. Disabled by default. -- Feature flag `web_ide_oauth` [enabled on GitLab.com, GitLab Self-Managed, and GitLab Dedicated](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/163181) and feature flag `web_ide_extensions_marketplace` [enabled on GitLab.com](https://gitlab.com/gitlab-org/gitlab/-/issues/459028) in GitLab 17.4. -- Feature flag `web_ide_oauth` [removed](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/167464) in GitLab 17.5. +- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/161819) as a [beta](../../policy/development_stages_support.md#beta) in GitLab 17.0 [with flags](../../administration/feature_flags.md) named `web_ide_oauth` and `web_ide_extensions_marketplace`. Disabled by default. +- `web_ide_oauth` [enabled on GitLab.com, GitLab Self-Managed, and GitLab Dedicated](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/163181) in GitLab 17.4. +- `web_ide_extensions_marketplace` [enabled on GitLab.com](https://gitlab.com/gitlab-org/gitlab/-/issues/459028) in GitLab 17.4. +- `web_ide_oauth` [removed](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/167464) in GitLab 17.5. - Enabled by default for [workspaces](../workspace/_index.md) in GitLab 17.6. Workspaces do not require any feature flags for the extension marketplace to be available. +- [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/508996) the `vscode_extension_marketplace_settings` [feature flag](../../administration/feature_flags.md) in GitLab 17.10. Disabled by default. +- `web_ide_extensions_marketplace` and `vscode_extension_marketplace_settings` [enabled on GitLab Self-Managed](https://gitlab.com/gitlab-org/gitlab/-/issues/459028) in GitLab 17.11. {{< /history >}} @@ -492,6 +495,11 @@ You can use the [extension marketplace](../project/web_ide/_index.md#extension-m manage extensions for the [Web IDE](../project/web_ide/_index.md) and [workspaces](../workspace/_index.md). For third-party extensions, you must enable the marketplace in user preferences. +Prerequisites: + +- In the **Admin** area, a GitLab administrator must + [enable the extension marketplace](../../administration/settings/vscode_extension_marketplace.md). + To enable the extension marketplace for the Web IDE and workspaces: 1. On the left sidebar, select your avatar. @@ -501,12 +509,6 @@ To enable the extension marketplace for the Web IDE and workspaces: 1. In the third-party extension acknowledgement, select **I understand**. 1. Select **Save changes**. -{{< alert type="note" >}} - -This preferences checkbox will always be available, even if the feature flags are disabled. - -{{< /alert >}} -