diff options
| author | Antonin Godard <antonin.godard@bootlin.com> | 2025-04-09 11:55:41 +0200 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2025-04-21 21:15:29 +0100 |
| commit | 76f887eb12baee0c2e6554e131fe4f1e0854d84e (patch) | |
| tree | 5f2cbdf65deb678e677e95d689f6da859ad1230d | |
| parent | 5224bce89d4eb34aae44fda4f59438890f6dac67 (diff) | |
| download | poky-76f887eb12baee0c2e6554e131fe4f1e0854d84e.tar.gz | |
poky.yaml: introduce DISTRO_LATEST_TAG
Introduce the DISTRO_LATEST_TAG macro, which should always point to the
latest existing tag in the documentation, unlike DISTRO which may point
to A.B.999 to represent the tip of a branch.
This variable is needed to fix dead links in the documentation that
currently use the DISTRO macro.
Also, make DISTRO_REL_TAG use the DISTRO macro directly, to avoid
repetition, and add a DISTRO_REL_LATEST_TAG macro that has the same role
as DISTRO_LATEST_TAG but with "yocto-" prepended to it.
In set_versions.py, run the "git describe --abbrev=0 --tags
--match='yocto-*'" command to get the latest existing tag on the
currently checked out commit. Fallback to ourversion in case we didn't
find any.
(From yocto-docs rev: a85b0e500c94921f77fa7b7dbb877e4945f96d1e)
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | documentation/poky.yaml.in | 11 | ||||
| -rwxr-xr-x | documentation/set_versions.py | 16 |
2 files changed, 25 insertions, 2 deletions
diff --git a/documentation/poky.yaml.in b/documentation/poky.yaml.in index 836f114543..26c21e346f 100644 --- a/documentation/poky.yaml.in +++ b/documentation/poky.yaml.in | |||
| @@ -2,13 +2,22 @@ | |||
| 2 | # Macros used in the documentation | 2 | # Macros used in the documentation |
| 3 | # | 3 | # |
| 4 | 4 | ||
| 5 | # The DISTRO variable represents the current docs version. It should be used | ||
| 6 | # when referring to the current docs version. See also DISTRO_LATEST_TAG. | ||
| 5 | DISTRO : "5.1" | 7 | DISTRO : "5.1" |
| 8 | # The DISTRO_LATEST_TAG represents the latest tag on the current branch. It | ||
| 9 | # should be used in HTTP link referring to the current docs version. In these | ||
| 10 | # cases, the DISTRO may point to A.B.999 which does not exist (just used to | ||
| 11 | # represent the latest HEAD revision on the branch). DISTRO_LATEST_TAG should | ||
| 12 | # always point to an existing tag. | ||
| 13 | DISTRO_LATEST_TAG : "5.1" | ||
| 6 | DISTRO_NAME_NO_CAP : "styhead" | 14 | DISTRO_NAME_NO_CAP : "styhead" |
| 7 | DISTRO_NAME : "Styhead" | 15 | DISTRO_NAME : "Styhead" |
| 8 | DISTRO_NAME_NO_CAP_MINUS_ONE : "scarthgap" | 16 | DISTRO_NAME_NO_CAP_MINUS_ONE : "scarthgap" |
| 9 | DISTRO_NAME_NO_CAP_LTS : "scarthgap" | 17 | DISTRO_NAME_NO_CAP_LTS : "scarthgap" |
| 10 | YOCTO_DOC_VERSION : "5.1" | 18 | YOCTO_DOC_VERSION : "5.1" |
| 11 | DISTRO_REL_TAG : "yocto-5.1" | 19 | DISTRO_REL_TAG : "yocto-$DISTRO;" |
| 20 | DISTRO_REL_LATEST_TAG : "yocto-&DISTRO_LATEST_TAG;" | ||
| 12 | DOCCONF_VERSION : "dev" | 21 | DOCCONF_VERSION : "dev" |
| 13 | BITBAKE_SERIES : "" | 22 | BITBAKE_SERIES : "" |
| 14 | YOCTO_DL_URL : "https://downloads.yoctoproject.org" | 23 | YOCTO_DL_URL : "https://downloads.yoctoproject.org" |
diff --git a/documentation/set_versions.py b/documentation/set_versions.py index 5c55f470d7..b94a7daad0 100755 --- a/documentation/set_versions.py +++ b/documentation/set_versions.py | |||
| @@ -170,17 +170,29 @@ series = [k for k in release_series] | |||
| 170 | previousseries = series[series.index(ourseries)+1:] or [""] | 170 | previousseries = series[series.index(ourseries)+1:] or [""] |
| 171 | lastlts = [k for k in previousseries if k in ltsseries] or "dunfell" | 171 | lastlts = [k for k in previousseries if k in ltsseries] or "dunfell" |
| 172 | 172 | ||
| 173 | latestreltag = subprocess.run(["git", "describe", "--abbrev=0", "--tags", "--match", "yocto-*"], capture_output=True, text=True).stdout | ||
| 174 | latestreltag = latestreltag.strip() | ||
| 175 | if latestreltag: | ||
| 176 | if latestreltag.startswith("yocto-"): | ||
| 177 | latesttag = latestreltag[6:] | ||
| 178 | else: | ||
| 179 | # fallback on the calculated version | ||
| 180 | print("Did not find a tag with 'git describe', falling back to %s" % ourversion) | ||
| 181 | latestreltag = "yocto-" + ourversion | ||
| 182 | latesttag = ourversion | ||
| 183 | |||
| 173 | print("Version calculated to be %s" % ourversion) | 184 | print("Version calculated to be %s" % ourversion) |
| 185 | print("Latest release tag found is %s" % latestreltag) | ||
| 174 | print("Release series calculated to be %s" % ourseries) | 186 | print("Release series calculated to be %s" % ourseries) |
| 175 | 187 | ||
| 176 | replacements = { | 188 | replacements = { |
| 177 | "DISTRO" : ourversion, | 189 | "DISTRO" : ourversion, |
| 190 | "DISTRO_LATEST_TAG": latesttag, | ||
| 178 | "DISTRO_NAME_NO_CAP" : ourseries, | 191 | "DISTRO_NAME_NO_CAP" : ourseries, |
| 179 | "DISTRO_NAME" : ourseries.capitalize(), | 192 | "DISTRO_NAME" : ourseries.capitalize(), |
| 180 | "DISTRO_NAME_NO_CAP_MINUS_ONE" : previousseries[0], | 193 | "DISTRO_NAME_NO_CAP_MINUS_ONE" : previousseries[0], |
| 181 | "DISTRO_NAME_NO_CAP_LTS" : lastlts[0], | 194 | "DISTRO_NAME_NO_CAP_LTS" : lastlts[0], |
| 182 | "YOCTO_DOC_VERSION" : ourversion, | 195 | "YOCTO_DOC_VERSION" : ourversion, |
| 183 | "DISTRO_REL_TAG" : "yocto-" + ourversion, | ||
| 184 | "DOCCONF_VERSION" : docconfver, | 196 | "DOCCONF_VERSION" : docconfver, |
| 185 | "BITBAKE_SERIES" : bitbakeversion, | 197 | "BITBAKE_SERIES" : bitbakeversion, |
| 186 | } | 198 | } |
| @@ -318,3 +330,5 @@ with open('releases.rst', 'w') as f: | |||
| 318 | if tag == release_series[series] or tag.startswith('%s.' % release_series[series]): | 330 | if tag == release_series[series] or tag.startswith('%s.' % release_series[series]): |
| 319 | f.write('- :yocto_docs:`%s Documentation </%s>`\n' % (tag, tag)) | 331 | f.write('- :yocto_docs:`%s Documentation </%s>`\n' % (tag, tag)) |
| 320 | f.write('\n') | 332 | f.write('\n') |
| 333 | |||
| 334 | |||
