From a345b8372a74f4c839adab69fd076a720802f186 Mon Sep 17 00:00:00 2001 From: tanhengyeow Date: Sat, 25 Aug 2018 20:32:26 +0800 Subject: [PATCH] copyartifact: Add support for new options New options include: 1. exclude 2. result-var-suffix This update affects copyartifact in builders.py Change-Id: I682a10be47f049fe457e5bc199aa50a5583958a7 Signed-off-by: Tan Heng Yeow --- jenkins_jobs/modules/builders.py | 9 ++++++++- tests/builders/fixtures/copy-artifact001.xml | 2 ++ tests/builders/fixtures/copy-artifact002.xml | 2 ++ tests/builders/fixtures/copy-artifact003.xml | 2 ++ tests/builders/fixtures/copy-artifact004.xml | 2 ++ tests/builders/fixtures/copy-artifact004.yaml | 2 ++ 6 files changed, 18 insertions(+), 1 deletion(-) diff --git a/jenkins_jobs/modules/builders.py b/jenkins_jobs/modules/builders.py index b5b8ba860..6c4fea748 100644 --- a/jenkins_jobs/modules/builders.py +++ b/jenkins_jobs/modules/builders.py @@ -167,7 +167,12 @@ def copyartifact(registry, xml_parent, data): which-build :arg string parameter-filters: Filter matching jobs based on these parameters (optional) - + :arg string exclude: Specify paths or patterns of artifacts to + exclude, even if specified in "Artifacts to copy". (default '') + :arg string result-var-suffix: The build number of the selected build + will be recorded into the variable named + COPYARTIFACT_BUILD_NUMBER_(SUFFIX) + for later build steps to reference. (default '') Example: @@ -191,6 +196,8 @@ def copyartifact(registry, xml_parent, data): ('optional', 'optional', False), ('do-not-fingerprint', 'doNotFingerprintArtifacts', False), ('parameter-filters', 'parameters', ''), + ('exclude', 'exclude', ''), + ('result-var-suffix', 'resultVariableSuffix', ''), ] helpers.convert_mapping_to_xml(t, data, mappings, fail_required=True) helpers.copyartifact_build_selector(t, data) diff --git a/tests/builders/fixtures/copy-artifact001.xml b/tests/builders/fixtures/copy-artifact001.xml index 320240d30..ef97ef1c4 100644 --- a/tests/builders/fixtures/copy-artifact001.xml +++ b/tests/builders/fixtures/copy-artifact001.xml @@ -9,6 +9,8 @@ true true PUBLISH=true + + 123 diff --git a/tests/builders/fixtures/copy-artifact002.xml b/tests/builders/fixtures/copy-artifact002.xml index 9ca9fbf42..f6ad86021 100644 --- a/tests/builders/fixtures/copy-artifact002.xml +++ b/tests/builders/fixtures/copy-artifact002.xml @@ -9,6 +9,8 @@ true false PUBLISH=true + + diff --git a/tests/builders/fixtures/copy-artifact003.xml b/tests/builders/fixtures/copy-artifact003.xml index 3ccfb193f..e7f272c85 100644 --- a/tests/builders/fixtures/copy-artifact003.xml +++ b/tests/builders/fixtures/copy-artifact003.xml @@ -9,6 +9,8 @@ true true PUBLISH=true + + bar 123 diff --git a/tests/builders/fixtures/copy-artifact004.xml b/tests/builders/fixtures/copy-artifact004.xml index 13b2c6dbe..cbf58e230 100644 --- a/tests/builders/fixtures/copy-artifact004.xml +++ b/tests/builders/fixtures/copy-artifact004.xml @@ -9,6 +9,8 @@ true false PUBLISH=true + *.txt + PROJECT_ABC diff --git a/tests/builders/fixtures/copy-artifact004.yaml b/tests/builders/fixtures/copy-artifact004.yaml index a9b8284cb..2ec26f4fd 100644 --- a/tests/builders/fixtures/copy-artifact004.yaml +++ b/tests/builders/fixtures/copy-artifact004.yaml @@ -7,3 +7,5 @@ builders: optional: true flatten: true parameter-filters: PUBLISH=true + exclude: "*.txt" + result-var-suffix: "PROJECT_ABC"