diff --git a/app/views/registrations/welcome/show.html.haml b/app/views/registrations/welcome/show.html.haml index 4de4296c965..d44a29a5bba 100644 --- a/app/views/registrations/welcome/show.html.haml +++ b/app/views/registrations/welcome/show.html.haml @@ -4,10 +4,8 @@ .d-flex.gl-flex-direction-column.gl-align-items-center.gl-w-full.gl-p-5 .edit-profile.login-page.d-flex.flex-column.gl-align-items-center.pt-lg-3 = render_if_exists "registrations/welcome/progress_bar" - %h2.gl-text-center= html_escape(_('Welcome to GitLab%{br_tag}%{name}!')) % { name: html_escape(current_user.first_name), br_tag: '
'.html_safe } - %p - .gl-text-center= html_escape(_('In order to personalize your experience with GitLab%{br_tag}we would like to know a bit more about you.')) % { br_tag: '
'.html_safe } - + %h2.gl-text-center= html_escape(_('Welcome to GitLab,%{br_tag}%{name}!')) % { name: html_escape(current_user.first_name), br_tag: '
'.html_safe } + %p.gl-text-center= html_escape(_('To personalize your GitLab experience, we\'d like to know a bit more about you. We won\'t share this information with anyone.')) % { br_tag: '
'.html_safe } = form_for(current_user, url: users_sign_up_welcome_path, html: { class: 'card gl-w-full! gl-p-5', 'aria-live' => 'assertive' }) do |f| .devise-errors = render 'devise/shared/error_messages', resource: current_user @@ -20,9 +18,6 @@ .form-group.col-sm-12.js-other-role-group{ class: ("hidden") } = f.label :other_role, _('What is your job title? (optional)'), class: 'form-check-label gl-mb-3' = f.text_field :other_role, class: 'form-control' - .row - .form-group.col-sm-12 - .form-text.gl-text-gray-500.gl-mt-0.gl-line-height-normal.gl-px-1= _('This will help us personalize your onboarding experience.') = render_if_exists "registrations/welcome/setup_for_company", f: f .row .form-group.col-sm-12.gl-mb-0 diff --git a/changelogs/unreleased/kcomoli-copy-fixes-welcome-page.yml b/changelogs/unreleased/kcomoli-copy-fixes-welcome-page.yml new file mode 100644 index 00000000000..0b4fca343a8 --- /dev/null +++ b/changelogs/unreleased/kcomoli-copy-fixes-welcome-page.yml @@ -0,0 +1,6 @@ +--- +title: Improve overall copy, remove redundant reassurance in the form, and fix empty + %p rendered in the DOM of the welcome page. +merge_request: 52660 +author: +type: other diff --git a/doc/api/graphql/getting_started.md b/doc/api/graphql/getting_started.md index ca2b7989700..1b7e273f7a1 100644 --- a/doc/api/graphql/getting_started.md +++ b/doc/api/graphql/getting_started.md @@ -314,9 +314,10 @@ Pagination is a way of only asking for a subset of the records (say, the first 1 If we want more of them, we can make another request for the next 10 from the server (in the form of something like "please give me the next 10 records"). -By default, the GitLab GraphQL API returns only the first 100 records of any collection. +By default, the GitLab GraphQL API returns 100 records per page. This can be changed by using `first` or `last` arguments. Both arguments take a value, so `first: 10` returns the first 10 records, and `last: 10` the last 10 records. +There is a limit on how many records will be returned per page, which is generally `100`. Example: Retrieve only the first 2 issues (slicing). The `cursor` field gives us a position from which we can retrieve further records relative to that one. diff --git a/doc/api/graphql/index.md b/doc/api/graphql/index.md index 45a327d323b..a97d892dbc4 100644 --- a/doc/api/graphql/index.md +++ b/doc/api/graphql/index.md @@ -117,6 +117,43 @@ information about multiplexed queries is also available for [GraphQL Ruby](https://graphql-ruby.org/queries/multiplex.html), the library GitLab uses on the backend. +## Limits + +The following limits apply to the GitLab GraphQL API. + +### Max page size + +By default, connections return at most `100` records ("nodes") per page, +and this limit applies to most connections in the API. Particular connections +may have different max page size limits that are higher or lower. + +### Max query complexity + +The GitLab GraphQL API scores the _complexity_ of a query. Generally, larger +queries will have a higher complexity score. This limit is designed to protect +the API from performing queries that could negatively impact its overall performance. + +The complexity of a single query is limited to a maximum of: + +- `200` for unauthenticated requests. +- `250` for authenticated requests. + +There is no way to discover the complexity of a query except by exceeding the limit. + +If a query exceeds the complexity limit an error message response will +be returned. + +In general, each field in a query will add `1` to the complexity score, although +this can be higher or lower for particular fields. Sometimes the addition of +certain arguments may also increase the complexity of a query. + +The complexity limits may be revised in future, and additionally, the complexity +of a query may be altered. + +### Request timeout + +Requests time out at 30 seconds. + ## Reference The GitLab GraphQL reference [is available](reference/index.md). diff --git a/doc/development/api_graphql_styleguide.md b/doc/development/api_graphql_styleguide.md index 4313f868710..a6968a7da1d 100644 --- a/doc/development/api_graphql_styleguide.md +++ b/doc/development/api_graphql_styleguide.md @@ -45,6 +45,32 @@ can be shared. It's also possible to add a `private_token` to the query string, or add a `HTTP_PRIVATE_TOKEN` header. +## Limits + +Several limits apply to the GraphQL API and some of these can be overridden +by developers. + +### Max page size + +By default, [connections](#connection-types) can only return +at most a maximum number of records defined in +[`app/graphql/gitlab_schema.rb`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/app/graphql/gitlab_schema.rb) +per page. + +Developers can [specify a custom max page size](#page-size-limit) when defining +a connection. + +### Max complexity + +Complexity is explained [on our client-facing API page](../api/graphql/index.md#max-query-complexity). + +Fields default to adding `1` to a query's complexity score, but developers can +[specify a custom complexity](#field-complexity) when defining a field. + +### Request timeout + +Requests time out at 30 seconds. + ## Global IDs The GitLab GraphQL API uses Global IDs (i.e: `"gid://gitlab/MyObject/123"`) @@ -284,6 +310,61 @@ Use the functionality the framework provides unless there is a compelling reason For example, instead of `latest_pipeline`, use `pipelines(last: 1)`. +#### Page size limit + +By default, the API returns at most a maximum number of records defined in +[`app/graphql/gitlab_schema.rb`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/app/graphql/gitlab_schema.rb) +per page within a connection and this will also be the default number of records +returned per page if no limiting arguments (`first:` or `last:`) are provided by a client. + +The `max_page_size` argument can be used to specify a different page size limit +for a connection. + +WARNING: +It's better to change the frontend client, or product requirements, to not need large amounts of +records per page than it is to raise the `max_page_size`, as the default is set to ensure +the GraphQL API remains performant. + +For example: + +```ruby +field :tags, + Types::ContainerRepositoryTagType.connection_type, + null: true, + description: 'Tags of the container repository', + max_page_size: 20 +``` + +### Field complexity + +The GitLab GraphQL API uses a _complexity_ score to limit performing overly complex queries. +Complexity is described in [our client documentation](../api/graphql/index.md#max-query-complexity) on the topic. + +Complexity limits are defined in [`app/graphql/gitlab_schema.rb`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/app/graphql/gitlab_schema.rb). + +By default, fields will add `1` to a query's complexity score. This can be overridden by +[providing a custom `complexity`](https://graphql-ruby.org/queries/complexity_and_depth.html) value for a field. + +Developers should specify higher complexity for fields that cause more _work_ to be performed +by the server in order to return data. Fields that represent data that can be returned +with little-to-no _work_, for example in most cases; `id` or `title`, can be given a complexity of `0`. + +### `calls_gitaly` + +Fields that have the potential to perform a [Gitaly](../administration/gitaly/index.md) call when resolving _must_ be marked as +such by passing `calls_gitaly: true` to `field` when defining it. + +For example: + +```ruby +field :blob, type: Types::Snippets::BlobType, + description: 'Snippet blob', + null: false, + calls_gitaly: true +``` + +This will increment the [`complexity` score](#field-complexity) of the field by `1`. + ### Exposing permissions for a type To expose permissions the current user has on a resource, you can call diff --git a/doc/development/experiment_guide/index.md b/doc/development/experiment_guide/index.md index a1899ab5f18..2b0fd3ccc54 100644 --- a/doc/development/experiment_guide/index.md +++ b/doc/development/experiment_guide/index.md @@ -12,7 +12,7 @@ Experiments are run as an A/B test and are behind a feature flag to turn the tes ## Experiment tracking issue -Each experiment should have an [Experiment tracking](https://gitlab.com/groups/gitlab-org/-/issues?scope=all&utf8=%E2%9C%93&state=opened&label_name[]=growth%20experiment&search=%22Experiment+tracking%22) issue to track the experiment from roll-out through to cleanup/removal. Immediately after an experiment is deployed, the due date of the issue should be set (this depends on the experiment but can be up to a few weeks in the future). +Each experiment should have an [Experiment tracking](https://gitlab.com/groups/gitlab-org/-/issues?scope=all&utf8=%E2%9C%93&state=opened&label_name[]=growth%20experiment&search=%22Experiment+tracking%22) issue to track the experiment from roll-out through to cleanup/removal. The tracking issue is similar to a feature flag rollout issue, and is also used to track the status of an experiment. Immediately after an experiment is deployed, the due date of the issue should be set (this depends on the experiment but can be up to a few weeks in the future). After the deadline, the issue needs to be resolved and either: - It was successful and the experiment becomes the new default. @@ -36,7 +36,17 @@ and link to the issue that resolves the experiment. If the experiment is successful and becomes part of the product, any follow up issues should be addressed. -## How to create an A/B test +## Experiments using `gitlab-experiment` + +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/300383) in GitLab 13.7. +> - It's [deployed behind a feature flag](../../user/feature_flags.md), disabled by default. +> - It's enabled on GitLab.com. +> - It is not yet intended for use in GitLab self-managed instances. + +[GitLab Experiment](https://gitlab.com/gitlab-org/gitlab-experiment/) is a gem included +in GitLab that can be used for running experiments. + +## How to create an A/B test using `experimentation.rb` ### Implement the experiment diff --git a/doc/development/feature_flags/development.md b/doc/development/feature_flags/development.md index a1da284ec8f..c5b2791730f 100644 --- a/doc/development/feature_flags/development.md +++ b/doc/development/feature_flags/development.md @@ -66,6 +66,13 @@ Feature.disabled?(:my_ops_flag, project, type: :ops) push_frontend_feature_flag(:my_ops_flag, project, type: :ops) ``` +### `experiment` type + +`experiment` feature flags are used for A/B testing on GitLab.com. + +An `experiment` feature flag should conform to the same standards as a `development` feature flag, +although the interface has some differences. More information can be found in the [experiment guide](../experiment_guide/index.md). + ## Feature flag definition and validation > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/229161) in GitLab 13.3. diff --git a/doc/subscriptions/gitlab_com/index.md b/doc/subscriptions/gitlab_com/index.md index 7af102bc5ce..fe7e3066ca4 100644 --- a/doc/subscriptions/gitlab_com/index.md +++ b/doc/subscriptions/gitlab_com/index.md @@ -5,41 +5,41 @@ info: To determine the technical writer assigned to the Stage/Group associated w type: index, reference --- -# GitLab.com subscription **(BRONZE ONLY)** +# GitLab SaaS subscription **(PREMIUM SAAS)** -GitLab.com is GitLab Inc.'s software-as-a-service offering. You don't need to -install anything to use GitLab.com, you only need to +GitLab SaaS is GitLab Inc.'s software-as-a-service offering. You don't need to +install anything to use GitLab SaaS, you only need to [sign up](https://gitlab.com/users/sign_up) and start using GitLab straight away. -This page reviews the details of your GitLab.com subscription. +This page reviews the details of your GitLab SaaS subscription. -## Choose a GitLab.com group or personal subscription +## Choose a GitLab SaaS group or personal subscription -On GitLab.com you can apply a subscription to either a group or a personal namespace. +On GitLab SaaS you can apply a subscription to either a group or a personal namespace. When applied to: - A **group**, the group, all subgroups, and all projects under the selected - group on GitLab.com contains the features of the associated tier. GitLab recommends + group on GitLab SaaS contains the features of the associated tier. GitLab recommends choosing a group plan when managing an organization's projects and users. - A **personal user space**, all projects contain features with the subscription applied, but as it's not a group, group features aren't available. -You can read more about [common misconceptions](https://about.gitlab.com/handbook/marketing/strategic-marketing/enablement/dotcom-subscriptions/#common-misconceptions) regarding a GitLab.com subscription to help avoid issues. +You can read more about [common misconceptions](https://about.gitlab.com/handbook/marketing/strategic-marketing/enablement/dotcom-subscriptions/#common-misconceptions) regarding a GitLab SaaS subscription to help avoid issues. -## Choose a GitLab.com tier +## Choose a GitLab SaaS tier Pricing is [tier-based](https://about.gitlab.com/pricing/), allowing you to choose the features which fit your budget. For information on what features are available at each tier, see the -[GitLab.com feature comparison](https://about.gitlab.com/pricing/gitlab-com/feature-comparison/). +[GitLab SaaS feature comparison](https://about.gitlab.com/pricing/gitlab-com/feature-comparison/). ## Choose the number of users NOTE: Applied only to groups. -A GitLab.com subscription uses a concurrent (_seat_) model. You pay for a +A GitLab SaaS subscription uses a concurrent (_seat_) model. You pay for a subscription according to the maximum number of users enabled at once. You can add and remove users during the subscription period, as long as the total users at any given time doesn't exceed the subscription count. @@ -50,21 +50,21 @@ Every occupied seat is counted in the subscription, with the following exception NOTE: To support the open source community and encourage the development of open -source projects, GitLab grants access to **Ultimate** features for all GitLab.com +source projects, GitLab grants access to **Ultimate** features for all GitLab SaaS **public** projects, regardless of the subscription. -## Obtain a GitLab.com subscription +## Obtain a GitLab SaaS subscription -To subscribe to GitLab.com: +To subscribe to GitLab SaaS: - **For individuals**: 1. Create a user account for yourself using our [sign up page](https://gitlab.com/users/sign_up). 1. Visit the [billing page](https://gitlab.com/profile/billings) under your profile. - 1. Select the **Bronze**, **Premium**, or **Ultimate** GitLab.com plan through the + 1. Select the **Premium** or **Ultimate** GitLab SaaS plan through the [Customers Portal](https://customers.gitlab.com/). - 1. Link your GitLab.com account with your Customers Portal account. + 1. Link your GitLab SaaS account with your Customers Portal account. Once a plan has been selected, if your account is not already linked, GitLab prompts you to link your account with a **Sign in to GitLab.com** button. @@ -79,9 +79,9 @@ To subscribe to GitLab.com: namespace. 1. Create additional users and [add them to the group](../../user/group/index.md#add-users-to-a-group). - 1. Select the **Bronze**, **Premium**, or **Ultimate** GitLab.com plan through the + 1. Select the GitLab SaaS plan through the [Customers Portal](https://customers.gitlab.com/). - 1. Link your GitLab.com account with your Customers Portal account. + 1. Link your GitLab SaaS account with your Customers Portal account. Once a plan has been selected, if your account is not already linked, GitLab prompts you to link your account with a **Sign in to GitLab.com** button. @@ -90,11 +90,11 @@ To subscribe to GitLab.com: NOTE: You can also go to the [**My Account**](https://customers.gitlab.com/customers/edit) -page to add or change the GitLab.com account link. +page to add or change the GitLab SaaS account link. -## View your GitLab.com subscription +## View your GitLab SaaS subscription -To see the status of your GitLab.com subscription, log in to GitLab.com and go +To see the status of your GitLab SaaS subscription, log in to GitLab SaaS and go to the **Billing** section of the relevant namespace: - **For individuals**: Visit the [billing page](https://gitlab.com/profile/billings) @@ -147,12 +147,12 @@ For example: | Amir | `ami` | Yes | | Amir | `amr` | No | -## Renew your GitLab.com subscription +## Renew your GitLab SaaS subscription To renew your subscription: -1. [Prepare for renewal by reviewing your account](#prepare-for-renewal-by-reviewing-your-account) -1. [Renew your GitLab.com subscription](#renew-or-change-a-gitlabcom-subscription) +1. [Prepare for renewal by reviewing your account.](#prepare-for-renewal-by-reviewing-your-account) +1. [Renew your GitLab SaaS subscription.](#renew-or-change-a-gitlab-saas-subscription) ### Prepare for renewal by reviewing your account @@ -180,21 +180,21 @@ It's important to regularly review your user accounts, because: A GitLab subscription is valid for a specific number of users. For details, see [Choose the number of users](#choose-the-number-of-users). -If the number of [billable users](#view-your-gitlabcom-subscription) exceeds the number included in the subscription, known +If the number of [billable users](#view-your-gitlab-saas-subscription) exceeds the number included in the subscription, known as the number of _users over license_, you must pay for the excess number of users either before renewal, or at the time of renewal. This is also known the _true up_ process. -### Renew or change a GitLab.com subscription +### Renew or change a GitLab SaaS subscription -You can adjust the number of users before renewing your GitLab.com subscription. +You can adjust the number of users before renewing your GitLab SaaS subscription. -- To renew for more users than are currently included in your GitLab.com plan, [add users to your subscription](#add-users-to-your-subscription). -- To renew for fewer users than are currently included in your GitLab.com plan, +- To renew for more users than are currently included in your GitLab SaaS plan, [add users to your subscription](#add-users-to-your-subscription). +- To renew for fewer users than are currently included in your GitLab SaaS plan, either [disable](../../user/admin_area/activating_deactivating_users.md#deactivating-a-user) or [block](../../user/admin_area/blocking_unblocking_users.md#blocking-a-user) the user accounts you no longer need. For details on upgrading your subscription tier, see -[Upgrade your GitLab.com subscription tier](#upgrade-your-gitlabcom-subscription-tier). +[Upgrade your GitLab SaaS subscription tier](#upgrade-your-gitlab-saas-subscription-tier). #### Automatic renewal @@ -235,7 +235,7 @@ The following is emailed to you: - A payment receipt. You can also access this information in the Customers Portal under [**View invoices**](https://customers.gitlab.com/receipts). -## Upgrade your GitLab.com subscription tier +## Upgrade your GitLab SaaS subscription tier To upgrade your [GitLab tier](https://about.gitlab.com/pricing/): @@ -266,11 +266,10 @@ If you renew or upgrade, your data is accessible again. CI pipeline minutes are the execution time for your [pipelines](../../ci/pipelines/index.md) on GitLab shared runners. Each -[GitLab.com tier](https://about.gitlab.com/pricing/) includes a monthly quota +[GitLab SaaS tier](https://about.gitlab.com/pricing/) includes a monthly quota of CI pipeline minutes: - Free: 400 minutes -- Bronze: 2,000 minutes - Premium: 10,000 minutes - Ultimate: 50,000 minutes @@ -284,18 +283,18 @@ Quotas apply to: **Settings > [Usage Quotas](https://gitlab.com/profile/usage_quotas#pipelines-quota-tab)**. Only pipeline minutes for GitLab shared runners are restricted. If you have a -specific runner set up for your projects, there is no limit to your build time on GitLab.com. +specific runner set up for your projects, there is no limit to your build time on GitLab SaaS. The available quota is reset on the first of each calendar month at midnight UTC. When the CI minutes are depleted, an email is sent automatically to notify the owner(s) of the namespace. You can [purchase additional CI minutes](#purchase-additional-ci-minutes), -or upgrade your account to [Premium or Ultimate](https://about.gitlab.com/pricing/). +or upgrade your account to a higher [plan](https://about.gitlab.com/pricing/). Your own runners can still be used even if you reach your limits. ### Purchase additional CI minutes -If you're using GitLab.com, you can purchase additional CI minutes so your +If you're using GitLab SaaS, you can purchase additional CI minutes so your pipelines aren't blocked after you have used all your CI minutes from your main quota. You can find pricing for additional CI/CD minutes in the [GitLab Customers Portal](https://customers.gitlab.com/plans). Additional minutes: @@ -303,11 +302,11 @@ main quota. You can find pricing for additional CI/CD minutes in the - Are only used after the shared quota included in your subscription runs out. - Roll over month to month. -To purchase additional minutes for your group on GitLab.com: +To purchase additional minutes for your group on GitLab SaaS: 1. From your group, go to **Settings > Usage Quotas**. 1. Select **Buy additional minutes** and GitLab directs you to the Customers Portal. -1. Locate the subscription card that's linked to your group on GitLab.com, click **Buy more CI minutes**, and complete the details about the transaction. +1. Locate the subscription card that's linked to your group on GitLab SaaS, click **Buy more CI minutes**, and complete the details about the transaction. 1. Once we have processed your payment, the extra CI minutes are synced to your group namespace. 1. To confirm the available CI minutes, go to your group, then **Settings > Usage Quotas**. @@ -317,7 +316,7 @@ To purchase additional minutes for your personal namespace: 1. Click your avatar, then go to **Settings > Usage Quotas**. 1. Select **Buy additional minutes** and GitLab redirects you to the Customers Portal. -1. Locate the subscription card that's linked to your personal namespace on GitLab.com, click **Buy more CI minutes**, and complete the details about the transaction. Once we have processed your payment, the extra CI minutes are synced to your personal namespace. +1. Locate the subscription card that's linked to your personal namespace on GitLab SaaS, click **Buy more CI minutes**, and complete the details about the transaction. Once we have processed your payment, the extra CI minutes are synced to your personal namespace. 1. To confirm the available CI minutes for your personal projects, click your avatar, then go to **Settings > Usage Quotas**. The **Additional minutes** displayed now includes the purchased additional CI minutes, plus any minutes rolled over from last month. @@ -348,7 +347,7 @@ locked. Projects can only be unlocked by purchasing more storage subscription un To purchase more storage for either a personal or group namespace: -1. Sign in to GitLab.com. +1. Sign in to GitLab SaaS. 1. From either your personal homepage or the group's page, go to **Settings > Usage Quotas**. 1. For each locked project, total by how much its **Usage** exceeds the free quota and purchased storage. You must purchase the storage increment that exceeds this total. @@ -361,7 +360,7 @@ To purchase more storage for either a personal or group namespace: 1. Select the **Privacy Policy** and **Terms of Service** checkbox. 1. Select **Buy subscription**. 1. Sign out of the Customers Portal. -1. Switch back to the GitLab.com tab and refresh the page. +1. Switch back to the GitLab SaaS tab and refresh the page. The **Purchased storage available** total is incremented by the amount purchased. All locked projects are unlocked and their excess usage is deducted from the additional storage. diff --git a/doc/subscriptions/index.md b/doc/subscriptions/index.md index fa67f1d1c5a..aff392f61ff 100644 --- a/doc/subscriptions/index.md +++ b/doc/subscriptions/index.md @@ -5,7 +5,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w type: index, reference --- -# GitLab subscription **(STARTER)** +# GitLab subscription **(PREMIUM)** GitLab offers tiers of features. Your subscription determines which tier you have access to. Subscriptions are valid for 12 months. @@ -19,26 +19,26 @@ GitLab provides special subscriptions to participants in: When choosing a subscription, there are two factors to consider: -- [GitLab.com or self-managed](#choose-between-gitlabcom-or-self-managed) +- [GitLab SaaS or GitLab self-managed](#choose-between-gitlab-saas-or-gitlab-self-managed) - [GitLab tier](#choose-a-gitlab-tier) -### Choose between GitLab.com or self-managed +### Choose between GitLab SaaS or GitLab self-managed There are some differences in how a subscription applies, depending if you use -GitLab.com or a self-managed instance: +GitLab SaaS or GitLab self-managed: -- [GitLab.com](gitlab_com/index.md): The GitLab software-as-a-service offering. - You don't need to install anything to use GitLab.com, you only need to +- [GitLab SaaS](gitlab_com/index.md): The GitLab software-as-a-service offering. + You don't need to install anything to use GitLab SaaS, you only need to [sign up](https://gitlab.com/users/sign_up) and start using GitLab straight away. - [GitLab self-managed](self_managed/index.md): Install, administer, and maintain your own GitLab instance. -On a self-managed instance, a GitLab subscription provides the same set of -features for _all_ users. On GitLab.com, you can apply a subscription to either +On a GitLab self-managed instance, a GitLab subscription provides the same set of +features for _all_ users. On GitLab SaaS, you can apply a subscription to either a group or a personal namespace. NOTE: -Subscriptions cannot be transferred between GitLab.com and GitLab self-managed. +Subscriptions cannot be transferred between GitLab SaaS and GitLab self-managed. A new subscription must be purchased and applied as needed. ### Choose a GitLab tier @@ -47,8 +47,8 @@ Pricing is [tier-based](https://about.gitlab.com/pricing/), allowing you to choo the features which fit your budget. For information on what features are available at each tier for each product, see: -- [GitLab.com feature comparison](https://about.gitlab.com/pricing/gitlab-com/feature-comparison/) -- [Self-managed feature comparison](https://about.gitlab.com/pricing/self-managed/feature-comparison/) +- [GitLab SaaS feature comparison](https://about.gitlab.com/pricing/gitlab-com/feature-comparison/) +- [GitLab self-managed feature comparison](https://about.gitlab.com/pricing/self-managed/feature-comparison/) ## Find your subscription @@ -134,11 +134,11 @@ To change the GitLab.com account linked to your Customers Portal account: 1. Log in to the [Customers Portal](https://customers.gitlab.com/customers/sign_in). -1. In a separate browser tab, go to [GitLab.com](https://gitlab.com) and ensure you +1. In a separate browser tab, go to [GitLab SaaS](https://gitlab.com) and ensure you are not logged in. 1. On the Customers Portal page, click **My account > Account details**. 1. Under **Your GitLab.com account**, click **Change linked account**. -1. Log in to the [GitLab.com](https://gitlab.com) account you want to link to the Customers Portal +1. Log in to the [GitLab SaaS](https://gitlab.com) account you want to link to the Customers Portal account. ### Change the linked namespace @@ -146,7 +146,7 @@ To change the GitLab.com account linked to your Customers Portal account: To change the namespace linked to a subscription: 1. Log in to the [Customers Portal](https://customers.gitlab.com/customers/sign_in) with a - [linked](#change-the-linked-account) GitLab.com account. + [linked](#change-the-linked-account) GitLab SaaS account. 1. Navigate to the **Manage Purchases** page. 1. Select **Change linked namespace**. 1. Select the desired group from the **This subscription is for** dropdown. diff --git a/doc/subscriptions/self_managed/index.md b/doc/subscriptions/self_managed/index.md index a9c0337509a..28c10c17052 100644 --- a/doc/subscriptions/self_managed/index.md +++ b/doc/subscriptions/self_managed/index.md @@ -5,7 +5,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w type: index, reference --- -# GitLab self-managed subscription **(STARTER ONLY)** +# GitLab self-managed subscription **(PREMIUM SELF)** You can install, administer, and maintain your own GitLab instance. @@ -37,10 +37,10 @@ at each tier, see the ## Subscription seats -A self-managed subscription uses a hybrid model. You pay for a subscription +A GitLab self-managed subscription uses a hybrid model. You pay for a subscription according to the maximum number of users enabled during the subscription period. For instances that aren't offline or on a closed network, the maximum number of -simultaneous users in the self-managed installation is checked each quarter, +simultaneous users in the GitLab self-managed installation is checked each quarter, using [Seat Link](#seat-link). ### Billable users @@ -76,15 +76,14 @@ GitLab has several features which can help you manage the number of users: ## Obtain a subscription -To subscribe to GitLab through a self-managed installation: +To subscribe to GitLab through a GitLab self-managed installation: -1. Go to the [Customers Portal](https://customers.gitlab.com/) and purchase a - **Starter**, **Premium**, or **Ultimate** self-managed plan. +1. Go to the [Customers Portal](https://customers.gitlab.com/) and purchase a GitLab self-managed plan. 1. After purchase, a license file is sent to the email address associated to the Customers Portal account, which must be [uploaded to your GitLab instance](../../user/admin_area/license.md#uploading-your-license). NOTE: -If you're purchasing a subscription for an existing **Core** self-managed +If you're purchasing a subscription for an existing **Free** GitLab self-managed instance, ensure you're purchasing enough seats to [cover your users](../../user/admin_area/index.md#administering-users). @@ -114,7 +113,7 @@ It also displays the following important statistics: To renew your subscription, [prepare for renewal by reviewing your account](#prepare-for-renewal-by-reviewing-your-account), -then [renew your self-managed subscription](#renew-a-subscription). +then [renew your GitLab self-managed subscription](#renew-a-subscription). ### Prepare for renewal by reviewing your account @@ -203,9 +202,9 @@ An invoice is generated for the renewal and available for viewing or download on > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/208832) in [GitLab Starter](https://about.gitlab.com/pricing/) 12.9. -Seat Link allows GitLab Inc. to provide our self-managed customers with prorated charges for user growth throughout the year using a quarterly reconciliation process. +Seat Link allows GitLab Inc. to provide our GitLab self-managed customers with prorated charges for user growth throughout the year using a quarterly reconciliation process. -Seat Link daily sends a count of all users in connected self-managed instances to GitLab. That information is used to automate prorated reconciliations. The data is sent securely through an encrypted HTTPS connection to `customers.gitlab.com` on port `443`. +Seat Link daily sends a count of all users in connected GitLab self-managed instances to GitLab. That information is used to automate prorated reconciliations. The data is sent securely through an encrypted HTTPS connection to `customers.gitlab.com` on port `443`. Seat Link provides **only** the following information to GitLab: @@ -325,7 +324,7 @@ behave as expected if you're not prepared for the expiry. For example, [environment specific variables not being passed](https://gitlab.com/gitlab-org/gitlab/-/issues/24759). If you renew or upgrade, your data is again accessible. -For self-managed customers, there is a 14-day grace period when your features +For GitLab self-managed customers, there is a 14-day grace period when your features continue to work as-is, after which the entire instance becomes read only. diff --git a/doc/user/gitlab_com/index.md b/doc/user/gitlab_com/index.md index 8b2a6e9225f..9bae089b9d6 100644 --- a/doc/user/gitlab_com/index.md +++ b/doc/user/gitlab_com/index.md @@ -170,7 +170,7 @@ Linux shared runners on GitLab.com run in autoscale mode and are powered by Goog Autoscaling means reduced queue times to spin up CI/CD jobs, and isolated VMs for each project, thus maximizing security. These shared runners are available for users and customers on GitLab.com. -GitLab offers Gold tier capabilities and included CI/CD minutes per group per month for our [Open Source](https://about.gitlab.com/solutions/open-source/join/), [Education](https://about.gitlab.com/solutions/education/), and [Startups](https://about.gitlab.com/solutions/startups/) programs. For private projects, GitLab offers various [plans](https://about.gitlab.com/pricing/), starting with a Free tier. +GitLab offers Ultimate tier capabilities and included CI/CD minutes per group per month for our [Open Source](https://about.gitlab.com/solutions/open-source/join/), [Education](https://about.gitlab.com/solutions/education/), and [Startups](https://about.gitlab.com/solutions/startups/) programs. For private projects, GitLab offers various [plans](https://about.gitlab.com/pricing/), starting with a Free tier. All your CI/CD jobs run on [n1-standard-1 instances](https://cloud.google.com/compute/docs/machine-types) with 3.75GB of RAM, CoreOS and the latest Docker Engine installed. Instances provide 1 vCPU and 25GB of HDD disk space. The default diff --git a/doc/user/permissions.md b/doc/user/permissions.md index 0d85769a5d6..90e41a7b99b 100644 --- a/doc/user/permissions.md +++ b/doc/user/permissions.md @@ -421,7 +421,8 @@ details such as projects or subgroups. They do not have access to the group's pa ### Minimal access users take license seats Users with even a "minimal access" role are counted against your number of license seats. This -requirement does not apply for [GitLab Gold/Ultimate](https://about.gitlab.com/pricing/) subscriptions. +requirement does not apply for [GitLab Ultimate](https://about.gitlab.com/pricing/) +subscriptions. ## Project features diff --git a/doc/user/project/clusters/protect/container_network_security/index.md b/doc/user/project/clusters/protect/container_network_security/index.md index 8299844e511..a7cdd73acd7 100644 --- a/doc/user/project/clusters/protect/container_network_security/index.md +++ b/doc/user/project/clusters/protect/container_network_security/index.md @@ -28,10 +28,9 @@ chart. - GitLab managed installation of Cilium. - Support for L3, L4, and L7 policies. - Ability to export logs to a SIEM. -- Statistics page showing volume of packets processed and dropped over time (Gold/Ultimate users - only). +- Statistics page showing volume of packets processed and dropped over time (Ultimate users only). - Management of NetworkPolicies through code in a project (Available for auto DevOps users only). -- Management of CiliumNetworkPolicies through a UI policy manager (Gold/Ultimate users only). +- Management of CiliumNetworkPolicies through a UI policy manager (Ultimate users only). ## Supported container orchestrators diff --git a/doc/user/project/clusters/protect/container_network_security/quick_start_guide.md b/doc/user/project/clusters/protect/container_network_security/quick_start_guide.md index 10f9380a1f2..e530f0dfcda 100644 --- a/doc/user/project/clusters/protect/container_network_security/quick_start_guide.md +++ b/doc/user/project/clusters/protect/container_network_security/quick_start_guide.md @@ -46,11 +46,11 @@ Network Policies can be managed through GitLab in one of two ways: - Management through a YAML file in each application's project (for projects using Auto DevOps). For more information, see the [Network Policy documentation](../../../../../topics/autodevops/stages.md#network-policy). - Management through the GitLab Policy management UI (for projects not using Auto DevOps). For more - information, see the [Container Network Policy documentation](../../../../application_security/threat_monitoring/index.md#container-network-policy-management) (Ultimate/Gold only). + information, see the [Container Network Policy documentation](../../../../application_security/threat_monitoring/index.md#container-network-policy-management) (Ultimate only). Each method has benefits and drawbacks: -| | YAML method | UI method (Ultimate/Gold only) | +| | YAML method | UI method (Ultimate only) | |--|:------------|:-------------------------------| | **Benefits** | A change control process is possible by requiring [MR Approvals](../../../merge_requests/merge_request_approvals.md). All changes are fully tracked and audited in the same way that Git tracks the history of any file in its repository. | The UI provides a simple rules editor for users who are less familiar with the YAML syntax of NetworkPolicies. This view is a live representation of the policies currently deployed in the Kubernetes cluster. The UI also allows for multiple network policies to be created per environment. | | **Drawbacks** | Only one network policy can be deployed per environment (although that policy can be as detailed as needed). Also, if changes were made in Kubernetes directly rather than through the `auto-deploy-values.yaml` file, the YAML file's contents don't represent the actual state of policies deployed in Kubernetes. | Policy changes aren't audited and a change control process isn't available. | diff --git a/doc/user/project/clusters/protect/web_application_firewall/quick_start_guide.md b/doc/user/project/clusters/protect/web_application_firewall/quick_start_guide.md index 51e12086860..e7d8d591510 100644 --- a/doc/user/project/clusters/protect/web_application_firewall/quick_start_guide.md +++ b/doc/user/project/clusters/protect/web_application_firewall/quick_start_guide.md @@ -55,7 +55,7 @@ those projects provide a bare-bones application built on some well-known framewo 1. Give your project a name, optionally a description, and make it public so that you can take advantage of the features available in the - [GitLab Gold plan](https://about.gitlab.com/pricing/#gitlab-com). + [GitLab Ultimate plan](https://about.gitlab.com/pricing/). ![Create project](../../../../../topics/autodevops/img/guide_create_project_v12_3.png) diff --git a/doc/user/usage_quotas.md b/doc/user/usage_quotas.md index 8662efc03a7..c82fc6ab432 100644 --- a/doc/user/usage_quotas.md +++ b/doc/user/usage_quotas.md @@ -7,7 +7,7 @@ info: To determine the technical writer assigned to the Stage/Group associated w # Storage usage quota -> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/13294) in [GitLab Starter](https://about.gitlab.com/pricing/) 12.0. +> - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/merge_requests/13294) in GitLab 12.0. > - Moved to GitLab Free. A project's repository has a free storage quota of 10 GB. When a project's repository reaches @@ -32,11 +32,11 @@ namespace to trigger a recalculation. A stacked bar graph shows the proportional storage used for the namespace, including a total per storage item. Click on each project's title to see a breakdown per storage item. -## Storage usage statistics **(BRONZE ONLY)** +## Storage usage statistics > - [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/247831) in GitLab 13.7. > - It's [deployed behind a feature flag](../user/feature_flags.md), enabled by default. -> - It's enabled on GitLab.com. +> - It's enabled on GitLab SaaS. > - It's recommended for production use. WARNING: diff --git a/locale/gitlab.pot b/locale/gitlab.pot index 510386c6c98..2d63d015ed7 100644 --- a/locale/gitlab.pot +++ b/locale/gitlab.pot @@ -14955,9 +14955,6 @@ msgstr "" msgid "In order to enable Service Desk for your instance, you must first set up incoming email." msgstr "" -msgid "In order to personalize your experience with GitLab%{br_tag}we would like to know a bit more about you." -msgstr "" - msgid "In progress" msgstr "" @@ -29422,9 +29419,6 @@ msgstr "" msgid "This will clear repository check states for ALL projects in the database. This cannot be undone. Are you sure?" msgstr "" -msgid "This will help us personalize your onboarding experience." -msgstr "" - msgid "This will redirect you to an external sign in page." msgstr "" @@ -29900,6 +29894,9 @@ msgstr "" msgid "To open Jaeger and easily view tracing from GitLab, link the %{link} page to your server" msgstr "" +msgid "To personalize your GitLab experience, we'd like to know a bit more about you. We won't share this information with anyone." +msgstr "" + msgid "To preserve performance only %{strong_open}%{display_size} of %{real_size}%{strong_close} files are displayed." msgstr "" @@ -32090,10 +32087,10 @@ msgstr "" msgid "Welcome to GitLab" msgstr "" -msgid "Welcome to GitLab%{br_tag}%{name}!" +msgid "Welcome to GitLab, %{first_name}!" msgstr "" -msgid "Welcome to GitLab, %{first_name}!" +msgid "Welcome to GitLab,%{br_tag}%{name}!" msgstr "" msgid "Welcome to the guided GitLab tour" diff --git a/qa/README.md b/qa/README.md index 5070e1ee9bd..f959acbc366 100644 --- a/qa/README.md +++ b/qa/README.md @@ -104,6 +104,15 @@ bundle exec bin/qa Test::Instance::All http://localhost:3000 -- qa/specs/feature Note that the separator `--` is required; all subsequent options will be ignored by the QA framework and passed to `rspec`. +#### Running tests for transient bugs + +A suite of tests have been written to test for [transient bugs](https://about.gitlab.com/handbook/engineering/quality/issue-triage/#transient-bugs). +Those tests are tagged `:transient` and therefore can be run via: + +```shell +bundle exec bin/qa Test::Instance::All http://localhost:3000 -- --tag transient +``` + ### Overriding the authenticated user Unless told otherwise, the QA tests will run as the default `root` user seeded