summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSergii Kipot <kipot.sergey@gmail.com>2019-08-14 20:32:27 +0200
committerSergii Kipot <kipot.sergey@gmail.com>2019-08-14 20:50:06 +0200
commit38aa498df39784ded28c401de018db836d1a6a23 (patch)
tree82442316bd240f30a7da402e0f7fae169cdadca2
parentcbc6819978f5b33e1e8cdd08d9322e3a5d08c376 (diff)
downloadpython-jenkins-job-builder-38aa498df39784ded28c401de018db836d1a6a23.tar.gz
python-jenkins-job-builder-38aa498df39784ded28c401de018db836d1a6a23.tar.xz
python-jenkins-job-builder-38aa498df39784ded28c401de018db836d1a6a23.zip
Add support of "disableDeferredWipeout" option to workspace cleanup plugin
Change-Id: I2edd0343966e1720161c291b811b989f005495fb
-rw-r--r--jenkins_jobs/modules/publishers.py5
-rw-r--r--jenkins_jobs/modules/wrappers.py3
-rw-r--r--tests/publishers/fixtures/workspace-cleanup-full.xml1
-rw-r--r--tests/publishers/fixtures/workspace-cleanup-full.yaml1
-rw-r--r--tests/publishers/fixtures/workspace-cleanup-minimal.xml1
-rw-r--r--tests/wrappers/fixtures/workspace-cleanup-full.xml1
-rw-r--r--tests/wrappers/fixtures/workspace-cleanup-full.yaml1
-rw-r--r--tests/wrappers/fixtures/workspace-cleanup-min.xml1
8 files changed, 13 insertions, 1 deletions
diff --git a/jenkins_jobs/modules/publishers.py b/jenkins_jobs/modules/publishers.py
index b8cdaff8..29c3ea4e 100644
--- a/jenkins_jobs/modules/publishers.py
+++ b/jenkins_jobs/modules/publishers.py
@@ -3521,6 +3521,8 @@ def workspace_cleanup(registry, xml_parent, data):
:arg bool clean-parent: Cleanup matrix parent workspace (default false)
:arg str external-deletion-command: external deletion command to run
against files and directories
+ :arg bool disable-deferred-wipeout: Disable improved deferred wipeout
+ method (default false)
Minimal Example:
@@ -3554,7 +3556,8 @@ def workspace_cleanup(registry, xml_parent, data):
mappings = [
('dirmatch', 'deleteDirs', False),
('clean-parent', 'cleanupMatrixParent', False),
- ('external-deletion-command', 'externalDelete', '')
+ ('external-deletion-command', 'externalDelete', ''),
+ ('disable-deferred-wipeout', 'disableDeferredWipeout', False),
]
helpers.convert_mapping_to_xml(p, data, mappings, fail_required=True)
diff --git a/jenkins_jobs/modules/wrappers.py b/jenkins_jobs/modules/wrappers.py
index 16b2d86b..ab5dc2b3 100644
--- a/jenkins_jobs/modules/wrappers.py
+++ b/jenkins_jobs/modules/wrappers.py
@@ -767,6 +767,8 @@ def workspace_cleanup(registry, xml_parent, data):
determine whether to actually clean up
:arg str external-deletion-command: external deletion command to run
against files and directories
+ :arg bool disable-deferred-wipeout: Disable improved deferred wipeout
+ method (default false)
Full Example:
@@ -808,6 +810,7 @@ def workspace_cleanup(registry, xml_parent, data):
("dirmatch", 'deleteDirs', False),
('check-parameter', 'cleanupParameter', ''),
('external-deletion-command', 'externalDelete', ''),
+ ('disable-deferred-wipeout', 'disableDeferredWipeout', False),
]
helpers.convert_mapping_to_xml(p, data, mapping, fail_required=True)
diff --git a/tests/publishers/fixtures/workspace-cleanup-full.xml b/tests/publishers/fixtures/workspace-cleanup-full.xml
index d5563863..ebe438e9 100644
--- a/tests/publishers/fixtures/workspace-cleanup-full.xml
+++ b/tests/publishers/fixtures/workspace-cleanup-full.xml
@@ -15,6 +15,7 @@
<deleteDirs>true</deleteDirs>
<cleanupMatrixParent>true</cleanupMatrixParent>
<externalDelete>command</externalDelete>
+ <disableDeferredWipeout>true</disableDeferredWipeout>
<cleanWhenSuccess>false</cleanWhenSuccess>
<cleanWhenUnstable>false</cleanWhenUnstable>
<cleanWhenFailure>false</cleanWhenFailure>
diff --git a/tests/publishers/fixtures/workspace-cleanup-full.yaml b/tests/publishers/fixtures/workspace-cleanup-full.yaml
index 1ea41495..0f5f5e52 100644
--- a/tests/publishers/fixtures/workspace-cleanup-full.yaml
+++ b/tests/publishers/fixtures/workspace-cleanup-full.yaml
@@ -14,3 +14,4 @@ publishers:
fail-build: false
clean-parent: true
external-deletion-command: 'command'
+ disable-deferred-wipeout: true
diff --git a/tests/publishers/fixtures/workspace-cleanup-minimal.xml b/tests/publishers/fixtures/workspace-cleanup-minimal.xml
index 36f0e03e..d264147d 100644
--- a/tests/publishers/fixtures/workspace-cleanup-minimal.xml
+++ b/tests/publishers/fixtures/workspace-cleanup-minimal.xml
@@ -5,6 +5,7 @@
<deleteDirs>false</deleteDirs>
<cleanupMatrixParent>false</cleanupMatrixParent>
<externalDelete/>
+ <disableDeferredWipeout>false</disableDeferredWipeout>
<cleanWhenSuccess>true</cleanWhenSuccess>
<cleanWhenUnstable>true</cleanWhenUnstable>
<cleanWhenFailure>true</cleanWhenFailure>
diff --git a/tests/wrappers/fixtures/workspace-cleanup-full.xml b/tests/wrappers/fixtures/workspace-cleanup-full.xml
index 06b9e11b..22f72f23 100644
--- a/tests/wrappers/fixtures/workspace-cleanup-full.xml
+++ b/tests/wrappers/fixtures/workspace-cleanup-full.xml
@@ -15,6 +15,7 @@
<deleteDirs>true</deleteDirs>
<cleanupParameter>DO_WS_CLEANUP</cleanupParameter>
<externalDelete>shred -u %s</externalDelete>
+ <disableDeferredWipeout>true</disableDeferredWipeout>
</hudson.plugins.ws__cleanup.PreBuildCleanup>
</buildWrappers>
</project>
diff --git a/tests/wrappers/fixtures/workspace-cleanup-full.yaml b/tests/wrappers/fixtures/workspace-cleanup-full.yaml
index 4ec97cbd..94b66223 100644
--- a/tests/wrappers/fixtures/workspace-cleanup-full.yaml
+++ b/tests/wrappers/fixtures/workspace-cleanup-full.yaml
@@ -7,3 +7,4 @@ wrappers:
dirmatch: true
check-parameter: "DO_WS_CLEANUP"
external-deletion-command: "shred -u %s"
+ disable-deferred-wipeout: true
diff --git a/tests/wrappers/fixtures/workspace-cleanup-min.xml b/tests/wrappers/fixtures/workspace-cleanup-min.xml
index 309a65be..eaecd5d8 100644
--- a/tests/wrappers/fixtures/workspace-cleanup-min.xml
+++ b/tests/wrappers/fixtures/workspace-cleanup-min.xml
@@ -5,6 +5,7 @@
<deleteDirs>false</deleteDirs>
<cleanupParameter/>
<externalDelete/>
+ <disableDeferredWipeout>false</disableDeferredWipeout>
</hudson.plugins.ws__cleanup.PreBuildCleanup>
</buildWrappers>
</project>