summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Clay <matt@mystile.com>2023-03-28 16:44:36 -0700
committerGitHub <noreply@github.com>2023-03-28 16:44:36 -0700
commit46362bbd2783d25ddc1edaaf4db7d00627ad7e88 (patch)
tree7489ad5c5ac3cfb79a479e89e0b52a5fd1e25894
parent052da3c89e5bc304289c7bae13e1ec67133c4ede (diff)
downloadansible-46362bbd2783d25ddc1edaaf4db7d00627ad7e88.tar.gz
Update package-data sanity test (#80344)
The test no longer relies on the Makefile.
-rw-r--r--test/sanity/code-smell/package-data.py12
-rw-r--r--test/sanity/code-smell/package-data.requirements.in1
-rw-r--r--test/sanity/code-smell/package-data.requirements.txt3
3 files changed, 15 insertions, 1 deletions
diff --git a/test/sanity/code-smell/package-data.py b/test/sanity/code-smell/package-data.py
index fc894a776b..f3b585c4e4 100644
--- a/test/sanity/code-smell/package-data.py
+++ b/test/sanity/code-smell/package-data.py
@@ -4,6 +4,7 @@ import contextlib
import fnmatch
import glob
import os
+import pathlib
import re
import shutil
import subprocess
@@ -11,6 +12,10 @@ import sys
import tarfile
import tempfile
+import packaging.version
+
+from ansible.release import __version__
+
def assemble_files_to_ship(complete_file_list):
"""
@@ -169,8 +174,13 @@ def clean_repository(file_list):
def create_sdist(tmp_dir):
"""Create an sdist in the repository"""
+ # Make sure a changelog exists for this version when testing from devel.
+ # When testing from a stable branch the changelog will already exist.
+ version = packaging.version.Version(__version__)
+ pathlib.Path(f'changelogs/CHANGELOG-v{version.major}.{version.minor}.rst').touch()
+
create = subprocess.run(
- ['make', 'snapshot', 'SDIST_DIR=%s' % tmp_dir],
+ [sys.executable, '-m', 'build', '--sdist', '--config-setting=--build-manpages', '--outdir', tmp_dir],
stdin=subprocess.DEVNULL,
capture_output=True,
text=True,
diff --git a/test/sanity/code-smell/package-data.requirements.in b/test/sanity/code-smell/package-data.requirements.in
index 50e8568c5c..f587e39d21 100644
--- a/test/sanity/code-smell/package-data.requirements.in
+++ b/test/sanity/code-smell/package-data.requirements.in
@@ -1,3 +1,4 @@
+build
docutils < 0.18 # match version required by sphinx in the docs-build sanity test
jinja2
pyyaml # ansible-core requirement
diff --git a/test/sanity/code-smell/package-data.requirements.txt b/test/sanity/code-smell/package-data.requirements.txt
index 8821e4cc15..393c1a0d1c 100644
--- a/test/sanity/code-smell/package-data.requirements.txt
+++ b/test/sanity/code-smell/package-data.requirements.txt
@@ -1,12 +1,15 @@
# edit "package-data.requirements.in" and generate with: hacking/update-sanity-requirements.py --test package-data
antsibull-changelog==0.19.0
+build==0.10.0
docutils==0.17.1
Jinja2==3.1.2
MarkupSafe==2.1.2
packaging==23.0
+pyproject_hooks==1.0.0
PyYAML==6.0
resolvelib==1.0.1
rstcheck==5.0.0
semantic-version==2.10.0
+tomli==2.0.1
types-docutils==0.18.3
typing_extensions==4.5.0