<%--Copyright 2000-2011 JetBrains s.r.o.--%> <%--Licensed under the Apache License, Version 2.0 (the "License");--%> <%--you may not use this file except in compliance with the License.--%> <%--You may obtain a copy of the License at--%> <%--http://www.apache.org/licenses/LICENSE-2.0--%> <%--Unless required by applicable law or agreed to in writing, software--%> <%--distributed under the License is distributed on an "AS IS" BASIS,--%> <%--WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.--%> <%--See the License for the specific language governing permissions and--%> <%--limitations under the License.--%> <%@ taglib prefix="props" tagdir="/WEB-INF/tags/props" %> <%@ taglib prefix="l" tagdir="/WEB-INF/tags/layout" %> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="forms" tagdir="/WEB-INF/tags/forms" %> <%@ taglib prefix="bs" tagdir="/WEB-INF/tags" %> <%@ page import="jetbrains.buildServer.swabra.HandleProvider" %> <%=HandleProvider.isHandlePresent()%> Cleans checkout directory by deleting files created during the build. Files cleanup: var selectedValue = this.options[this.selectedIndex].value; if (selectedValue == '') { BS.Util.hide($('swabra.strict.container')); BS.Util.hide($('swabra.verbose.container')); BS.Util.hide($('swabra.rules.container')); } else { BS.Util.show($('swabra.strict.container')); BS.Util.show($('swabra.verbose.container')); BS.Util.show($('swabra.rules.container')); } BS.MultilineProperties.updateVisible(); <Do not clean up> Before next build start After build finish Clean checkout: Paths to monitor:
Newline or comma delimited set of +|-:relative_path rules.
By default all paths are included. Rules on any path should come in order from more abstract to more concrete, e.g. use -:**/dir/** to exclude all dir folders and their content, or -:some/dir, +:some/dir/inner to exclude some/dir folder and all it's content except inner subfolder and it's content.
Locking processes: var selectedValue = this.options[this.selectedIndex].value; if (selectedValue == '') { BS.Util.hide($('swabra.processes.note')); BS.Util.hide($('swabra.processes.report.note')); BS.Util.hide($('swabra.processes.kill.note')); BS.Util.hide($('swabra.processes.handle.note')); BS.Util.hide($('swabra.download.handle.container')); } else { BS.Util.show($('swabra.processes.note')); BS.Util.show($('swabra.processes.handle.note')); BS.Util.show($('swabra.download.handle.container')); if (selectedValue == 'report') { BS.Util.show($('swabra.processes.report.note')); BS.Util.hide($('swabra.processes.kill.note')); } else if (selectedValue == 'kill') { BS.Util.hide($('swabra.processes.report.note')); BS.Util.show($('swabra.processes.kill.note')); } } BS.MultilineProperties.updateVisible(); <Do not detect> Report Kill Before the end of the build inspect the checkout directory for processes locking files in this directory. Report about such processes in the build log.
Report about such processes in the build log and kill them.
Note that handle.exe is required on agents. ${actionName} SysInternals handle.exe