Skip to content

Commit 1624f4f

Browse files
authored
Add releasing packages documentation (#1689)
Signed-off-by: Bryce Gattis <[email protected]>
1 parent d91cde9 commit 1624f4f

File tree

4 files changed

+34
-3
lines changed

4 files changed

+34
-3
lines changed

docs/README.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
# Build instructions
22

3-
To build the docs you must use Python 3.11.
3+
To build the docs you must install the following requirements:
4+
5+
- GNU Make (Linux + Mac only)
6+
- Python 3.11
47

58
To create a build environment run the following commands:
69
```python
@@ -9,7 +12,7 @@ source .venv/bin/activate
912
pip install -r docs/requirements.txt
1013

1114
cd docs
12-
make html
15+
make html # .\make html on Windows
1316
```
1417

1518
# Example Headers

docs/source/index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ Welcome to rez's documentation!
1515
getting_started
1616
basic_concepts
1717
building_packages
18+
releasing_packages
1819
context
1920
variants
2021
guides/index

docs/source/releasing_packages.rst

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
==================
2+
Releasing packages
3+
==================
4+
5+
Rez packages can be built and deployed to the :data:`release_packages_path`
6+
using the :ref:`rez-release` tool. This tool performs the following actions:
7+
8+
* All :doc:`actions <building_packages>` that the ``rez-build`` tool performs.
9+
* Executes all configured :data:`release_hooks`.
10+
* Executes all configured :gh-rez:`src/rezplugins/release_vcs` plugins.
11+
12+
When to release vs build
13+
============================
14+
Packages *can* be installed to the :data:`release_packages_path` manually
15+
by running :option:`rez-build -i --prefix /path/to/repo <rez-build --prefix>`, so why would you use
16+
``rez-release``?
17+
18+
Well, here are a few benefits of ``rez-release``:
19+
20+
* The package will automatically go to the configured :data:`release_packages_path`, whereas :ref:`rez-build` will go to the :data:`local_packages_path` by default.
21+
* Tests being run by with the :ref:`rez-test` tool can run specifically prior to release, ensuring that releases pass any configured tests first.
22+
* Automatic sanity checks to ensure local repo is ready for release.
23+
* Automatic VCS tagging.
24+
* Many :ref:`helpful package attributes <release-package-attributes>` are automatically added to the released package definition file.
25+
26+
If you're working locally, it these additional steps and checks may slow you
27+
down, so it may be better to stick with :ref:`rez-build`.

src/rez/rezconfig.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -837,7 +837,7 @@
837837
# a plugin listed here is not present, a warning message is printed. Note that a
838838
# release hook plugin being loaded does not mean it will run. It needs to be
839839
# listed here as well. Several built-in release hooks are available, see
840-
# rezplugins/release_hook.
840+
# :gh-rez:`src/rezplugins/release_hook`.
841841
release_hooks = []
842842

843843
# Prompt for release message using an editor. If set to False, there will be

0 commit comments

Comments
 (0)