<?xml version='1.0' encoding='UTF-8'?>
<project>
  <actions/>
  <description>This manual-only job will get the latest (HEAD) version of org.eclipse.indigo.tools, which contains the build.xml file that controls the other jobs. </description>
  <keepDependencies>false</keepDependencies>
  <properties>
    <hudson.security.AuthorizationMatrixProperty>
      <useProjectSecurity>true</useProjectSecurity>
      <permission>hudson.model.Run.Update:david_williams</permission>
      <permission>hudson.model.Run.Update:thallgren</permission>
      <permission>hudson.model.Item.Build:david_williams</permission>
      <permission>hudson.model.Item.Build:thallgren</permission>
      <permission>hudson.model.Item.Configure:david_williams</permission>
      <permission>hudson.model.Item.Configure:thallgren</permission>
      <permission>hudson.model.Run.Delete:david_williams</permission>
      <permission>hudson.model.Run.Delete:thallgren</permission>
      <permission>hudson.model.Item.Workspace:david_williams</permission>
      <permission>hudson.model.Item.Workspace:thallgren</permission>
      <permission>hudson.model.Item.Delete:david_williams</permission>
      <permission>hudson.model.Item.Delete:thallgren</permission>
    </hudson.security.AuthorizationMatrixProperty>
    <hudson.plugins.descriptionsetter.JobByDescription/>
  </properties>
  <scm class="hudson.scm.NullSCM"/>
  <assignedNode>master</assignedNode>
  <canRoam>false</canRoam>
  <disabled>false</disabled>
  <jdk>(Default)</jdk>
  <triggers class="vector"/>
  <builders>
    <hudson.tasks.Shell>
      <command>/shared/indigo/org.eclipse.indigo.tools/getRelengTools.sh</command>
    </hudson.tasks.Shell>
  </builders>
  <publishers/>
  <buildWrappers/>
  <customWorkspace>/shared/indigo/org.eclipse.indigo.tools/</customWorkspace>
</project>