view mercurial-server/resources/buildServerResources/mercurialSettings.jsp @ 898:638d979c6117

Polishing 'use mirrors' option Rename 'Use shared mirrors' in the UI to 'Use mirrors' as it is in git, add an ability to change mirroring strategy (disable mirrors sharing on the agent). Unfortunately cannot change the USE_AGENT_MIRRORS property name because we already have VCS roots with the 'useSharedMirrors' prop.
author Dmitry Neverov <dmitry.neverov@jetbrains.com>
date Wed, 12 Nov 2014 17:30:16 +0100
parents 4e29b1244707
children e7b716719044
line wrap: on
line source
<%@ page import="jetbrains.buildServer.serverSide.TeamCityProperties" %>
<%@ page import="jetbrains.buildServer.buildTriggers.vcs.mercurial.Constants" %>
<%@include file="/include.jsp"%>
<%@ taglib prefix="props" tagdir="/WEB-INF/tags/props" %>
<%--
  ~ Copyright 2000-2014 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.
  --%>

<jsp:useBean id="propertiesBean" scope="request" type="jetbrains.buildServer.controllers.BasePropertiesBean"/>
<script type="text/javascript">
window.updateBranchName = function(repoPath) {
  if (repoPath.indexOf('#') != -1 && $('branchName').value == '') {
    $('branchName').value = repoPath.substring(repoPath.indexOf('#')+1);
  }
}
</script>
<c:set var="subreposGloballyDisabled" value="<%= !TeamCityProperties.getBooleanOrTrue(Constants.GLOBAL_DETECT_SUBREPO_CHANGES) %>"/>
<table class="runnerFormTable">

  <l:settingsGroup title="General Settings">
  <tr>
    <th><label for="repositoryPath">Pull changes from: <l:star/></label></th>
    <td><props:textProperty name="repositoryPath" className="longField" onchange="updateBranchName(this.value)"/>
      <span class="error" id="error_repositoryPath"></span></td>
  </tr>
  <tr>
    <th><label for="branchName">Default branch: </label></th>
    <td>
        <props:textProperty name="branchName" className="longField"/>
        <div class="smallNote" style="margin: 0;">The main branch to be monitored</div>
    </td>
  </tr>
  <bs:branchSpecTableRow/>
  <tr class="advancedSetting">
    <th><label for="reportTagRevisions">Use tags as branches:</label></th>
    <td>
      <props:checkboxProperty name="useTagsAsBranches"/>
      <label for="reportTagRevisions">If enabled tags can be used in branch specification</label>
    </td>
  </tr>
  <tr class="advancedSetting">
    <th><label for="serverClonePath">Clone repository to: </label></th>
    <td><props:textProperty name="serverClonePath" className="longField"/>
      <div class="smallNote" style="margin: 0;">Provide path to a parent directory on TeamCity server where a cloned repository should be created (applicable to "Automatically on server" checkout mode only). Leave blank to use default path.</div>
    </td>
  </tr>
  <tr class="advancedSetting">
    <th><label for="detectSubrepoChanges">Detect subrepo changes: </label></th>
      <td>
        <props:checkboxProperty name="detectSubrepoChanges"/>
        <c:if test="${subreposGloballyDisabled}">
          <div class="smallNote" style="margin: 0;">Currently <b>disabled</b> for the entire server with 'teamcity.hg.detectSubrepoChanges' internal property.</div>
        </c:if>
      </td>
    </tr>
  <tr class="advancedSetting">
    <th><label for="tagUsername">Username for tags/merge: </label></th>
    <td><props:textProperty name="tagUsername" className="longField"/>
      <div class="smallNote" style="margin: 0;">Format: User Name &lt;email&gt;</div>
    </td>
  </tr>
  <tr class="advancedSetting">
    <th><label for="uncompressedTransfer">Use uncompressed transfer: </label></th>
    <td><props:checkboxProperty name="uncompressedTransfer"/>
      <div class="smallNote" style="margin: 0;">Uncompressed transfer is faster for repositories in the LAN.</div>
    </td>
  </tr>
  <tr>
    <th><label for="hgCommandPath">HG command path: <l:star/></label></th>
    <td>
      <props:textProperty name="hgCommandPath" className="longField" />
      <span class="error" id="error_hgCommandPath"></span>
    </td>
  </tr>
  <tr class="advancedSetting">
    <th><label for="customHgConfig">Mercurial config:</label></th>
    <td>
      <props:multilineProperty name="customHgConfig" className="longField" linkTitle="Edit mercurial config" expanded="${true}" rows="3" cols="60"/>
      <span class="error" id="error_customHgConfig"></span>
    </td>
  </tr>
  </l:settingsGroup>
  <l:settingsGroup title="Authorization Settings">
  <tr>
    <th><label for="username">User name:</label></th>
    <td>
      <props:textProperty name="username" className="longField"/>
      <span class="smallNote">Leave blank to use settings from the server hgrc (see 'man hgrc' for details)</span>
    </td>
  </tr>
  <tr>
    <th><label for="secure:password">Password:</label></th>
    <td>
      <props:passwordProperty name="secure:password" className="longField"/>
      <span class="smallNote">Leave blank to use settings from the server hgrc (see 'man hgrc' for details)</span>
    </td>
  </tr>
  </l:settingsGroup>
  <l:settingsGroup title="Agent Settings" className="advancedSetting">
    <tr class="advancedSetting">
      <td colspan="2">Agent-specific settings that are used in case of agent checkout.</td>
    </tr>
    <tr class="advancedSetting">
      <th>
        <label for="purgePolicy">Purge settings:</label>
      </th>
      <td>
        <props:selectProperty name="purgePolicy" enableFilter="true" className="mediumField">
          <props:option value="">Don't run purge</props:option>
          <props:option value="PURGE_UNKNOWN">Purge unknown files</props:option>
          <props:option value="PURGE_ALL">Purge ignored & unknown files</props:option>
        </props:selectProperty>
      </td>
    </tr>
    <tr class="advancedSetting">
      <th><label for="useSharedMirrors">Use mirrors:</label></th>
      <td>
        <props:checkboxProperty name="useSharedMirrors"/>
        <div class="smallNote" style="margin: 0" >
          When this option is enabled TeamCity creates a separate clone of the repository on each agent
          and use it in checkout directory via mercurial share extension.
        </div>
      </td>
    </tr>
  </l:settingsGroup>
</table>