Skip to content

Commit 630af65

Browse files
Large docs refactor (#11641)
* Large docs refactor This was done on the plane, and hopefully doesn't conflict too much with my other docs PRs. The big work here is: * Combining the Git integration & Automatic git integration pages. They were never properly seperated * Making the Continuous Doc Deployment page ready to be shown * Decent updates to the Versions page * Lots of small updates * A couple small cleanup bits * A couple more small bits * Fix references * Link to ref page on the add project page * Update docs/user/guides/importing-private-repositories.rst Co-authored-by: Sam <[email protected]> * Clarify search results --------- Co-authored-by: Sam <[email protected]>
1 parent e366e7f commit 630af65

20 files changed

+354
-430
lines changed

docs/user/builds.rst

Lines changed: 10 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
Build process overview
22
======================
33

4-
Once a project has been imported and a build is triggered,
4+
Once a project has been added and a build is triggered,
55
Read the Docs executes a set of :term:`pre-defined jobs <pre-defined build jobs>` to build and upload documentation.
66
This page explains in detail what happens behind the scenes,
77
and includes an overview of how you can change this process.
@@ -17,12 +17,11 @@ It also gives you the knowledge to customize the build process.
1717
All the steps are run inside a Docker container, using the image defined in :ref:`config-file/v2:build.os`.
1818
The build has access to all :doc:`pre-defined environment variables </reference/environment-variables>` and :doc:`custom environment variables </environment-variables>`.
1919

20-
2120
The build process includes the following jobs:
2221

2322
:checkout:
2423

25-
Checks out a project's code from the repository URL.
24+
Checks out a project's code from the Git repository.
2625
On |com_brand|,
2726
this environment includes the SSH deploy key that gives access to the repository.
2827

@@ -38,11 +37,11 @@ The build process includes the following jobs:
3837

3938
Creates a Python environment to install all the dependencies in an isolated and reproducible way.
4039
Depending on what's defined by the project,
41-
a virtualenv or a conda environment (:ref:`config-file/v2:conda`) will be used.
40+
a :term:`virtualenv` or a :ref:`conda environment <config-file/v2:conda>` will be used.
4241

4342
:install:
4443

45-
Install :doc:`default and project dependencies </build-default-versions>`.
44+
Installs :doc:`default and project dependencies </build-default-versions>`.
4645
This includes any requirements you have configured in :ref:`config-file/v2:requirements file`.
4746

4847
If the project has extra Python requirements,
@@ -60,10 +59,9 @@ The build process includes the following jobs:
6059
:upload:
6160

6261
Once the build process finishes successfully,
63-
the resulting artifacts are uploaded to our servers.
62+
the resulting artifacts (HTML, PDF, etc.) are uploaded to our servers.
6463
Our :doc:`CDN </reference/cdn>` is then purged so your docs are *always up to date*.
6564

66-
6765
.. seealso::
6866

6967
If you require additional build steps or customization,
@@ -85,8 +83,7 @@ Read the Docs supports three different mechanisms to cancel a running build:
8583

8684
:Manually:
8785

88-
Once a build was triggered,
89-
project administrators can go to the build detail page
86+
Project administrators can go to the build detail page
9087
and click :guilabel:`Cancel build`.
9188

9289
:Automatically:
@@ -100,29 +97,25 @@ Read the Docs supports three different mechanisms to cancel a running build:
10097
to check for your own cancellation condition and then return exit code ``183`` to cancel a build.
10198
You can exit with the code ``0`` to continue running the build.
10299

103-
When this happens, Read the Docs will notify your Git platform (GitHub/GitLab) that the build succeeded (✅),
100+
When this happens, Read the Docs will notify your :doc:`Git provider </reference/git-integration>` the build succeeded (✅),
104101
so the pull request doesn't have any failing checks.
105102

106103
.. tip::
107104

108105
Take a look at :ref:`build-customization:cancel build based on a condition` section for some examples.
109106

110-
111107
Build resources
112108
---------------
113109

114110
Every build has limited resources assigned to it.
115-
Generally, |com_brand| users get double the build resources,
116-
with the option to increase that.
117-
118111
Our build limits are:
119112

120113
.. tabs::
121114

122115
.. tab:: |com_brand|
123116

124117
* 30 minutes build time
125-
* 7GB of memory
118+
* 7GB of memory (upgradable)
126119
* Concurrent builds vary based on your pricing plan
127120

128121
If you are having trouble with your documentation builds,
@@ -134,9 +127,9 @@ Our build limits are:
134127
* 7GB of memory
135128
* 2 concurrent builds
136129

137-
We can increase build limits on a per-project basis.
130+
We can increase build length on a per-project basis.
138131
Send an email to [email protected] providing a good reason why your documentation needs more resources.
139132

140133
If your business is hitting build limits hosting documentation on Read the Docs,
141134
please consider :doc:`Read the Docs for Business </commercial/index>`
142-
which has much higher build resources.
135+
which has options for additional build resources.

docs/user/config-file/index.rst

Lines changed: 12 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,20 @@
11
Configuration file overview
22
===========================
33

4-
As part of the initial set up for your Read the Docs site,
4+
As part of the initial set up of a Read the Docs project,
55
you need to create a **configuration file** called ``.readthedocs.yaml``.
66
The configuration file tells Read the Docs what specific settings to use for your project.
77

88
This tutorial covers:
99

10-
#. Where to put your configuration file.
11-
#. What to put in the configuration file.
12-
#. How to customize the configuration for your project.
13-
14-
.. seealso::
15-
16-
:doc:`/tutorial/index`.
17-
Following the steps in our tutorial will help you setup your first documentation project.
18-
10+
.. contents::
11+
:local:
12+
:depth: 1
1913

2014
Where to put your configuration file
2115
------------------------------------
2216

2317
The ``.readthedocs.yaml`` file should be placed in the top-most directory of your project's repository.
24-
We will get to the contents of the file in the next steps.
25-
2618
When you have changed the configuration file,
2719
you need to commit and push the changes to your Git repository.
2820
Read the Docs will then automatically find and use the configuration to build your project.
@@ -43,7 +35,8 @@ Getting started with a template
4335

4436
Here are some configuration file examples to help you get started.
4537
Pick an example based on the tool that your project is using,
46-
copy its contents to ``.readthedocs.yaml`` and add the file to your Git repository.
38+
copy its contents to ``.readthedocs.yaml``,
39+
and add the file to your Git repository.
4740

4841
.. tabs::
4942

@@ -68,6 +61,8 @@ copy its contents to ``.readthedocs.yaml`` and add the file to your Git reposito
6861
:linenos:
6962
:caption: .readthedocs.yaml
7063

64+
You can find more information about these tools in our :doc:`/intro/doctools`.
65+
7166
Editing the template
7267
--------------------
7368

@@ -88,6 +83,10 @@ Skip: file header and comments
8883

8984
There are some parts of the templates that you can leave in place:
9085

86+
``version`` key
87+
The version key tells the system how to read the rest of the configuration file.
88+
The current and only supported version is **version 2**.
89+
9190
Comments
9291
We added comments that explain the configuration options and optional features.
9392
These lines begin with a ``#``.
@@ -97,11 +96,6 @@ Commented out features
9796
They are there as examples,
9897
which you can choose to enable, delete or save for later.
9998

100-
``version`` key
101-
The version key tells the system how to read the rest of the configuration file.
102-
The current and only supported version is **version 2**.
103-
104-
10599
Adjust: ``build.os``
106100
~~~~~~~~~~~~~~~~~~~~
107101

@@ -118,7 +112,6 @@ or in the future when you need features from a newer Ubuntu.
118112
:ref:`config-file/v2:build.os`
119113
Configuration file reference with all values possible for ``build.os``.
120114

121-
122115
Adjust: Python configuration
123116
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
124117

docs/user/integrations.rst renamed to docs/user/continuous-deployment.rst

Lines changed: 11 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,6 @@
22
33
:orphan:
44

5-
..
6-
Some points we want to cover in this article:
7-
* Talk about the benefits of always up to date docs
8-
* Discuss versioning in here, since it relies directly on Git?
9-
* Have a small diagram that shows (You --push--> GitHub --webhook--> RTD --Build docs--> Deploy
10-
(Perhaps reuse this: https://about.readthedocs.com/images/homepage.png)
11-
125
Continuous Documentation Deployment
136
===================================
147

@@ -19,21 +12,20 @@ The Continuous Integration and Continuous Deployment (CI/CD) features are config
1912
such as GitHub, Bitbucket or GitLab.
2013
With each change committed to your repository, we are notified by the configured *webhook*.
2114

22-
When we receive a *webhook* notification, we match it to a project's *Integration*.
23-
When a webhook is received, the matching project will then:
15+
When we receive a *webhook*, we match it to a project's *Integration*,
16+
and the following steps happen:
2417

2518
* :doc:`Build </builds>` the latest commit.
26-
* Synchronize your versions based on the latest tag and branch data in Git.
19+
* Synchronize your :doc:`versions </versions>` based on the latest tag and branch data in Git.
2720
* Run your :doc:`automation rules</automation-rules>`.
2821
* Auto-cancel any currently running builds of the same version.
2922
* Add a log entry to the integration's :guilabel:`Recent Activity`.
3023

31-
Continuous Documentation for software projects
32-
----------------------------------------------
24+
Documentation as code
25+
---------------------
3326

3427
Documentation fits into any CI/CD pipeline by following a process known as *Documentation as Code (Docs as code)*.
35-
The primary method of doing this is by maintaining documentation alongside the source code,
36-
meaning that the documentation's life cycle is the same as your software project.
28+
This means that the documentation's life cycle is the same as your software project.
3729
By managing these changes in the same life cycle,
3830
you can benefit from **documentation and source code being part of the same code review process**.
3931

@@ -43,24 +35,24 @@ This allows more iteration on documentation,
4335
and increases overall value from the documentation you write.
4436

4537
As part of this quick feedback loop,
46-
You can preview documentation changes immediately using :doc:`pull request previews </pull-requests>`.
38+
you can preview documentation changes immediately using :doc:`pull request previews </pull-requests>`.
4739

4840
Automated versioning
4941
--------------------
5042

51-
With Read the Docs' automated CI/CD pipeline, you will be able to fully align your project's **release cycle** with your documentation.
43+
With Read the Docs you will be able to fully align your project's **release cycle** with your documentation.
5244
For instance, a new version of a software project can build and publish a :doc:`new documentation version </versions>`.
5345

5446
When you release a new version for your project,
5547
you are likely also adding a version tag to your Git repository.
5648
These Git events can be configured to build and publish your documentation automatically with :doc:`/automation-rules`.
57-
If you use a versioning schema, you can configure it as part of the automation process.
49+
If you use a versioning scheme, you can configure it as part of the automation process.
5850

5951
Whether you choose to handle versioning automatically or with manual control is up to you.
6052

6153
Read the Docs will store your version history and make it possible for users to visit archived versions of your documentation.
62-
Your version setup is ultimately captured by the :term:`flyout menu`.
63-
54+
Your version setup is ultimately captured by the :term:`flyout menu`,
55+
and can be integrated in your documentation with :doc:`/addons`.
6456

6557
.. seealso::
6658

docs/user/explanation/index.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
Explanation
66
===========
77

8-
⏩️ :doc:`/integrations`
8+
⏩️ :doc:`/continuous-deployment`
99
A high-level introduction to *Continuous Documentation Deployment*.
1010

1111
⏩️ :doc:`/subprojects`

docs/user/flyout-menu.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ The flyout menu provides access to the following bits of Read the Docs functiona
4848
* A :doc:`version switcher </versions>` that shows users all of the active, unhidden versions they have access to.
4949
* :doc:`Offline formats </downloadable-documentation>` for the current version, including HTML & PDF downloads that are enabled by the project.
5050
* Links to the Read the Docs dashboard for the project.
51-
* Links to your :doc:`VCS provider </integrations>` that allow the user to quickly find the exact file that the documentation was rendered from.
51+
* Links to your :doc:`Git provider </reference/git-integration>` that allow the user to quickly find the exact file that the documentation was rendered from.
5252
* A search bar that gives users access to our :doc:`/server-side-search/index` of the current version.
5353

5454
.. figure:: /_static/images/flyout-open.png

docs/user/glossary.rst

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,8 +59,6 @@ so that you have a reference for how we're using them.
5959

6060
The *maintainer* role does not exist on |com_brand|, which instead provides :doc:`/commercial/organizations`.
6161

62-
Please see :ref:`guides/setup/git-repo-automatic:git provider integrations` for more information.
63-
6462
pinning
6563
To *pin* a requirement means to explicitly specify which version should be used.
6664
*Pinning* software requirements is the most important technique to make a project :term:`reproducible`.
@@ -144,6 +142,9 @@ so that you have a reference for how we're using them.
144142
user-defined build jobs
145143
Commands defined by the user that Read the Docs will execute when performing the build process.
146144

145+
virtualenv
146+
The default way for Python projects to create an isolated environment. This ensures that a :doc:`reproducible set of dependencies </guides/reproducible-builds>` are installed so that you project builds the same way each time.
147+
147148
webhook
148149
A webhook is a special URL that can be called from another service,
149150
usually with a secret token.

docs/user/guides/best-practice/links.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ Good practice ✅
6464
* Establish your understanding of the *latest* and :term:`default version` of your documentation at the beginning. Changing their meaning is very disruptive to incoming links.
6565
* Keep development versions :ref:`hidden <versions:Version states>` so people do not find them on search engines by mistake.
6666
This is the best way to ensure that nobody links to URLs that are intended for development purposes.
67-
* Use a :ref:`version warning <versions:Version warning>` to ensure the reader is aware in case they are reading an old (archived) version.
67+
* Use a :ref:`version warning notifications <versions:Version warning notifications>` to ensure the reader is aware in case they are reading an old (archived) version.
6868

6969
.. tip::
7070

docs/user/guides/build-troubleshooting.rst

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ Permission denied (publickey)
5353
5454
1. Navigate to :guilabel:`Admin > SSH Keys`
5555
2. Copy the contents of the public key.
56-
3. Ensure that the key exists as a deploy key at your VCS provider. Here are direct links to access settings for verifying and changing deploy keys - customize the URLs for your VCS host and repository details:
56+
3. Ensure that the key exists as a deploy key at your Git provider. Here are direct links to access settings for verifying and changing deploy keys - customize the URLs for your Git provider and repository details:
5757

5858
- ``https://github.com/<username>/<repo>/settings/keys``
5959
- ``https://gitlab.com/<username>/<repo>/-/settings/repository``
@@ -72,7 +72,7 @@ ERROR: Repository not found.
7272

7373
1. Navigate to :guilabel:`Admin > SSH Keys`
7474
2. Copy the contents of the public key.
75-
3. Ensure that the key exists as a deploy key at your VCS provider. Here are direct links to access settings for verifying and changing deploy keys - customize the URLs for your VCS host and repository details:
75+
3. Ensure that the key exists as a deploy key at your Git provider. Here are direct links to access settings for verifying and changing deploy keys - customize the URLs for your VCS host and repository details:
7676

7777
- ``https://github.com/<username>/<repo>/settings/keys``
7878
- ``https://gitlab.com/<username>/<repo>/-/settings/repository``

docs/user/guides/connecting-git-account.rst

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@ How to connect your Read the Docs account to your Git provider
22
==============================================================
33

44
In this how to article,
5-
you are shown the steps to connect an account on |git_providers_or| with your Read the Docs account.
5+
we cover how to connect an account on |git_providers_or| with your Read the Docs account.
66
This is relevant if you have signed up for Read the Docs with your email
7-
or if you have signed up using a Git provider account and want to connect additional providers.
7+
or want to connect additional providers.
88

99
If you are going to import repositories from |git_providers_or|,
1010
you should connect your Read the Docs account to your Git provider first.
@@ -15,7 +15,6 @@ you should connect your Read the Docs account to your Git provider first.
1515
you're all done. Your account is connected ✅️.
1616
You only need this how-to if you want to connect additional Git providers.
1717

18-
1918
Adding a connection
2019
-------------------
2120

@@ -47,7 +46,7 @@ Now your connection is ready and you will be able to import and configure Git re
4746

4847
.. seealso::
4948

50-
:doc:`/guides/setup/git-repo-automatic`
49+
:doc:`/reference/git-integration`
5150
Learn how the connected account is used for automatically configuring Git repositories and Read the Docs projects
5251
and which **permissions** that are required from your Git provider.
5352

docs/user/guides/deprecating-content.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ and mark the :guilabel:`Hidden` option. Check :ref:`versions:Version States` for
3939
.. note::
4040

4141
If the versions of your project follow the semver_ convention,
42-
you can activate the :ref:`versions:version warning` option for your project.
42+
you can activate the :ref:`versions:version warning notifications` option for your project.
4343
A banner with a warning and linking to the stable version
4444
will be shown on all versions that are lower than the stable one.
4545

0 commit comments

Comments
 (0)