diff --git a/jenkins_jobs/modules/publishers.py b/jenkins_jobs/modules/publishers.py index c3df0620e..aef65bf4a 100755 --- a/jenkins_jobs/modules/publishers.py +++ b/jenkins_jobs/modules/publishers.py @@ -144,6 +144,8 @@ def archive(registry, xml_parent, data): successful build :arg bool allow-empty: pass the build if no artifacts are found (default false) + :arg bool follow-symlinks: follow symbolic links during archiving + (default false) :arg bool only-if-success: archive artifacts only if build is successful (default false) :arg bool fingerprint: fingerprint all archived artifacts (default false) @@ -166,6 +168,7 @@ def archive(registry, xml_parent, data): ("default-excludes", "defaultExcludes", True), ("case-sensitive", "caseSensitive", True), ("latest-only", "latestOnly", False), + ("follow-symlinks", "followSymlinks", False), ] if "excludes" in data: diff --git a/tests/__init__.py b/tests/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/tests/publishers/fixtures/archive001.xml b/tests/publishers/fixtures/archive001.xml index e95aac653..66f2ab392 100644 --- a/tests/publishers/fixtures/archive001.xml +++ b/tests/publishers/fixtures/archive001.xml @@ -9,6 +9,7 @@ false true false + false diff --git a/tests/publishers/fixtures/archive002.xml b/tests/publishers/fixtures/archive002.xml index 8d48f9460..5e52d8d6c 100644 --- a/tests/publishers/fixtures/archive002.xml +++ b/tests/publishers/fixtures/archive002.xml @@ -9,6 +9,7 @@ true true false + false path diff --git a/tests/publishers/fixtures/archive003.xml b/tests/publishers/fixtures/archive003.xml index 0b9747362..3720f9f95 100644 --- a/tests/publishers/fixtures/archive003.xml +++ b/tests/publishers/fixtures/archive003.xml @@ -9,6 +9,7 @@ true false false + true diff --git a/tests/publishers/fixtures/archive003.yaml b/tests/publishers/fixtures/archive003.yaml index 00fa79281..64f6c925a 100644 --- a/tests/publishers/fixtures/archive003.yaml +++ b/tests/publishers/fixtures/archive003.yaml @@ -5,3 +5,4 @@ publishers: only-if-success: 'false' fingerprint: true case-sensitive: false + follow-symlinks: true diff --git a/tests/publishers/fixtures/conditional-publisher001.xml b/tests/publishers/fixtures/conditional-publisher001.xml index f0b1a224b..fa8b54b16 100644 --- a/tests/publishers/fixtures/conditional-publisher001.xml +++ b/tests/publishers/fixtures/conditional-publisher001.xml @@ -27,6 +27,7 @@ true true false + false diff --git a/tests/publishers/fixtures/conditional-publisher003.xml b/tests/publishers/fixtures/conditional-publisher003.xml index 8da31ea8a..b75392c61 100644 --- a/tests/publishers/fixtures/conditional-publisher003.xml +++ b/tests/publishers/fixtures/conditional-publisher003.xml @@ -15,6 +15,7 @@ true true false + false true diff --git a/tests/publishers/fixtures/conditional-publisher004.xml b/tests/publishers/fixtures/conditional-publisher004.xml index 91a2e633b..1758f1022 100644 --- a/tests/publishers/fixtures/conditional-publisher004.xml +++ b/tests/publishers/fixtures/conditional-publisher004.xml @@ -17,6 +17,7 @@ true true false + false diff --git a/tests/publishers/fixtures/conditional-publisher005.xml b/tests/publishers/fixtures/conditional-publisher005.xml index c926661c6..ef0f28ebd 100644 --- a/tests/publishers/fixtures/conditional-publisher005.xml +++ b/tests/publishers/fixtures/conditional-publisher005.xml @@ -16,6 +16,7 @@ true true false + false diff --git a/tox.ini b/tox.ini index 05822d942..dceda554c 100644 --- a/tox.ini +++ b/tox.ini @@ -23,7 +23,7 @@ commands = # test that we can call jjb using both variants with same results bash {toxinidir}/tools/test-commands.sh pytest {posargs} -whitelist_externals = +allowlist_externals = bash find