2025-04-19 13:11:42 +02:00
|
|
|
# Copyright (c) Ansible Project
|
|
|
|
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
|
|
|
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
2025-04-19 13:07:53 +02:00
|
|
|
|
|
|
|
# The following metadata allows Python runners and nox to install the required
|
|
|
|
# dependencies for running this Python script:
|
|
|
|
#
|
|
|
|
# /// script
|
|
|
|
# dependencies = ["nox>=2025.02.09", "antsibull-nox"]
|
|
|
|
# ///
|
|
|
|
|
|
|
|
import os
|
|
|
|
import sys
|
|
|
|
|
|
|
|
import nox
|
|
|
|
|
|
|
|
|
|
|
|
# We try to import antsibull-nox, and if that doesn't work, provide a more useful
|
|
|
|
# error message to the user.
|
|
|
|
try:
|
|
|
|
import antsibull_nox
|
|
|
|
except ImportError:
|
|
|
|
print("You need to install antsibull-nox in the same Python environment as nox.")
|
|
|
|
sys.exit(1)
|
|
|
|
|
|
|
|
|
|
|
|
IN_CI = os.environ.get("CI") == "true"
|
|
|
|
|
|
|
|
|
|
|
|
antsibull_nox.load_antsibull_nox_toml()
|
|
|
|
|
|
|
|
|
|
|
|
@nox.session(name="update-docs", default=True)
|
|
|
|
def update_docs_fragments(session: nox.Session) -> None:
|
|
|
|
"""
|
|
|
|
Update/check auto-generated parts of docs fragments.
|
|
|
|
"""
|
|
|
|
session.install("ansible-core")
|
|
|
|
prepare = antsibull_nox.sessions.prepare_collections(
|
|
|
|
session, install_in_site_packages=True
|
|
|
|
)
|
|
|
|
if not prepare:
|
|
|
|
return
|
|
|
|
data = ["python", "tests/update-docs.py"]
|
|
|
|
if IN_CI:
|
|
|
|
data.append("--lint")
|
|
|
|
session.run(*data)
|
|
|
|
|
|
|
|
|
|
|
|
# Allow to run the noxfile with `python noxfile.py`, `pipx run noxfile.py`, or similar.
|
|
|
|
# Requires nox >= 2025.02.09
|
|
|
|
if __name__ == "__main__":
|
|
|
|
nox.main()
|