nuget-server/resources/buildServerResources/install/editInstallPackage.jsp (167 lines of code) (raw):

<%@ include file="/include.jsp"%> <%@ taglib prefix="forms" tagdir="/WEB-INF/tags/forms" %> <%@ 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" %> <jsp:useBean id="ib" class="jetbrains.buildServer.nuget.server.runner.install.InstallBean" scope="request"/> <jsp:useBean id="propertiesBean" scope="request" type="jetbrains.buildServer.controllers.BasePropertiesBean"/> <jsp:include page="/tools/editToolUsage.html?toolType=${ib.nugetToolTypeName}&versionParameterName=${ib.nuGetPathKey}&class=longField"/> <script type="text/javascript"> var restoreModeId = BS.Util.escapeId('${ib.restoreCommandModeKey}'); BS.NugetParametersForm = { updateElements: function () { var restoreMode = $j(restoreModeId).val(); $j(BS.Util.escapeId('exclude-version')).toggleClass('hidden', restoreMode === '${ib.restoreCommandModeRestoreValue}'); BS.MultilineProperties.updateVisible(); }, getFeedUrlQueryString: function () { var parameters = { apiVersions: "v2;v3" }; var search = window.location.search.substring(1).split('&'); search.forEach(function (value) { var buildTypeMatch = value.match(/id=buildType:(.*)/); if (buildTypeMatch) { parameters["buildType"] = buildTypeMatch[1] } var templateMatch = value.match(/id=template:(.*)/); if (templateMatch) { parameters["template"] = templateMatch[1] } }); return Object.keys(parameters).reduce(function (previous, key) { if (previous) { previous += "&"; } return previous + key + "=" + parameters[key]; }, ""); } }; $j(document).on('change', restoreModeId, function () { BS.NugetParametersForm.updateElements(); }); $j(document).on('ready', restoreModeId, function () { BS.NugetParametersForm.updateElements(); }); </script> <l:settingsGroup title="Restore Packages"> <tr> <th>Path to solution file<l:star/>:</th> <td> <props:textProperty name="${ib.solutionPathKey}" className="longField"> <jsp:attribute name="afterTextField"><bs:vcsTree fieldId="${ib.solutionPathKey}"/></jsp:attribute> </props:textProperty> <span class="smallNote">The path to Visual Studio solution file (.sln)</span> <span class="error" id="error_${ib.solutionPathKey}"></span> </td> </tr> <tr class="advancedSetting"> <th><label for="${ib.restoreCommandModeKey}">Restore mode:</label></th> <td> <c:set var="restoreMode" value="${propertiesBean.properties[ib.restoreCommandModeKey]}"/> <props:selectProperty name="${ib.restoreCommandModeKey}" style="longField"> <props:option value="${ib.restoreCommandModeRestoreValue}">Restore (requires NuGet 2.7+)</props:option> <props:option value="${ib.restoreCommandModeInstallValue}" selected="${empty restoreMode or (restoreMode eq ib.restoreCommandModeInstallValue)}">Install</props:option> </props:selectProperty> <span class="smallNote">Select <em>NuGet.exe restore</em> or <em>NuGet.exe install</em> command to restore packages for the solution</span> </td> </tr> <tr class="advancedSetting"> <th>Restore options:</th> <td> <div id="exclude-version"> <props:checkboxProperty name="${ib.excludeVersionKey}"/> <label for="${ib.excludeVersionKey}">Exclude version from package folder names</label> <span class="smallNote">Makes NuGet exclude package version from package folder names. Equivalent to the <em>-ExcludeVersion</em> NuGet.exe command line argument</span><br/> </div> <props:checkboxProperty name="${ib.noCacheKey}"/> <label for="${ib.noCacheKey}">Disable looking up packages from local machine cache</label> <span class="smallNote">Equivalent to the <em>-NoCache</em> NuGet.exe commanline argument</span> </td> </tr> <tr class="advancedSetting"> <th><label for="${ib.restoreCustomCommandline}">Command line parameters:</label></th> <td> <props:textProperty name="${ib.restoreCustomCommandline}" className="longField" expandable="true"/> <span class="smallNote">Enter additional parameters to use when calling <a href="https://docs.microsoft.com/en-us/nuget/tools/cli-ref-restore">nuget restore</a> command</span> <span id="error_${ib.restoreCustomCommandline}" class="error"></span> </td> </tr> </l:settingsGroup> <l:settingsGroup title="Packages Sources" className="advancedSetting"> <tr class="advancedSetting"> <th>Packages sources:</th> <td> <props:multilineProperty name="${ib.nuGetSourcesKey}" linkTitle="Sources" cols="60" rows="5" expanded="${true}"/> <button id="queryString" style="display: none"></button> <bs:projectData type="NuGetFeedUrls" sourceFieldId="queryString" targetFieldId="${ib.nuGetSourcesKey}" popupTitle="Select TeamCity NuGet feeds"/> <span class="smallNote"> Leave blank to use NuGet.org<br /> To use a TeamCity NuGet feed<bs:help file="Using+TeamCity+as+NuGet+Feed"/>, specify the URL from the NuGet feed project settings page.<br /> For feeds with authentication configure the <em>NuGet Feed Credentials</em> build feature <bs:help file="NuGet+Feed+Credentials"/> </span> <span class="error" id="error_${ib.nuGetSourcesKey}"></span> </td> </tr> </l:settingsGroup> <l:settingsGroup title="Update Packages" className="advancedSetting"> <tr class="advancedSetting"> <th>Update packages:</th> <td> <props:checkboxProperty name="${ib.updatePackagesKey}"/> <label for="${ib.updatePackagesKey}">Update packages with help of NuGet update command</label> <span class="smallNote">Uses the NuGet <em>update</em> command to update all packages under solution. Package versions and constraints are taken from <em>packages.config</em> files</span> </td> </tr> <tr id="nugetUpdateModeSection" class="advancedSetting"> <th>Update mode:</th> <td> <props:selectProperty name="${ib.updateModeKey}" style="longField"> <props:option value="${ib.updatePerSolutionValue}">Update via solution file</props:option> <props:option value="${ib.updatePerConfigValue}">Update via packages.config file</props:option> </props:selectProperty> <span class="smallNote"> Select how to update packages: via a call to <em>NuGet.exe update SolutionFile.sln</em> or via calls to <em>NuGet.exe update Packages.Config</em> for each <em>packages.config</em> file under the solution. </span> </td> </tr> <tr class="advancedSetting"> <th rowspan="2">Update options:</th> <td> <props:checkboxProperty name="${ib.updatePackagesPrerelease}"/> <label for="${ib.updatePackagesPrerelease}">Include pre-release packages</label> <span class="smallNote">Equivalent to the -Prerelease NuGet.exe option</span> </td> </tr> <tr class="advancedSetting"> <td> <props:checkboxProperty name="${ib.updatePackagesSafeKey}"/> <label for="${ib.updatePackagesSafeKey}">Perform safe update</label> <span class="smallNote">Equivalent to the -Safe NuGet.exe option</span> </td> </tr> <tr class="advancedSetting"> <th><label for="${ib.updateCustomCommandline}">Command line parameters:</label></th> <td> <props:textProperty name="${ib.updateCustomCommandline}" className="longField" expandable="true"/> <span class="smallNote">Enter additional parameters to use when calling <a href="https://docs.microsoft.com/en-us/nuget/tools/cli-ref-update">nuget update</a> command</span> <span id="error_${ib.updateCustomCommandline}" class="error"></span> </td> </tr> </l:settingsGroup> <script type="text/javascript"> BS.NugetParametersForm.updateElements(); $('queryString').value = encodeURIComponent(BS.NugetParametersForm.getFeedUrlQueryString()); </script>