diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2022-11-17 14:33:21 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2022-11-17 14:33:21 +0300 |
commit | 7021455bd1ed7b125c55eb1b33c5a01f2bc55ee0 (patch) | |
tree | 5bdc2229f5198d516781f8d24eace62fc7e589e9 /doc/development/documentation/index.md | |
parent | 185b095e93520f96e9cfc31d9c3e69b498cdab7c (diff) |
Add latest changes from gitlab-org/gitlab@15-6-stable-eev15.6.0-rc42
Diffstat (limited to 'doc/development/documentation/index.md')
-rw-r--r-- | doc/development/documentation/index.md | 67 |
1 files changed, 20 insertions, 47 deletions
diff --git a/doc/development/documentation/index.md b/doc/development/documentation/index.md index c52b3b5adae..d52db71b633 100644 --- a/doc/development/documentation/index.md +++ b/doc/development/documentation/index.md @@ -145,68 +145,41 @@ pages. You can safely remove the `type` metadata parameter and its values. ### Batch updates for TW metadata -NOTE: -This task is an MVC, and requires significant manual preparation of the output. -While the task can be time consuming, it is still faster than doing the work -entirely manually. +The [`CODEOWNERS`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/.gitlab/CODEOWNERS) +file contains a list of files and the associated technical writers. -It's important to keep the [`CODEOWNERS`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/.gitlab/CODEOWNERS) -file in the `gitlab` project up to date with the current Technical Writing team assignments. -This information is used in merge requests that contain documentation: +When a merge request contains documentation, the information in the `CODEOWNERS` file determines: -- To populate the eligible approvers section. -- By GitLab Bot to ping reviewers for community contributions. +- The list of users in the **Approvers** section. +- The technical writer that the GitLab Bot pings for community contributions. -GitLab cannot automatically associate the stage and group metadata in our documentation -pages with the technical writer assigned to that group, so we use a Rake task to -generate entries for the `CODEOWNERS` file. Declaring code owners for pages reduces -the number of times GitLab Bot pings the entire Technical Writing team. +You can use a Rake task to update the `CODEOWNERS` file. -The `tw:codeowners` Rake task, located in [`lib/tasks/gitlab/tw/codeowners.rake`](https://gitlab.com/gitlab-org/gitlab/blob/master/lib/tasks/gitlab/tw/codeowners.rake), -contains an array of groups and their assigned technical writer. This task: +#### Update the `CODEOWNERS` file -- Outputs a line for each doc with metadata that matches a group in `lib/tasks/gitlab/tw/codeowners.rake`. - Files not matching a group are skipped. -- Adds the full path to the page, and the assigned technical writer. +To update the `CODEOWNERS` file: -To prepare an update to the `CODEOWNERS` file: +1. Open a merge request to update + [the Rake task](https://gitlab.com/gitlab-org/gitlab/blob/master/lib/tasks/gitlab/tw/codeowners.rake) + with the latest [TW team assignments](https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments). +1. Assign the merge request to a backend maintainer for review and merge. +1. After the MR is merged, go to the root of the `gitlab` repository. +1. Run the Rake task and save the output in a file: -1. Update `lib/tasks/gitlab/tw/codeowners.rake` with the latest [TW team assignments](https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments). - Make this update in a standalone merge request, as it runs a long pipeline and - requires backend maintainer review. Make sure this is merged before you update - `CODEOWNERS` in another merge request. -1. Run the task from the root directory of the `gitlab` repository, and save the output in a file: - - ```ruby + ```shell bundle exec rake tw:codeowners > ~/Desktop/updates.md ``` -1. Open the file you just created (`~/Desktop/updates.md` in this example), and prepare the output: - - Find and replace `./` with `/`. - - Sort the lines in alphabetical (ascending) order. If you use VS Code, you can - select everything, press <kbd>F1</kbd>, type `sort`, and select **Sort lines (ascending, case insensitive**. -1. Create a new branch for your `CODEOWNERS` updates. -1. Replace the documentation-related lines in the `^[Documentation Pages]` section - with the output you prepared. +1. Open the file (for example, `~/Desktop/updates.md`) and copy everything + except the errors at the bottom of the file. +1. Open the [`CODEOWNERS`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/.gitlab/CODEOWNERS) + file and paste the lines into the `^[Documentation Pages]` section. WARNING: The documentation section is not the last section of the `CODEOWNERS` file. Don't delete data that isn't ours! -1. Create a commit with the raw changes. -1. From the command line, run `git diff master`. -1. In the diff, look for directory-level assignments to manually restore to the - `CODEOWNERS` file. If all files in a single directory are assigned to the same - technical writer, we simplify these entries. Remove all the lines for the individual - files, and leave a single entry for the directory, for example: `/doc/directory/ @tech.writer`. -1. In the diff, look for changes that don't match your expectations: - - New pages, or newly moved pages, show up as added lines. - - Deleted pages, and pages that are now redirects, show up as deleted lines. - - If you see an unusual number of changes to pages that all seem related, - check the metadata for the pages. A group might have been renamed and the Rake task - must be updated to match. -1. Create another commit with your manual changes, and create a second merge request - with your changes to the `CODEOWNERS` file. Assign it to a technical writing manager for review. +1. Create a merge request and assign it to a technical writing manager for review. ## Move, rename, or delete a page |