diff --git a/doc/_index.md b/doc/_index.md index b4ba90f7e67de5a0eaf0300b3d33acfe4d286bd1..2bcc3384f96366c77c6981fafa3620b59ec006a8 100644 --- a/doc/_index.md +++ b/doc/_index.md @@ -20,11 +20,11 @@ Explore the different areas of the documentation: | | | |:------------------------|:------------------------| -| [**Use GitLab**](user/_index.md)
Get started with GitLab features and functionality. | [**Administer GitLab**](administration/_index.md)
Administer GitLab Self-Managed. | -| [**New to Git and GitLab?**](tutorials/_index.md)
Start learning about Git and GitLab. | [**Contribute to GitLab development**](#contribute-to-gitlab)
Create new GitLab functionality and documentation. | -| [**Coming to GitLab from another platform?**](#coming-to-gitlab-from-another-platform)
Learn how to move to GitLab. | [**Build an integration with GitLab**](#build-an-integration-with-gitlab)
Integrate with Jira and other common applications. | -| [**Choose a subscription**](subscriptions/_index.md)
Determine which subscription tier makes sense for you. | [**Install GitLab**](install/_index.md)
Install GitLab on different platforms. | -| [**Reference architectures**](administration/reference_architectures/_index.md)
View recommended deployments at scale. | [**Upgrade GitLab**](update/_index.md)
Upgrade your GitLab Self-Managed instance to the latest version. | +| [**Use GitLab**](user/_index.md) **Get started with GitLab features and functionality. | [**Administer GitLab**](administration/_index.md)
**Administer GitLab Self-Managed. | +| [**New to Git and GitLab?**](tutorials/_index.md)
**Start learning about Git and GitLab. | [**Contribute to GitLab development**](#contribute-to-gitlab)
**Create new GitLab functionality and documentation. | +| [**Coming to GitLab from another platform?**](#coming-to-gitlab-from-another-platform)
**Learn how to move to GitLab. | [**Build an integration with GitLab**](#build-an-integration-with-gitlab)
**Integrate with Jira and other common applications. | +| [**Choose a subscription**](subscriptions/_index.md)
**Determine which subscription tier makes sense for you. | [**Install GitLab**](install/_index.md)
**Install GitLab on different platforms. | +| [**Reference architectures**](administration/reference_architectures/_index.md)
**View recommended deployments at scale. | [**Upgrade GitLab**](update/_index.md)
Upgrade your GitLab Self-Managed instance to the latest version. | ## Popular topics diff --git a/doc/install/aws/_index.md b/doc/install/aws/_index.md index d893bd66d7a0b5357fac57e9549f61615921b16d..e5a24b4bd79ec70b6e752a389a364c90d887fcd2 100644 --- a/doc/install/aws/_index.md +++ b/doc/install/aws/_index.md @@ -32,7 +32,7 @@ It's highly recommended to use the [GitLab Environment Toolkit (GET)](https://gi Following this guide exactly results in a proof of concept instance that roughly equates to a **scaled down** version of a **two availability zone implementation** of the **Non-HA** [40 RPS or 2,000 User Reference Architecture](../../administration/reference_architectures/2k_users.md). The 2K reference architecture is not HA because it is primarily intended to provide some scaling while keeping costs and complexity low. The [60 RPS or 3,000 User Reference Architecture](../../administration/reference_architectures/3k_users.md) is the smallest size that is GitLab HA. It has additional service roles to achieve HA, most notably it uses Gitaly Cluster to achieve HA for Git repository storage and specifies triple redundancy. -GitLab maintains and tests two main types of Reference Architectures. The **Linux package architectures** are implemented on instance compute while **Cloud Native Hybrid architectures** maximize the use of a Kubernetes cluster. Cloud Native Hybrid reference architecture specifications are addendum sections to the Reference Architecture size pages that start by describing the Linux package architecture. For example, the 60 RPS or 3,000 User Cloud Native Reference Architecture is in the subsection titled [Cloud Native Hybrid reference architecture with Helm Charts (alternative)](../../administration/reference_architectures/3k_users.md#cloud-native-hybrid-reference-architecture-with-helm-charts-alternative) in the 60 RPS or 3,000 User Reference Architecture page. +GitLab maintains and tests two main types of Reference Architectures. The **Linux package architectures** are implemented on instance compute while **Cloud Native Hybrid architectures**maximize the use of a Kubernetes cluster. Cloud Native Hybrid reference architecture specifications are addendum sections to the Reference Architecture size pages that start by describing the Linux package architecture. For example, the 60 RPS or 3,000 User Cloud Native Reference Architecture is in the subsection titled [Cloud Native Hybrid reference architecture with Helm Charts (alternative)](../../administration/reference_architectures/3k_users.md#cloud-native-hybrid-reference-architecture-with-helm-charts-alternative) in the 60 RPS or 3,000 User Reference Architecture page. ### Getting started for production-grade Linux package installations @@ -64,7 +64,7 @@ In addition to having a basic familiarity with [AWS](https://docs.aws.amazon.com - A domain name for the GitLab instance - An SSL/TLS certificate to secure your domain. If you do not already own one, you can provision a free public SSL/TLS certificate through [AWS Certificate Manager](https://aws.amazon.com/certificate-manager/)(ACM) for use with the [Elastic Load Balancer](#load-balancer) we create. -{{< alert type="note" >}} +{{< alert type="note"**> **}} It can take a few hours to validate a certificate provisioned through ACM. To avoid delays later, request your certificate as soon as possible. @@ -80,7 +80,7 @@ The following diagram outlines the recommended architecture. GitLab uses the following AWS services, with links to pricing information: -- **EC2**: GitLab is deployed on shared hardware, for which +-**EC2**: GitLab is deployed on shared hardware, for which [on-demand pricing](https://aws.amazon.com/ec2/pricing/on-demand/) applies. If you want to run GitLab on a dedicated or reserved instance, see the [EC2 pricing page](https://aws.amazon.com/ec2/pricing/) for information about @@ -239,7 +239,7 @@ it receive traffic from any destination. 1. Select **Route Tables** from the left menu and select the `gitlab-public` route to show the options at the bottom. -1. Select the **Routes** tab, select **Edit routes > Add route** and set `0.0.0.0/0` +1. Select the **Routes** tab, select **Edit routes**> **Add route** and set `0.0.0.0/0` as the destination. In the target column, select the **Internet Gateway** and select the `gitlab-gateway` we created previously. Select **Save changes** when done. @@ -357,11 +357,11 @@ We need a security group for our database that allows inbound traffic from the i 1. Under **Subnet group details**, enter a name (we use `gitlab-rds-group`), a description, and choose the `gitlab-vpc` from the VPC dropdown list. 1. From the **Availability Zones** dropdown list, select the Availability Zones that include the subnets you've configured. In our case, we add `eu-west-2a` and `eu-west-2b`. 1. From the **Subnets** dropdown list, select the two private subnets (`10.0.1.0/24` and `10.0.3.0/24`) as we defined them in the [subnets section](#subnets). -1. Select **Create** when ready. +1. Select **Create**when ready. ### Create the database -{{< alert type="warning" >}} +{{< alert type="warning"**> **}} Avoid using burstable instances (t class instances) for the database as this could lead to performance issues due to CPU credits running out during sustained periods of high load. @@ -369,7 +369,7 @@ Avoid using burstable instances (t class instances) for the database as this cou Now, it's time to create the database: -1. Go to the RDS dashboard, select **Databases** from the left menu, and select **Create database**. +1. Go to the RDS dashboard, select**Databases** from the left menu, and select **Create database**. 1. Select **Standard Create** for the database creation method. 1. Select **PostgreSQL** as the database engine and select the minimum PostgreSQL version as defined for your GitLab version in our [database requirements](../requirements.md#postgresql). 1. Because this is a production server, let's choose **Production** from the **Templates** section. @@ -462,7 +462,7 @@ to these instances with SSH for actions that include making configuration change and performing upgrades. One way of doing this is by using a [bastion host](https://en.wikipedia.org/wiki/Bastion_host), sometimes also referred to as a jump box. -{{< alert type="note" >}} +{{< alert type="note"**> **}} If you do not want to maintain bastion hosts, you can set up [AWS Systems Manager Session Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/session-manager.html) for access to instances. This is beyond the scope of this document. @@ -470,7 +470,7 @@ If you do not want to maintain bastion hosts, you can set up [AWS Systems Manage ### Create Bastion Host A -1. Go to the EC2 Dashboard and select **Launch instance**. +1. Go to the EC2 Dashboard and select**Launch instance**. 1. In the **Name and tags** section, set the **Name** to `Bastion Host A`. 1. Select the latest **Ubuntu Server LTS (HVM)** AMI. Check the GitLab documentation for the [latest supported OS version](../../administration/package_information/supported_os.md). 1. Choose an instance type. We use a `t2.micro` as we only use the bastion host to SSH into our other instances. @@ -506,7 +506,7 @@ If you do not want to maintain bastion hosts, you can set up [AWS Systems Manage 1. Create an EC2 instance following the same steps used previously with the following changes: 1. For the **Subnet**, select the second public subnet we created earlier (`gitlab-public-10.0.2.0`). - 1. Under the **Add Tags** section, we set `Key: Name` and `Value: Bastion Host B` so that we can easily identify our two instances. + 1. Under the **Add Tags**section, we set `Key: Name` and `Value: Bastion Host B` so that we can easily identify our two instances. 1. For the security group, select the existing `bastion-sec-group` we previously created. ### Use SSH Agent Forwarding @@ -518,8 +518,7 @@ Storing private key files on your bastion host is a bad idea. To get around this For example, the command-line `ssh` client uses agent forwarding with its `-A` switch, like this: ```shell -ssh -A user@ -``` +ssh -A user@ **``` See [Securely Connect to Linux Instances Running in a Private Amazon VPC](https://aws.amazon.com/blogs/security/securely-connect-to-linux-instances-running-in-a-private-amazon-vpc/) for a step-by-step guide on how to use SSH agent forwarding for other clients. @@ -531,7 +530,7 @@ We need a preconfigured, custom GitLab AMI to use in our launch configuration la From the EC2 dashboard: -1. Use the following section titled "[Find official GitLab-created AMI IDs on AWS](#find-official-gitlab-created-ami-ids-on-aws)" to find the correct AMI and select **Launch**. +1. Use the following section titled "[Find official GitLab-created AMI IDs on AWS](#find-official-gitlab-created-ami-ids-on-aws)" to find the correct AMI and select**Launch**. 1. In the **Name and tags** section, set the **Name** to `GitLab`. 1. In the **Instance type** dropdown list, select an instance type based on your workload. Consult the [hardware requirements](../requirements.md) to choose one that fits your needs (at least `c5.2xlarge`, which is sufficient to accommodate 100 users). 1. In the **Key pair** section, select **Create new key pair**. @@ -568,12 +567,12 @@ Because we're adding our SSL certificate at the load balancer, we do not need th From your GitLab instance, connect to the RDS instance to verify access and to install the required `pg_trgm` and `btree_gist` extensions. -To find the host or endpoint, go to **Amazon RDS > Databases** and select the database you created earlier. Look for the endpoint under the **Connectivity & security** tab. +To find the host or endpoint, go to **Amazon RDS**> **Databases** and select the database you created earlier. Look for the endpoint under the **Connectivity & security**tab. Do not to include the colon and port number: ```shell -sudo /opt/gitlab/embedded/bin/psql -U gitlab -h -d gitlabhq_production +sudo /opt/gitlab/embedded/bin/psql -U gitlab -h **-d gitlabhq_production ``` At the `psql` prompt create the extension and then quit the session: @@ -650,7 +649,7 @@ It should be enabled and configured on a separate EC2 instance in one of the Let's create an EC2 instance where we install Gitaly: -1. From the EC2 dashboard, select **Launch instance**. +1. From the EC2 dashboard, select**Launch instance**. 1. In the **Name and tags** section, set the **Name** to `Gitaly`. 1. Choose an AMI. In this example, we select the latest **Ubuntu Server LTS (HVM), SSD Volume Type**. Check the GitLab documentation for the [latest supported OS version](../../administration/package_information/supported_os.md). 1. Choose an instance type. We pick a `m5.xlarge`. diff --git a/doc/install/azure/_index.md b/doc/install/azure/_index.md index 35328eb0070640025307eddee754a3587540d9a1..6907e9400b7d8d29cc681acaea975b72e9de3c0f 100644 --- a/doc/install/azure/_index.md +++ b/doc/install/azure/_index.md @@ -44,7 +44,7 @@ create a new VM: For the sake of this guide, let's create the VM from scratch, so select **Create**. -{{< alert type="note" >}} +{{< alert type="note"**> **}} Be aware that Azure incurs compute charges whenever your VM is active (known as "allocated"), even if you're using free trial @@ -66,7 +66,7 @@ The first items you need to configure are the basic settings of the underlying v doesn't exist). 1. Enter a name for the VM, for example `GitLab`. 1. Select a region. -1. In **Availability options**, select **Availability zone** and set it to `1`. +1. In**Availability options**, select **Availability zone** and set it to `1`. Read more about the [availability zones](https://learn.microsoft.com/en-us/azure/virtual-machines/availability). 1. Ensure the selected image is set to **GitLab - Gen1**. 1. Select the VM size based on the [hardware requirements](../requirements.md). @@ -176,7 +176,7 @@ redirect you to the public IP. To set up the GitLab external URL: -1. Connect to GitLab through SSH by going to **Settings > Connect** from the VM +1. Connect to GitLab through SSH by going to **Settings**> **Connect** from the VM dashboard, and follow the instructions. Remember to sign in with the username and SSH key you specified when you [created the VM](#configure-the-basics-tab). The Azure VM domain name is the one you @@ -258,11 +258,11 @@ in this section whenever you need to update GitLab. To determine the version of GitLab you're currently running: 1. On the left sidebar, at the bottom, select **Admin**. -1. Select **Overview > Dashboard**. +1. Select **Overview**> **Dashboard**. 1. Find the version under the **Components** table. If there's a newer available version of GitLab that contains one or more -security fixes, GitLab displays an **Update asap** notification message that +security fixes, GitLab displays an **Update asap**notification message that encourages you to [update](#update-gitlab). ### Update GitLab @@ -281,7 +281,7 @@ To update GitLab to the latest version: and can take time to complete. During this time, the terminal shows various update tasks being completed in your terminal. - {{< alert type="note" >}} + {{< alert type="note"**> **}} If you get an error like `E: The repository 'https://packages.gitlab.com/gitlab/gitlab-ee/debian buster InRelease' is not signed.`, @@ -300,7 +300,7 @@ To update GitLab to the latest version: before anything else. ``` -Refresh your GitLab instance in the browser and go to the **Admin** area. You should now have an +Refresh your GitLab instance in the browser and go to the**Admin** area. You should now have an up-to-date GitLab instance. ## Next steps and further configuration diff --git a/doc/install/install_ai_gateway.md b/doc/install/install_ai_gateway.md index 9e587f640a871f8f63dbdeffdfd5536f3f3c147b..c6d558e8b9e7663e5c6ab287b2f1bee1fbb67340 100644 --- a/doc/install/install_ai_gateway.md +++ b/doc/install/install_ai_gateway.md @@ -371,7 +371,7 @@ If access issues persist, check that authentication is correctly configured, and In case of persistent issues, the error message may suggest bypassing authentication with `AIGW_AUTH__BYPASS_EXTERNAL=true`, but only do this for troubleshooting. -You can also run a [health check](../user/gitlab_duo/setup.md#run-a-health-check-for-gitlab-duo) by going to **Admin > GitLab Duo**. +You can also run a [health check](../user/gitlab_duo/setup.md#run-a-health-check-for-gitlab-duo) by going to **Admin**> **GitLab Duo**. These tests are performed for offline environments: diff --git a/doc/install/package/almalinux.md b/doc/install/package/almalinux.md index ac5ddbcb8345aaaee45f9efe707fabda394c420e..71141ed9f42443b61dbf4e2760e5a513a25da454 100644 --- a/doc/install/package/almalinux.md +++ b/doc/install/package/almalinux.md @@ -120,7 +120,7 @@ the package is installed. You can customize your GitLab installation by setting the following optional environment variables. **These variables only work during the first -installation** and have no effect on subsequent reconfigure runs. For existing +installation**and have no effect on subsequent reconfigure runs. For existing installations, use the password from `/etc/gitlab/initial_root_password` or [reset the root password](../../security/reset_user_password.md). @@ -130,7 +130,7 @@ installations, use the password from `/etc/gitlab/initial_root_password` or | `GITLAB_ROOT_EMAIL` | Custom email for the root administrator account | Optional | `GITLAB_ROOT_EMAIL="admin@example.com"` | | `GITLAB_ROOT_PASSWORD` | Custom password (8 characters minimum) for the root administrator account | Optional | `GITLAB_ROOT_PASSWORD="strongpassword"` | -{{< alert type="note" >}} +{{< alert type="note"**> **}} If GitLab can't detect a valid hostname during installation, reconfigure won't run automatically. In this case, pass any needed environment variables to your first `gitlab-ctl reconfigure` command. {{< /alert >}} @@ -140,25 +140,19 @@ Choose your GitLab edition and customize with the environment variables above: {{< tabs >}} -{{< tab title="Enterprise Edition" >}} - -**Basic installation:** +{{< tab title="Enterprise Edition" >}}**Basic installation:** ```shell sudo EXTERNAL_URL="https://gitlab.example.com" dnf install gitlab-ee ``` -**With custom root credentials:** - -```shell +**With custom root credentials:**```shell sudo GITLAB_ROOT_EMAIL="admin@example.com" GITLAB_ROOT_PASSWORD="strongpassword" EXTERNAL_URL="https://gitlab.example.com" dnf install gitlab-ee ``` -{{< /tab >}} - -{{< tab title="Community Edition" >}} +{{< /tab**> **}} -**Basic installation:** +{{< tab title="Community Edition" >}}**Basic installation:** ```shell sudo EXTERNAL_URL="https://gitlab.example.com" dnf install gitlab-ce diff --git a/doc/install/package/amazonlinux_2.md b/doc/install/package/amazonlinux_2.md index b7ef9b3b51fe3fd43e4b55a7e9f4709c0513cce5..32fb52da4e016957fe06c6187b7bce33ef71c3c7 100644 --- a/doc/install/package/amazonlinux_2.md +++ b/doc/install/package/amazonlinux_2.md @@ -114,7 +114,7 @@ the package is installed. You can customize your GitLab installation by setting the following optional environment variables. **These variables only work during the first -installation** and have no effect on subsequent reconfigure runs. For existing +installation**and have no effect on subsequent reconfigure runs. For existing installations, use the password from `/etc/gitlab/initial_root_password` or [reset the root password](../../security/reset_user_password.md). @@ -124,7 +124,7 @@ installations, use the password from `/etc/gitlab/initial_root_password` or | `GITLAB_ROOT_EMAIL` | Custom email for the root administrator account | Optional | `GITLAB_ROOT_EMAIL="admin@example.com"` | | `GITLAB_ROOT_PASSWORD` | Custom password (8 characters minimum) for the root administrator account | Optional | `GITLAB_ROOT_PASSWORD="strongpassword"` | -{{< alert type="note" >}} +{{< alert type="note"**> **}} If GitLab can't detect a valid hostname during installation, reconfigure won't run automatically. In this case, pass any needed environment variables to your first `gitlab-ctl reconfigure` command. {{< /alert >}} @@ -134,25 +134,19 @@ Choose your GitLab edition and customize with the environment variables above: {{< tabs >}} -{{< tab title="Enterprise Edition" >}} - -**Basic installation:** +{{< tab title="Enterprise Edition" >}}**Basic installation:** ```shell sudo EXTERNAL_URL="https://gitlab.example.com" yum install gitlab-ee ``` -**With custom root credentials:** - -```shell +**With custom root credentials:**```shell sudo GITLAB_ROOT_EMAIL="admin@example.com" GITLAB_ROOT_PASSWORD="strongpassword" EXTERNAL_URL="https://gitlab.example.com" yum install gitlab-ee ``` -{{< /tab >}} - -{{< tab title="Community Edition" >}} +{{< /tab**> **}} -**Basic installation:** +{{< tab title="Community Edition" >}}**Basic installation:** ```shell sudo EXTERNAL_URL="https://gitlab.example.com" yum install gitlab-ce diff --git a/doc/install/package/amazonlinux_2023.md b/doc/install/package/amazonlinux_2023.md index 61308cb0318d32c7969304642ac10e50e1ccc60b..59dcdb2a47df18d867aeebb3b676f1320cde42e8 100644 --- a/doc/install/package/amazonlinux_2023.md +++ b/doc/install/package/amazonlinux_2023.md @@ -114,7 +114,7 @@ the package is installed. You can customize your GitLab installation by setting the following optional environment variables. **These variables only work during the first -installation** and have no effect on subsequent reconfigure runs. For existing +installation**and have no effect on subsequent reconfigure runs. For existing installations, use the password from `/etc/gitlab/initial_root_password` or [reset the root password](../../security/reset_user_password.md). @@ -124,7 +124,7 @@ installations, use the password from `/etc/gitlab/initial_root_password` or | `GITLAB_ROOT_EMAIL` | Custom email for the root administrator account | Optional | `GITLAB_ROOT_EMAIL="admin@example.com"` | | `GITLAB_ROOT_PASSWORD` | Custom password (8 characters minimum) for the root administrator account | Optional | `GITLAB_ROOT_PASSWORD="strongpassword"` | -{{< alert type="note" >}} +{{< alert type="note"**> **}} If GitLab can't detect a valid hostname during installation, reconfigure won't run automatically. In this case, pass any needed environment variables to your first `gitlab-ctl reconfigure` command. {{< /alert >}} @@ -134,25 +134,19 @@ Choose your GitLab edition and customize with the environment variables above: {{< tabs >}} -{{< tab title="Enterprise Edition" >}} - -**Basic installation:** +{{< tab title="Enterprise Edition" >}}**Basic installation:** ```shell sudo EXTERNAL_URL="https://gitlab.example.com" dnf install gitlab-ee ``` -**With custom root credentials:** - -```shell +**With custom root credentials:**```shell sudo GITLAB_ROOT_EMAIL="admin@example.com" GITLAB_ROOT_PASSWORD="strongpassword" EXTERNAL_URL="https://gitlab.example.com" dnf install gitlab-ee ``` -{{< /tab >}} - -{{< tab title="Community Edition" >}} +{{< /tab**> **}} -**Basic installation:** +{{< tab title="Community Edition" >}}**Basic installation:** ```shell sudo EXTERNAL_URL="https://gitlab.example.com" dnf install gitlab-ce diff --git a/doc/install/package/debian.md b/doc/install/package/debian.md index 3d9b9a24a76ceeada7ffedecd950083914c834cc..a36f4b8c9bf0764117fe98a00f87d1a47d992fe4 100644 --- a/doc/install/package/debian.md +++ b/doc/install/package/debian.md @@ -115,7 +115,7 @@ the package is installed. You can customize your GitLab installation by setting the following optional environment variables. **These variables only work during the first -installation** and have no effect on subsequent reconfigure runs. For existing +installation**and have no effect on subsequent reconfigure runs. For existing installations, use the password from `/etc/gitlab/initial_root_password` or [reset the root password](../../security/reset_user_password.md). @@ -125,7 +125,7 @@ installations, use the password from `/etc/gitlab/initial_root_password` or | `GITLAB_ROOT_EMAIL` | Custom email for the root administrator account | Optional | `GITLAB_ROOT_EMAIL="admin@example.com"` | | `GITLAB_ROOT_PASSWORD` | Custom password (8 characters minimum) for the root administrator account | Optional | `GITLAB_ROOT_PASSWORD="strongpassword"` | -{{< alert type="note" >}} +{{< alert type="note"**> **}} If GitLab can't detect a valid hostname during installation, reconfigure won't run automatically. In this case, pass any needed environment variables to your first `gitlab-ctl reconfigure` command. {{< /alert >}} @@ -135,25 +135,19 @@ Choose your GitLab edition and customize with the environment variables above: {{< tabs >}} -{{< tab title="Enterprise Edition" >}} - -**Basic installation:** +{{< tab title="Enterprise Edition" >}}**Basic installation:** ```shell sudo EXTERNAL_URL="https://gitlab.example.com" apt install gitlab-ee ``` -**With custom root credentials:** - -```shell +**With custom root credentials:**```shell sudo GITLAB_ROOT_EMAIL="admin@example.com" GITLAB_ROOT_PASSWORD="strongpassword" EXTERNAL_URL="https://gitlab.example.com" apt install gitlab-ee ``` -{{< /tab >}} - -{{< tab title="Community Edition" >}} +{{< /tab**> **}} -**Basic installation:** +{{< tab title="Community Edition" >}}**Basic installation:** ```shell sudo EXTERNAL_URL="https://gitlab.example.com" apt install gitlab-ce diff --git a/doc/install/package/suse.md b/doc/install/package/suse.md index f7fdc5937946002a577ff34d33071982919787ab..6ad5389a71795ff9cfa760221dd096594641d940 100644 --- a/doc/install/package/suse.md +++ b/doc/install/package/suse.md @@ -116,7 +116,7 @@ the package is installed. You can customize your GitLab installation by setting the following optional environment variables. **These variables only work during the first -installation** and have no effect on subsequent reconfigure runs. For existing +installation**and have no effect on subsequent reconfigure runs. For existing installations, use the password from `/etc/gitlab/initial_root_password` or [reset the root password](../../security/reset_user_password.md). @@ -126,7 +126,7 @@ installations, use the password from `/etc/gitlab/initial_root_password` or | `GITLAB_ROOT_EMAIL` | Custom email for the root administrator account | Optional | `GITLAB_ROOT_EMAIL="admin@example.com"` | | `GITLAB_ROOT_PASSWORD` | Custom password (8 characters minimum) for the root administrator account | Optional | `GITLAB_ROOT_PASSWORD="strongpassword"` | -{{< alert type="note" >}} +{{< alert type="note"**> **}} If GitLab can't detect a valid hostname during installation, reconfigure won't run automatically. In this case, pass any needed environment variables to your first `gitlab-ctl reconfigure` command. {{< /alert >}} @@ -136,25 +136,19 @@ Choose your GitLab edition and customize with the environment variables above: {{< tabs >}} -{{< tab title="Enterprise Edition" >}} - -**Basic installation:** +{{< tab title="Enterprise Edition" >}}**Basic installation:** ```shell sudo EXTERNAL_URL="https://gitlab.example.com" zypper install gitlab-ee ``` -**With custom root credentials:** - -```shell +**With custom root credentials:**```shell sudo GITLAB_ROOT_EMAIL="admin@example.com" GITLAB_ROOT_PASSWORD="strongpassword" EXTERNAL_URL="https://gitlab.example.com" zypper install gitlab-ee ``` -{{< /tab >}} - -{{< tab title="Community Edition" >}} +{{< /tab**> **}} -**Basic installation:** +{{< tab title="Community Edition" >}}**Basic installation:** ```shell sudo EXTERNAL_URL="https://gitlab.example.com" zypper install gitlab-ce diff --git a/doc/install/package/ubuntu.md b/doc/install/package/ubuntu.md index c4973b918710d50c140399c79979e1b9f4ac524c..62c0aed93d49463443ae08a30157f41c5fc27d4e 100644 --- a/doc/install/package/ubuntu.md +++ b/doc/install/package/ubuntu.md @@ -116,7 +116,7 @@ the package is installed. You can customize your GitLab installation by setting the following optional environment variables. **These variables only work during the first -installation** and have no effect on subsequent reconfigure runs. For existing +installation**and have no effect on subsequent reconfigure runs. For existing installations, use the password from `/etc/gitlab/initial_root_password` or [reset the root password](../../security/reset_user_password.md). @@ -126,7 +126,7 @@ installations, use the password from `/etc/gitlab/initial_root_password` or | `GITLAB_ROOT_EMAIL` | Custom email for the root administrator account | Optional | `GITLAB_ROOT_EMAIL="admin@example.com"` | | `GITLAB_ROOT_PASSWORD` | Custom password (8 characters minimum) for the root administrator account | Optional | `GITLAB_ROOT_PASSWORD="strongpassword"` | -{{< alert type="note" >}} +{{< alert type="note"**> **}} If GitLab can't detect a valid hostname during installation, reconfigure won't run automatically. In this case, pass any needed environment variables to your first `gitlab-ctl reconfigure` command. {{< /alert >}} @@ -136,25 +136,19 @@ Choose your GitLab edition and customize with the environment variables above: {{< tabs >}} -{{< tab title="Enterprise Edition" >}} - -**Basic installation:** +{{< tab title="Enterprise Edition" >}}**Basic installation:** ```shell sudo EXTERNAL_URL="https://gitlab.example.com" apt install gitlab-ee ``` -**With custom root credentials:** - -```shell +**With custom root credentials:**```shell sudo GITLAB_ROOT_EMAIL="admin@example.com" GITLAB_ROOT_PASSWORD="strongpassword" EXTERNAL_URL="https://gitlab.example.com" apt install gitlab-ee ``` -{{< /tab >}} - -{{< tab title="Community Edition" >}} +{{< /tab**> **}} -**Basic installation:** +{{< tab title="Community Edition" >}}**Basic installation:** ```shell sudo EXTERNAL_URL="https://gitlab.example.com" apt install gitlab-ce diff --git a/doc/update.py b/doc/update.py new file mode 100644 index 0000000000000000000000000000000000000000..15a73a86637c9c8a242271c0eab8653ef7f8815a --- /dev/null +++ b/doc/update.py @@ -0,0 +1,219 @@ +#!/usr/bin/env python3 +""" +GitLab Markdown Bold Formatter +Fixes bold formatting around the '>' character in GitLab documentation. +Moves '>' outside of bold formatting to comply with style guidelines. +""" + +import os +import re +import glob +from pathlib import Path +from typing import List, Tuple, Dict + +def find_markdown_files(root_dir: str) -> List[str]: + """Find all markdown files in the directory and subdirectories.""" + pattern = os.path.join(root_dir, '**', '*.md') + return glob.glob(pattern, recursive=True) + +def fix_bold_formatting(content: str) -> Tuple[str, int]: + """ + Fix bold formatting around '>' character. + + Patterns to fix: + - **text > text** -> **text** > **text** + - **text >** -> **text** > + - **> text** -> > **text** + + Returns: (fixed_content, number_of_changes) + """ + changes = 0 + + # Pattern 1: **text > text** -> **text** > **text** + # This handles cases like **Overview > Users** + pattern1 = r'\*\*([^*]+?)\s*>\s*([^*]+?)\*\*' + def replace1(match): + nonlocal changes + changes += 1 + left_part = match.group(1).strip() + right_part = match.group(2).strip() + return f'**{left_part}** > **{right_part}**' + + content = re.sub(pattern1, replace1, content) + + # Pattern 2: **text >** -> **text** > + # This handles cases where > is at the end of bold text + pattern2 = r'\*\*([^*]+?)\s*>\s*\*\*' + def replace2(match): + nonlocal changes + changes += 1 + text = match.group(1).strip() + return f'**{text}** >' + + content = re.sub(pattern2, replace2, content) + + # Pattern 3: **> text** -> > **text** + # This handles cases where > is at the beginning of bold text + pattern3 = r'\*\*\s*>\s*([^*]+?)\*\*' + def replace3(match): + nonlocal changes + changes += 1 + text = match.group(1).strip() + return f'> **{text}**' + + content = re.sub(pattern3, replace3, content) + + return content, changes + +def process_file(filepath: str) -> Dict[str, any]: + """Process a single markdown file.""" + try: + with open(filepath, 'r', encoding='utf-8') as f: + original_content = f.read() + + fixed_content, changes = fix_bold_formatting(original_content) + + if changes > 0: + # Write fixed content + with open(filepath, 'w', encoding='utf-8') as f: + f.write(fixed_content) + + return { + 'filepath': filepath, + 'changes': changes, + 'status': 'modified' + } + else: + return { + 'filepath': filepath, + 'changes': 0, + 'status': 'no_changes' + } + + except Exception as e: + return { + 'filepath': filepath, + 'changes': 0, + 'status': 'error', + 'error': str(e) + } + +def process_batch(files: List[str], batch_num: int) -> Dict[str, any]: + """Process a batch of files.""" + print(f"\nProcessing batch {batch_num} ({len(files)} files)...") + + results = { + 'batch_num': batch_num, + 'files_processed': 0, + 'files_modified': 0, + 'total_changes': 0, + 'errors': [], + 'modified_files': [] + } + + for filepath in files: + result = process_file(filepath) + results['files_processed'] += 1 + + if result['status'] == 'modified': + results['files_modified'] += 1 + results['total_changes'] += result['changes'] + results['modified_files'].append({ + 'file': result['filepath'], + 'changes': result['changes'] + }) + print(f" ✓ {result['filepath']} ({result['changes']} changes)") + + elif result['status'] == 'error': + results['errors'].append({ + 'file': result['filepath'], + 'error': result['error'] + }) + print(f" ✗ {result['filepath']} (ERROR: {result['error']})") + + else: + print(f" - {result['filepath']} (no changes needed)") + + return results + +def main(): + # Configuration + ROOT_DIR = "/Users/sselhorn/dev/gitlab/gitlab/doc" + BATCH_SIZE = 50 + + print("GitLab Markdown Bold Formatter") + print("=" * 40) + print(f"Root directory: {ROOT_DIR}") + print(f"Batch size: {BATCH_SIZE}") + + # Verify directory exists + if not os.path.exists(ROOT_DIR): + print(f"Error: Directory {ROOT_DIR} does not exist!") + return + + # Find all markdown files + print("\nFinding markdown files...") + markdown_files = find_markdown_files(ROOT_DIR) + + if not markdown_files: + print("No markdown files found!") + return + + print(f"Found {len(markdown_files)} markdown files") + + # Process confirmation + response = input(f"\nDo you want to process these files? (y/N): ") + if response.lower() != 'y': + print("Operation cancelled.") + return + + # Process files in batches + all_results = [] + total_files = len(markdown_files) + + for i in range(0, total_files, BATCH_SIZE): + batch = markdown_files[i:i + BATCH_SIZE] + batch_num = (i // BATCH_SIZE) + 1 + + result = process_batch(batch, batch_num) + all_results.append(result) + + # Show batch summary + print(f"Batch {batch_num} complete: {result['files_modified']}/{result['files_processed']} files modified, {result['total_changes']} total changes") + + # Ask to continue if there are more batches + if i + BATCH_SIZE < total_files: + response = input(f"\nContinue with next batch? (Y/n): ") + if response.lower() == 'n': + print("Processing stopped by user.") + break + + # Final summary + print("\n" + "=" * 40) + print("FINAL SUMMARY") + print("=" * 40) + + total_processed = sum(r['files_processed'] for r in all_results) + total_modified = sum(r['files_modified'] for r in all_results) + total_changes = sum(r['total_changes'] for r in all_results) + total_errors = sum(len(r['errors']) for r in all_results) + + print(f"Files processed: {total_processed}") + print(f"Files modified: {total_modified}") + print(f"Total changes: {total_changes}") + print(f"Errors: {total_errors}") + + if total_modified > 0: + print(f"\nModified files:") + for result in all_results: + for mod_file in result['modified_files']: + print(f" {mod_file['file']} ({mod_file['changes']} changes)") + + if total_errors > 0: + print(f"\nErrors occurred:") + for result in all_results: + for error in result['errors']: + print(f" {error['file']}: {error['error']}") + +if __name__ == "__main__": + main() \ No newline at end of file diff --git a/doc/update/background_migrations.md b/doc/update/background_migrations.md index ed67d4ba8da0e3778638887bc95d086c2266db7a..a05279c6b18c24e8a8f97b34bad222db8aecb338 100644 --- a/doc/update/background_migrations.md +++ b/doc/update/background_migrations.md @@ -81,9 +81,9 @@ Prerequisites: To check the status of batched background migrations: 1. On the left sidebar, at the bottom, select **Admin**. -1. Select **Monitoring > Background migrations**. +1. Select **Monitoring**> **Background migrations**. 1. Select **Queued** or **Finalizing** to see incomplete migrations, - and **Failed** for failed migrations. + and **Failed**for failed migrations. ##### From the database @@ -108,7 +108,7 @@ To query the database directly for the status of batched background migrations: WHERE status NOT IN(3, 6); ``` -Alternatively, you can wrap the query with `gitlab-psql -c ""` to check the status of +Alternatively, you can wrap the query with `gitlab-psql -c " **"` to check the status of batched background migrations: ```shell @@ -243,7 +243,7 @@ If the migration continues to fail with an error, either: All failed batched background migrations must be resolved to upgrade to a newer version of GitLab. If you [check the status](#check-the-status-of-batched-background-migrations) -of batched background migrations, some migrations might display in the **Failed** tab +of batched background migrations, some migrations might display in the**Failed** tab with a **failed** status: ![A failed batched background migrations table.](img/batched_background_migrations_failed_v14_3.png) @@ -257,7 +257,7 @@ Prerequisites: - You must have administrator access to the instance. 1. On the left sidebar, at the bottom, select **Admin**. -1. Select **Monitoring > Background migrations**. +1. Select **Monitoring**> **Background migrations**. 1. Select the **Failed** tab. This displays a list of failed batched background migrations. 1. Select the failed **Migration** to see the migration parameters and the jobs that failed. 1. Under **Failed jobs**, select each **ID** to see why the job failed. @@ -272,7 +272,7 @@ Prerequisites: - You must have administrator access to the instance. 1. On the left sidebar, at the bottom, select **Admin**. -1. Select **Monitoring > Background migrations**. +1. Select **Monitoring**> **Background migrations**. 1. Select the **Failed** tab. This displays a list of failed batched background migrations. 1. Select a failed batched background migration to retry by clicking on the retry button ({{< icon name="retry" >}}). diff --git a/doc/update/deprecations.md b/doc/update/deprecations.md index c7fa82e7f2f52f935f9e28cda447e04541879099..a3607499bbd68fed7d487895a17a0f4589527f33 100644 --- a/doc/update/deprecations.md +++ b/doc/update/deprecations.md @@ -22,9 +22,7 @@ For advanced searching and filtering of this deprecation information, try {{< icon name="rss" >}} **To be notified of upcoming breaking changes**, add this URL to your RSS feed reader: `https://about.gitlab.com/breaking-changes.xml` - - -