summaryrefslogtreecommitdiff
path: root/docs/configuration/highavailability
AgeCommit message (Collapse)Author
2026-06-02high-availability: T7059: Add persistence-timeout option in virtual-serverNataliia Solomko
(cherry picked from commit dc04c30291806195311e585450b490d0c672c356)
2026-05-13fix(includes): rewrite need_improvement.txt as MyST so plain `{include}` ↡Yuriy Andamasov
renders correctly After the RSTβ†’MyST migration, ~45 MD pages use the plain `{include}` MyST directive to pull in `_include/need_improvement.txt`. The included file still contained RST (`.. raw:: html`, `.. raw:: latex`, `:ref:`), and MyST's built-in `{include}` parses the content with the *outer* file's parser β€” i.e. as MyST. RST directives then render as literal paragraphs. Visible symptom on docs.vyos.io/en/rolling (and across 1.5/1.4): the VPP index, VPP subpages, haproxy, isis, bfd, policy, pki, salt, flowtables, webproxy, and others all show: .. raw:: latex \iffalse .. raw:: html Call for Contributions Help improve this section ... For contribution guidelines, see :ref: documentation . Fix: rewrite `_include/need_improvement.txt` as a native MyST admonition (`:::{admonition} Call for Contributions / :class: error / ... / :::`) and drop the now-unnecessary `{eval-rst}` wrapper at the single callsite (`configuration/highavailability/index.md`) that wrapped the include for RST processing. The fix is companion to 9c815d68 (cmdincludemd RST plumbing) but targets the plain-`{include}` path which doesn't route through our custom extension. πŸ€– Generated by [robots](https://vyos.io) (cherry picked from commit 82a06e1dc812ceba239aaabf4acd651a038bfee7)
2026-05-10chore: remove RST swap mechanism, archive rst-*.rst under docs/_rst_legacy/Yuriy Andamasov
The swap mechanism (RST-as-fallback for migrated MD pages) is dormant β€” docs/_rst_overrides.txt has been empty since the MyST flip trio (#1899/#1900/#1901) landed. The mechanism's surface area is dead weight and the rst-*.rst shadows scattered across the source tree cause Context7's parser to misclassify the project as RST. Sibling PR on rolling: yuriy/remove-rst-swap-mechanism Changes: - Move 253 rst-*.rst shadow files into docs/_rst_legacy/ preserving subdirectory structure. They remain in the repo for reference; Sphinx excludes the folder via exclude_patterns. - Strip swap_sources.py invocation from docs/Makefile. - Strip jobs: pre_build/post_build block from .readthedocs.yml. - Strip rst-*.rst exclude entry and the _md_exclude.txt loader from docs/conf.py; replace with a single _rst_legacy exclude. - Delete scripts/swap_sources.py, tests/test_swap_sources.py, docs/_rst_overrides.txt. - Update AGENTS.md: drop the "RST override mechanism" section and the test-runner snippet for the deleted test. Verified: sphinx-build -b html with --keep-going produces identical warning set (68 unique), identical sitemap entry count (267), identical llms.txt entry count (22), zero rst-* URLs in any artifact. πŸ€– Generated by [robots](https://vyos.io)
2026-05-06feat: flip swap mechanism on circinus β€” MD as primary, RST as overrideYuriy Andamasov
Mirror of #1899 for circinus. Same logic, same scripts, per-branch file set. Changes: - Rename docs/**/md-<stem>.md to docs/**/<stem>.md (drop md- prefix) for all 253 stems previously listed in docs/_swap.txt - Rename docs/**/<stem>.rst to docs/**/rst-<stem>.rst (add rst- prefix) for the same 253 stems - Repurpose docs/_swap.txt as docs/_rst_overrides.txt; initially empty - conf.py exclude_patterns flipped: rst-*.rst excluded by default - conf.py runtime-artifact references updated to _rst_override_state.json and _md_exclude.txt - scripts/swap_sources.py rewritten with inverted rename direction (rst-<stem>.rst β†’ <stem>.rst when applying overrides; <stem>.md excluded via _md_exclude.txt) - scripts/import_myst.py and tests/test_import_myst.py deleted (obsolete) - tests/test_swap_sources.py rewritten for new semantics Identical change set to #1899 (current). Per-branch differences: - circinus has 253 stems vs current's 254 (suricata is current-only) - otherwise the script/conf.py/test changes are byte-identical with current Generated by robots https://vyos.io
2026-05-06feat: import MyST swap mechanism, llms.txt feature, and content from currentYuriy Andamasov
Replaces the broken #1885/#1869/#1875 trio with a single PR for circinus. This PR: - Imports 254 md-*.md files from currents working MyST conversion (the broken converter that produced #1885s md-*.md files is not used here; currents files are correct as verified on /en/rolling/). - Adds the per-page RST-to-MyST swap mechanism: scripts/swap_sources.py, scripts/import_myst.py, tests, _swap.txt, _ext/vyos.py and Makefile swap-wrapped targets, .readthedocs.yml pre/post hooks. - Replaces 175 .jpg/.png with 187 .webp images for swapped pages. - Adds the llms.txt + sitemap feature (sphinx_llms_txt, sphinx_sitemap) with circinus-tailored html_baseurl https://docs.vyos.io/en/1.5/ and curated docs/_html_extra/llms.txt for 1.5.x. - Updates docs/_html_extra/robots.txt with AI crawler Allow rules and the /en/1.5/sitemap.xml reference. - Drops configuration/service/suricata from the swap set (no matching RST sibling on circinus; suricata is a current-only feature). Supersedes: - #1885 (broken md-*.md converter output) - #1869 (LLM doc adaptation backport, bundled here) - #1875 (llms.txt circinus, bundled here) Generated by robots https://vyos.io
2026-05-06Revert "docs: fix typos and grammar (ported from #1852 RST β†’ MyST)"Yuriy Andamasov
2026-05-06feat(swap-circinus): add incremental RST-to-MyST swap mechanismYuriy Andamasov
Backport of the swap mechanism from feat/incremental-myst-swap onto the circinus release branch. Built directly on top of origin/circinus, so the underlying RST tree is circinus's (not current's). Mechanism: - scripts/import_myst.py β€” import md from myst/* with md- prefix - scripts/swap_sources.py β€” rename md-{name}.md β†’ {name}.md before Sphinx builds, restore after; writes _build/_swap_state.json and _build/_swap_exclude.txt - docs/Makefile β€” html/dirhtml/pdf/livehtml all run swap β†’ build β†’ trap restore; explicit `swap` and `restore` targets too - docs/conf.py β€” MyST extensions enabled; swap exclude_patterns loader; _prefer_webp builder hook so html prefers webp over png Content (all from origin/myst/circinus): - 253 md-prefixed pages alongside each {name}.rst counterpart - 1 plain MyST-only page kept at canonical name (docs/copyright.md, no .rst counterpart) - 182 .webp images added (circinus release previously had only PNG/JPG; this PR brings webp into circinus alongside the originals) - docs/_swap.txt populated with all 253 stems β†’ MyST is served by default; revert a page by removing its stem from _swap.txt πŸ€– Generated by [robots](https://vyos.io)
2026-05-06Revert "Add incremental RST-to-MyST swap mechanism (circinus) (#1867)" (#1893)Daniil Baturin
This reverts commit 5eb383a10ec92c65eed525bc174785a6852e997f.
2026-05-06Add incremental RST-to-MyST swap mechanism (circinus) (#1867)Yuriy Andamasov
* feat(swap-circinus): add incremental RST-to-MyST swap mechanism Backport of the swap mechanism from feat/incremental-myst-swap onto the circinus release branch. Built directly on top of origin/circinus, so the underlying RST tree is circinus's (not current's). Mechanism: - scripts/import_myst.py β€” import md from myst/* with md- prefix - scripts/swap_sources.py β€” rename md-{name}.md β†’ {name}.md before Sphinx builds, restore after; writes _build/_swap_state.json and _build/_swap_exclude.txt - docs/Makefile β€” html/dirhtml/pdf/livehtml all run swap β†’ build β†’ trap restore; explicit `swap` and `restore` targets too - docs/conf.py β€” MyST extensions enabled; swap exclude_patterns loader; _prefer_webp builder hook so html prefers webp over png Content (all from origin/myst/circinus): - 253 md-prefixed pages alongside each {name}.rst counterpart - 1 plain MyST-only page kept at canonical name (docs/copyright.md, no .rst counterpart) - 182 .webp images added (circinus release previously had only PNG/JPG; this PR brings webp into circinus alongside the originals) - docs/_swap.txt populated with all 253 stems β†’ MyST is served by default; revert a page by removing its stem from _swap.txt πŸ€– Generated by [robots](https://vyos.io) * fix(ext): handle RST fallback in CmdInclude when _renderer absent `cmdincludemd` is in `myst_fence_as_directive`, so MyST routes fence blocks through `render_fence β†’ render_restructuredtext β†’ MockRSTParser`. In that path `self.state` is a plain docutils Body with no `_renderer`, crashing the RTD build. Fall back to `nested_parse` when `_renderer` is unavailable so the directive works in both MyST and RST/MockRSTParser contexts. πŸ€– Generated by [robots](https://vyos.io) * feat(conf): copy .md sources into HTML output for plain-text serving Adds a build-finished hook that mirrors every .md file from the Sphinx source tree into the HTML output directory verbatim, making unrendered MyST sources accessible alongside HTML renders at the same URL path. πŸ€– Generated by [robots](https://vyos.io) * docs: address review feedback (backport from PR #1857) πŸ€– Generated by [robots](https://vyos.io) * docs: port .readthedocs.yml jobs and swap-script tests from PR #1857 Parity backport from PR #1857 (current) β€” was missing on circinus. - .readthedocs.yml: add build.jobs.pre_build / post_build hooks that run scripts/swap_sources.py --swap before the Sphinx build and --restore after. Without this, the swap mechanism ships but never runs on RTD builds for this branch β€” the swap is a silent no-op. - tests/test_import_myst.py, tests/test_swap_sources.py: tests for the swap scripts. The scripts are identical to current's, so the same tests apply. Travels with the branch so CI catches per-branch regressions if the scripts ever drift. πŸ€– Generated by [robots](https://vyos.io) * fix(review): add conftest, filter md- from copy, fix _prefer_webp builder list, trailing newline Agent-Logs-Url: https://github.com/vyos/vyos-documentation/sessions/64b17346-8739-4346-b619-84438cddef21 Co-authored-by: andamasov <12631358+andamasov@users.noreply.github.com> --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: andamasov <12631358+andamasov@users.noreply.github.com>
2026-05-01T8293: Add ability to set timeout for high-availability health-check (#1864)mergify[bot]
(cherry picked from commit 4da7ae9cd5d9775c0e0e1a7dfe02e3935dca9499) Co-authored-by: Nataliia Solomko <natalirs1985@gmail.com>
2026-03-16DOC: Add information about execute permissions. (#1796)LiudmylaNad
2024-11-07VRRP: Added additional information about scripting.aapostoliuk
Added warning about changing VRRP configuration in scripts. Added information about health-check scripts.
2024-06-25Added info how to use DNAT and VRRP with rfc3768-compatibilityaapostoliuk
Added warning info on how to use DNAT and VRRP with rfc3768-compatibility.
2024-02-12T6020:vrrp health-check script not applied correctly in keepalived.confkhramshinr
New path was added to sync-group config tree
2023-11-16Nat updategreenpsi
Update some nat commands to new syntax
2023-06-26vrrp: T5315: add support to explicitly specify versionChristian Breunig
2023-02-06Add virtual-servel fwmark balancingViacheslav Hletenko
2023-01-25VRRP: add global option startup_delay and garp settingsNicolas Fort
2022-09-02T4665: Keepalived: Docs for using the same VRIDSander Klein
Using the same VRID on the same interface is allowed when they are different address families.
2022-01-10ha: Documentation for VRRP and virtual-serverViacheslav
2021-09-21vrrp: adjust to latest CLI changesChristian Poessinger
2021-06-30vrrp: correct spelling and grammarrebortg
2021-05-03VRRP: addition of rfc3768-compatibility definitionsrividya0208
Added the details of rfc3768-compatibility option and its command
2021-02-15Added a reference link of scripting page in the vrrp.srividya0208
2020-12-22VRRP acronym is correctedsrividya0208
Docs Β» Configuration Guide Β» High availability >> VRRP acronym has been corrected to Virtual Router Redundancy Protocol
2020-12-11vrrp: fix lint errorsrebortg
2020-11-29arrange loadbalancing, high availability, qosrebortg