Mercurial > hg > mercurial
view mercurial.ipr @ 280:8c1fd2e565ae
Implement mercurial detection on the agents
When agent starts, hg-plugin detects installed hg (searches it in the
$PATH). If plugin is able to run hg and hg has an approrpiate version
(1.5.2+), then plugin reports path to hg in the
'teamcity.hg.agent.path' parameter. This parameter can be used in the
"HG command path" field in a VCS root settings, configurations with
such root will be run only on agents which report path to hg. Also
user can set this parameter manually in the buildAgent.properties.
A server side of plugin first checks value of internal property
'teamcity.hg.server.path' and if property is set, its value is used.
Second, plugin tries to use path from the settings of VCS root: if
path is equal to '%teamcity.hg.agent.path%' - use 'hg' as path,
otherwise use a value from the root. With such order old setups, where
path in the VCS root was used on both server and agent, will continue
to work. New VCS roots with references in the path will also work if
hg is in the $PATH on the server or internal property is set.
author | Dmitry Neverov <dmitry.neverov@jetbrains.com> |
---|---|
date | Fri, 19 Aug 2011 15:21:38 +0400 |
parents | 5cbb5ae712e9 |
children | e9e7d9fcf57d |
line wrap: on
line source
<?xml version="1.0" encoding="UTF-8"?> <project version="4"> <component name="AntConfiguration"> <defaultAnt bundledAnt="true" /> <buildFile url="file://$PROJECT_DIR$/build.xml"> <additionalClassPath /> <antReference projectDefault="true" /> <customJdkName value="" /> <maximumHeapSize value="128" /> <maximumStackSize value="32" /> <properties /> </buildFile> </component> <component name="BuildJarProjectSettings"> <option name="BUILD_JARS_ON_MAKE" value="false" /> </component> <component name="ChangeBrowserSettings"> <option name="MAIN_SPLITTER_PROPORTION" value="0.3" /> <option name="MESSAGES_SPLITTER_PROPORTION" value="0.8" /> <option name="USE_DATE_BEFORE_FILTER" value="false" /> <option name="USE_DATE_AFTER_FILTER" value="false" /> <option name="USE_CHANGE_BEFORE_FILTER" value="false" /> <option name="USE_CHANGE_AFTER_FILTER" value="false" /> <option name="DATE_BEFORE" value="" /> <option name="DATE_AFTER" value="" /> <option name="CHANGE_BEFORE" value="" /> <option name="CHANGE_AFTER" value="" /> <option name="USE_USER_FILTER" value="false" /> <option name="USER" value="" /> </component> <component name="ClearCaseSharedConfig"> <option name="myUseUcmModel" value="true" /> </component> <component name="CodeStyleProjectProfileManger"> <option name="PROJECT_PROFILE" /> <option name="USE_PROJECT_LEVEL_SETTINGS" value="false" /> </component> <component name="CompilerConfiguration"> <option name="DEFAULT_COMPILER" value="Javac" /> <resourceExtensions> <entry name=".+\.(properties|xml|html|dtd|tld)" /> <entry name=".+\.(gif|png|jpeg|jpg)" /> </resourceExtensions> <wildcardResourcePatterns> <entry name="?*.properties" /> <entry name="?*.xml" /> <entry name="?*.gif" /> <entry name="?*.png" /> <entry name="?*.jpeg" /> <entry name="?*.jpg" /> <entry name="?*.html" /> <entry name="?*.dtd" /> <entry name="?*.tld" /> <entry name="?*.jsp" /> <entry name="?*.tag" /> </wildcardResourcePatterns> <annotationProcessing enabled="false" useClasspath="true" /> </component> <component name="CopyrightManager" default=""> <module2copyright /> </component> <component name="DependenciesAnalyzeManager"> <option name="myForwardDirection" value="false" /> </component> <component name="DependencyValidationManager"> <option name="SKIP_IMPORT_STATEMENTS" value="false" /> </component> <component name="EclipseCompilerSettings"> <option name="GENERATE_NO_WARNINGS" value="true" /> <option name="DEPRECATION" value="false" /> </component> <component name="EclipseEmbeddedCompilerSettings"> <option name="DEBUGGING_INFO" value="true" /> <option name="GENERATE_NO_WARNINGS" value="true" /> <option name="DEPRECATION" value="false" /> <option name="ADDITIONAL_OPTIONS_STRING" value="" /> <option name="MAXIMUM_HEAP_SIZE" value="128" /> </component> <component name="Encoding" useUTFGuessing="true" native2AsciiForPropertiesFiles="false" /> <component name="EntryPointsManager"> <entry_points version="2.0" /> </component> <component name="ErrorOptionsConfigurable.UI"> <option name="proportions"> <SplitterProportionsDataImpl /> </option> </component> <component name="ExportToHTMLSettings"> <option name="PRINT_LINE_NUMBERS" value="false" /> <option name="OPEN_IN_BROWSER" value="false" /> <option name="OUTPUT_DIRECTORY" /> </component> <component name="GlobalLibrariesConfigurable.UI"> <option name="proportions"> <SplitterProportionsDataImpl /> </option> </component> <component name="IdProvider" IDEtalkID="317BB29ECB7DA19EFFA340ECF52563C6" /> <component name="InspectionProjectProfileManager"> <profiles> <profile version="1.0" is_locked="false"> <option name="myName" value="Project Default" /> <option name="myLocal" value="false" /> <inspection_tool class="SpellCheckingInspection" enabled="false" level="TYPO" enabled_by_default="false"> <option name="processCode" value="true" /> <option name="processLiterals" value="true" /> <option name="processComments" value="true" /> </inspection_tool> </profile> </profiles> <option name="PROJECT_PROFILE" value="Project Default" /> <option name="USE_PROJECT_PROFILE" value="true" /> <version value="1.0" /> <list size="6"> <item index="0" class="java.lang.String" itemvalue="TYPO" /> <item index="1" class="java.lang.String" itemvalue="WEAK WARNING" /> <item index="2" class="java.lang.String" itemvalue="INFO" /> <item index="3" class="java.lang.String" itemvalue="WARNING" /> <item index="4" class="java.lang.String" itemvalue="ERROR" /> <item index="5" class="java.lang.String" itemvalue="SERVER PROBLEM" /> </list> </component> <component name="JavadocGenerationManager"> <option name="OUTPUT_DIRECTORY" /> <option name="OPTION_SCOPE" value="protected" /> <option name="OPTION_HIERARCHY" value="true" /> <option name="OPTION_NAVIGATOR" value="true" /> <option name="OPTION_INDEX" value="true" /> <option name="OPTION_SEPARATE_INDEX" value="true" /> <option name="OPTION_DOCUMENT_TAG_USE" value="false" /> <option name="OPTION_DOCUMENT_TAG_AUTHOR" value="false" /> <option name="OPTION_DOCUMENT_TAG_VERSION" value="false" /> <option name="OPTION_DOCUMENT_TAG_DEPRECATED" value="true" /> <option name="OPTION_DEPRECATED_LIST" value="true" /> <option name="OTHER_OPTIONS" value="" /> <option name="HEAP_SIZE" /> <option name="LOCALE" /> <option name="OPEN_IN_BROWSER" value="true" /> </component> <component name="JdkListConfigurable.UI"> <option name="proportions"> <SplitterProportionsDataImpl /> </option> </component> <component name="LogConsolePreferences"> <option name="FILTER_ERRORS" value="false" /> <option name="FILTER_WARNINGS" value="false" /> <option name="FILTER_INFO" value="true" /> <option name="CUSTOM_FILTER" /> </component> <component name="ModuleStructureConfigurable.UI"> <option name="proportions"> <SplitterProportionsDataImpl /> </option> </component> <component name="Palette2"> <group name="Swing"> <item class="com.intellij.uiDesigner.HSpacer" tooltip-text="Horizontal Spacer" icon="/com/intellij/uiDesigner/icons/hspacer.png" removable="false" auto-create-binding="false" can-attach-label="false"> <default-constraints vsize-policy="1" hsize-policy="6" anchor="0" fill="1" /> </item> <item class="com.intellij.uiDesigner.VSpacer" tooltip-text="Vertical Spacer" icon="/com/intellij/uiDesigner/icons/vspacer.png" removable="false" auto-create-binding="false" can-attach-label="false"> <default-constraints vsize-policy="6" hsize-policy="1" anchor="0" fill="2" /> </item> <item class="javax.swing.JPanel" icon="/com/intellij/uiDesigner/icons/panel.png" removable="false" auto-create-binding="false" can-attach-label="false"> <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3" /> </item> <item class="javax.swing.JScrollPane" icon="/com/intellij/uiDesigner/icons/scrollPane.png" removable="false" auto-create-binding="false" can-attach-label="true"> <default-constraints vsize-policy="7" hsize-policy="7" anchor="0" fill="3" /> </item> <item class="javax.swing.JButton" icon="/com/intellij/uiDesigner/icons/button.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="0" hsize-policy="3" anchor="0" fill="1" /> <initial-values> <property name="text" value="Button" /> </initial-values> </item> <item class="javax.swing.JRadioButton" icon="/com/intellij/uiDesigner/icons/radioButton.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" /> <initial-values> <property name="text" value="RadioButton" /> </initial-values> </item> <item class="javax.swing.JCheckBox" icon="/com/intellij/uiDesigner/icons/checkBox.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="0" hsize-policy="3" anchor="8" fill="0" /> <initial-values> <property name="text" value="CheckBox" /> </initial-values> </item> <item class="javax.swing.JLabel" icon="/com/intellij/uiDesigner/icons/label.png" removable="false" auto-create-binding="false" can-attach-label="false"> <default-constraints vsize-policy="0" hsize-policy="0" anchor="8" fill="0" /> <initial-values> <property name="text" value="Label" /> </initial-values> </item> <item class="javax.swing.JTextField" icon="/com/intellij/uiDesigner/icons/textField.png" removable="false" auto-create-binding="true" can-attach-label="true"> <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1"> <preferred-size width="150" height="-1" /> </default-constraints> </item> <item class="javax.swing.JPasswordField" icon="/com/intellij/uiDesigner/icons/passwordField.png" removable="false" auto-create-binding="true" can-attach-label="true"> <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1"> <preferred-size width="150" height="-1" /> </default-constraints> </item> <item class="javax.swing.JFormattedTextField" icon="/com/intellij/uiDesigner/icons/formattedTextField.png" removable="false" auto-create-binding="true" can-attach-label="true"> <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1"> <preferred-size width="150" height="-1" /> </default-constraints> </item> <item class="javax.swing.JTextArea" icon="/com/intellij/uiDesigner/icons/textArea.png" removable="false" auto-create-binding="true" can-attach-label="true"> <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> <preferred-size width="150" height="50" /> </default-constraints> </item> <item class="javax.swing.JTextPane" icon="/com/intellij/uiDesigner/icons/textPane.png" removable="false" auto-create-binding="true" can-attach-label="true"> <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> <preferred-size width="150" height="50" /> </default-constraints> </item> <item class="javax.swing.JEditorPane" icon="/com/intellij/uiDesigner/icons/editorPane.png" removable="false" auto-create-binding="true" can-attach-label="true"> <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> <preferred-size width="150" height="50" /> </default-constraints> </item> <item class="javax.swing.JComboBox" icon="/com/intellij/uiDesigner/icons/comboBox.png" removable="false" auto-create-binding="true" can-attach-label="true"> <default-constraints vsize-policy="0" hsize-policy="2" anchor="8" fill="1" /> </item> <item class="javax.swing.JTable" icon="/com/intellij/uiDesigner/icons/table.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> <preferred-size width="150" height="50" /> </default-constraints> </item> <item class="javax.swing.JList" icon="/com/intellij/uiDesigner/icons/list.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="6" hsize-policy="2" anchor="0" fill="3"> <preferred-size width="150" height="50" /> </default-constraints> </item> <item class="javax.swing.JTree" icon="/com/intellij/uiDesigner/icons/tree.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3"> <preferred-size width="150" height="50" /> </default-constraints> </item> <item class="javax.swing.JTabbedPane" icon="/com/intellij/uiDesigner/icons/tabbedPane.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3"> <preferred-size width="200" height="200" /> </default-constraints> </item> <item class="javax.swing.JSplitPane" icon="/com/intellij/uiDesigner/icons/splitPane.png" removable="false" auto-create-binding="false" can-attach-label="false"> <default-constraints vsize-policy="3" hsize-policy="3" anchor="0" fill="3"> <preferred-size width="200" height="200" /> </default-constraints> </item> <item class="javax.swing.JSpinner" icon="/com/intellij/uiDesigner/icons/spinner.png" removable="false" auto-create-binding="true" can-attach-label="true"> <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" /> </item> <item class="javax.swing.JSlider" icon="/com/intellij/uiDesigner/icons/slider.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="0" hsize-policy="6" anchor="8" fill="1" /> </item> <item class="javax.swing.JSeparator" icon="/com/intellij/uiDesigner/icons/separator.png" removable="false" auto-create-binding="false" can-attach-label="false"> <default-constraints vsize-policy="6" hsize-policy="6" anchor="0" fill="3" /> </item> <item class="javax.swing.JProgressBar" icon="/com/intellij/uiDesigner/icons/progressbar.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1" /> </item> <item class="javax.swing.JToolBar" icon="/com/intellij/uiDesigner/icons/toolbar.png" removable="false" auto-create-binding="false" can-attach-label="false"> <default-constraints vsize-policy="0" hsize-policy="6" anchor="0" fill="1"> <preferred-size width="-1" height="20" /> </default-constraints> </item> <item class="javax.swing.JToolBar$Separator" icon="/com/intellij/uiDesigner/icons/toolbarSeparator.png" removable="false" auto-create-binding="false" can-attach-label="false"> <default-constraints vsize-policy="0" hsize-policy="0" anchor="0" fill="1" /> </item> <item class="javax.swing.JScrollBar" icon="/com/intellij/uiDesigner/icons/scrollbar.png" removable="false" auto-create-binding="true" can-attach-label="false"> <default-constraints vsize-policy="6" hsize-policy="0" anchor="0" fill="2" /> </item> </group> </component> <component name="PerforceChangeBrowserSettings"> <option name="USE_CLIENT_FILTER" value="true" /> <option name="CLIENT" value="" /> </component> <component name="ProjectDetails"> <option name="projectName" value="mercurial" /> </component> <component name="ProjectDictionaryState"> <dictionary name="Pavel.Sher" /> </component> <component name="ProjectKey"> <option name="state" value="project://C:\Work\mercurial\mercurial.ipr" /> </component> <component name="ProjectLibrariesConfigurable.UI"> <option name="proportions"> <SplitterProportionsDataImpl /> </option> </component> <component name="ProjectModuleManager"> <modules> <module fileurl="file://$PROJECT_DIR$/main.iml" filepath="$PROJECT_DIR$/main.iml" /> <module fileurl="file://$PROJECT_DIR$/mercurial-agent/mercurial-agent.iml" filepath="$PROJECT_DIR$/mercurial-agent/mercurial-agent.iml" /> <module fileurl="file://$PROJECT_DIR$/mercurial-common/mercurial-common.iml" filepath="$PROJECT_DIR$/mercurial-common/mercurial-common.iml" /> <module fileurl="file://$PROJECT_DIR$/mercurial-server/mercurial-server.iml" filepath="$PROJECT_DIR$/mercurial-server/mercurial-server.iml" /> <module fileurl="file://$PROJECT_DIR$/mercurial-tests/mercurial-tests.iml" filepath="$PROJECT_DIR$/mercurial-tests/mercurial-tests.iml" /> </modules> </component> <component name="ProjectResources"> <default-html-doctype>http://www.w3.org/1999/xhtml</default-html-doctype> </component> <component name="ProjectRootConfigurable.UI"> <option name="proportions"> <SplitterProportionsDataImpl /> </option> </component> <component name="ProjectRootManager" version="2" languageLevel="JDK_1_5" assert-keyword="true" jdk-15="true" project-jdk-name="1.5" project-jdk-type="JavaSDK" /> <component name="ResourceManagerContainer"> <option name="myResourceBundles"> <value> <list size="0" /> </value> </option> </component> <component name="ScopeChooserConfigurable.UI"> <option name="proportions"> <SplitterProportionsDataImpl /> </option> </component> <component name="Struts Assistant"> <option name="showInputs" value="true" /> <option name="resources"> <value> <option name="strutsPath" /> <option name="strutsHelp" /> </value> </option> <option name="selectedTaglibs" /> <option name="selectedTaglibs" /> <option name="myStrutsValidationEnabled" value="true" /> <option name="myTilesValidationEnabled" value="true" /> <option name="myValidatorValidationEnabled" value="true" /> <option name="myReportErrorsAsWarnings" value="true" /> </component> <component name="SvnBranchConfigurationManager"> <option name="myVersion" value="123" /> <option name="mySupportsUserInfoFilter" value="true" /> </component> <component name="SvnChangesBrowserSettings"> <option name="USE_AUTHOR_FIELD" value="true" /> <option name="AUTHOR" value="" /> <option name="LOCATION" value="" /> <option name="USE_PROJECT_SETTINGS" value="true" /> <option name="USE_ALTERNATE_LOCATION" value="false" /> </component> <component name="TeamCityRootDirectoryHolder"> <option name="myRelativeRootDirectory" /> </component> <component name="VCS.FileViewConfiguration"> <option name="SELECTED_STATUSES" value="DEFAULT" /> <option name="SELECTED_COLUMNS" value="DEFAULT" /> <option name="SHOW_FILTERS" value="true" /> <option name="CUSTOMIZE_VIEW" value="true" /> <option name="SHOW_FILE_HISTORY_AS_TREE" value="true" /> </component> <component name="VcsDirectoryMappings"> <mapping directory="" vcs="hg4idea" /> </component> <component name="WebServicesPlugin" addRequiredLibraries="true" /> <component name="com.intellij.ide.util.scopeChooser.ScopeChooserConfigurable" proportions="" version="1"> <option name="myLastEditedConfigurable" /> </component> <component name="com.intellij.jsf.UserDefinedFacesConfigs"> <option name="USER_DEFINED_CONFIGS"> <value> <list size="0" /> </value> </option> </component> <component name="com.intellij.openapi.roots.ui.configuration.projectRoot.ProjectRootMasterDetailsConfigurable" proportions="" version="1"> <option name="myPlainMode" value="false" /> <option name="myLastEditedConfigurable" /> </component> <component name="com.intellij.profile.ui.ErrorOptionsConfigurable" proportions="" version="1"> <option name="myLastEditedConfigurable" /> </component> <component name="libraryTable"> <library name="IDEA-openapi"> <CLASSES> <root url="jar://$TeamCityDistribution$/webapps/ROOT/WEB-INF/lib/resources_en.jar!/" /> <root url="jar://$TeamCityDistribution$/webapps/ROOT/WEB-INF/lib/util.jar!/" /> <root url="jar://$TeamCityDistribution$/webapps/ROOT/WEB-INF/lib/openapi.jar!/" /> <root url="jar://$TeamCityDistribution$/webapps/ROOT/WEB-INF/lib/annotations.jar!/" /> </CLASSES> <JAVADOC /> <SOURCES /> </library> <library name="JMock"> <CLASSES> <root url="jar://$PROJECT_DIR$/mercurial-tests/lib/hamcrest-library-1.1.jar!/" /> <root url="jar://$PROJECT_DIR$/mercurial-tests/lib/hamcrest-core-1.1.jar!/" /> <root url="jar://$PROJECT_DIR$/mercurial-tests/lib/jmock-2.5.1.jar!/" /> <root url="jar://$PROJECT_DIR$/mercurial-tests/lib/jmock-SNAPSHOT.jar!/" /> </CLASSES> <JAVADOC /> <SOURCES /> </library> <library name="JUnit"> <CLASSES> <root url="jar://$PROJECT_DIR$/mercurial-tests/lib/junit-3.8.1.jar!/" /> </CLASSES> <JAVADOC /> <SOURCES /> </library> <library name="Log4j"> <CLASSES> <root url="jar://$TeamCityDistribution$/webapps/ROOT/WEB-INF/lib/log4j-1.2.12.jar!/" /> </CLASSES> <JAVADOC /> <SOURCES /> </library> <library name="TeamCity-impl"> <CLASSES> <root url="jar://$TeamCityDistribution$/webapps/ROOT/WEB-INF/lib/patches-impl.jar!/" /> <root url="jar://$TeamCityDistribution$/webapps/ROOT/WEB-INF/lib/trove4j.jar!/" /> </CLASSES> <JAVADOC /> <SOURCES /> </library> <library name="TeamCity-TestsAPI"> <CLASSES> <root url="jar://$TeamCityDistribution$/devPackage/tests/patches-test.jar!/" /> </CLASSES> <JAVADOC /> <SOURCES /> </library> <library name="TeamCityAPI-agent"> <CLASSES> <root url="jar://$TeamCityDistribution$/devPackage/agent-api.jar!/" /> </CLASSES> <JAVADOC /> <SOURCES> <root url="jar://$TeamCityDistribution$/devPackage/src/openApi-source.jar!/" /> </SOURCES> </library> <library name="TeamCityAPI-common"> <CLASSES> <root url="jar://$TeamCityDistribution$/devPackage/common-api.jar!/" /> </CLASSES> <JAVADOC /> <SOURCES> <root url="jar://$TeamCityDistribution$/devPackage/src/openApi-source.jar!/" /> </SOURCES> </library> <library name="TeamCityAPI-server"> <CLASSES> <root url="jar://$TeamCityDistribution$/devPackage/server-api.jar!/" /> <root url="jar://$TeamCityDistribution$/webapps/ROOT/WEB-INF/lib/server.jar!/" /> </CLASSES> <JAVADOC /> <SOURCES> <root url="jar://$TeamCityDistribution$/devPackage/src/openApi-source.jar!/" /> </SOURCES> </library> <library name="TestNG"> <CLASSES> <root url="jar://$PROJECT_DIR$/mercurial-tests/lib/testng-5.7-jdk15.jar!/" /> </CLASSES> <JAVADOC /> <SOURCES /> </library> </component> <component name="testng.defaultConfiguration"> <outputDirectory /> <properties /> </component> </project>