<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright (c) BSI Business Systems Integration AG. All rights reserved.
  ~ http://www.bsiag.com/
  -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>org.eclipse.scout</groupId>
  <artifactId>maven_plugin_version-master</artifactId>
  <version>3.13.4</version>
  <packaging>pom</packaging>
  <name>Maven Master Plugin Version Configuration</name>
  <description>Maven Master hosted at Eclipse Scout</description>

  <properties>
    <master_deploy_ReleaseId>repo.eclipse.org</master_deploy_ReleaseId>
    <master_deploy_ReleaseUrl>https://repo.eclipse.org/content/repositories/scout-releases/</master_deploy_ReleaseUrl>
    <master_deploy_SnapshotId>repo.eclipse.org</master_deploy_SnapshotId>
    <master_deploy_SnapshotUrl>https://repo.eclipse.org/content/repositories/scout-snapshots/</master_deploy_SnapshotUrl>

    <master_node_version>v12.18.4</master_node_version>
    <master_pnpm_version>5.7.0</master_pnpm_version>
    <master_scout_releng_version>^10.0.0</master_scout_releng_version>

    <!-- Release Control -->
    <master_release_pushChanges>false</master_release_pushChanges>
    <master_release_newVersion>${project.version}</master_release_newVersion>
    <master_release_tagName>${master_release_newVersion}</master_release_tagName>
    <master_release_checkinMessage>[release] version updated to ${project.version}</master_release_checkinMessage>
    <master_ossrh_autoReleaseAfterClose>false</master_ossrh_autoReleaseAfterClose>

    <!-- ####################################################################### -->
    <!-- Maven Plugin versions, ordered like http://maven.apache.org/plugins/ -->
    <!-- ####################################################################### -->
    <!-- Core plugins. -->
    <!-- Plugins corresponding to default core phases (ie. clean, compile). They may have multiple goals as well. -->
    <!-- ####################################################################### -->
    <master_plugin_clean_version>3.1.0</master_plugin_clean_version>
    <master_plugin_compiler_version>3.8.1</master_plugin_compiler_version>
    <master_plugin_deploy_version>2.8.2</master_plugin_deploy_version>
    <master_plugin_failsafe_version>2.22.2</master_plugin_failsafe_version>
    <master_plugin_install_version>2.5.2</master_plugin_install_version>
    <master_plugin_resources_version>3.2.0</master_plugin_resources_version>
    <master_plugin_site_version>3.9.1</master_plugin_site_version>
    <master_plugin_surefire_version>2.22.2</master_plugin_surefire_version>

    <!-- ####################################################################### -->
    <!-- Packaging types/tools -->
    <!-- These plugins relate to packaging respective artifact types. -->
    <!-- ####################################################################### -->
    <master_plugin_ear_version>3.0.2</master_plugin_ear_version>
    <master_plugin_jar_version>3.2.0</master_plugin_jar_version>
    <master_plugin_war_version>3.3.1</master_plugin_war_version>
    <master_plugin_source_version>3.2.1</master_plugin_source_version>

    <!-- ####################################################################### -->
    <!-- Reporting plugins -->
    <!-- Plugins which generate reports, are configured as reports in the POM and run under the site generation lifecycle. -->
    <!-- ####################################################################### -->
    <master_plugin_changelog_version>2.3</master_plugin_changelog_version>
    <master_plugin_javadoc_version>3.2.0</master_plugin_javadoc_version>
    <master_plugin_jxr_version>3.0.0</master_plugin_jxr_version>
    <master_plugin_project-info-reports_version>3.1.0</master_plugin_project-info-reports_version>

    <!-- ####################################################################### -->
    <!-- Tools -->
    <!-- These are miscellaneous tools available through Maven by default. -->
    <!-- ####################################################################### -->
    <master_plugin_ant_version>1.10.8</master_plugin_ant_version>
    <master_plugin_antrun_version>3.0.0</master_plugin_antrun_version>
    <master_plugin_assembly_version>3.3.0</master_plugin_assembly_version>
    <master_plugin_dependency_version>3.1.2</master_plugin_dependency_version>
    <master_plugin_enforcer_version>3.0.0-M3</master_plugin_enforcer_version>
    <master_plugin_gpg_version>1.6</master_plugin_gpg_version>
    <master_plugin_release_version>2.5.3</master_plugin_release_version>
    <master_plugin_scm_version>1.11.2</master_plugin_scm_version>
    <master_plugin_security_dependency_check_version>5.3.2</master_plugin_security_dependency_check_version>

    <!-- ####################################################################### -->
    <!-- Retired -->
    <!-- ####################################################################### -->
    <master_plugin_eclipse_version>2.10</master_plugin_eclipse_version>

    <!-- ####################################################################### -->
    <!-- Outside The Maven Land (List at http://maven.apache.org/plugins/) -->
    <!-- ####################################################################### -->
    <!-- http://www.mojohaus.org/build-helper-maven-plugin -->
    <!-- https://github.com/mojohaus/build-helper-maven-plugin -->
    <master_plugin_build-helper_version>3.2.0</master_plugin_build-helper_version>

    <!-- http://www.mojohaus.org/versions-maven-plugin/ -->
    <!-- https://github.com/mojohaus/versions-maven-plugin -->
    <master_plugin_versions_version>2.8.1</master_plugin_versions_version>

    <!-- https://codehaus-cargo.github.io/cargo/Home.html -->
    <master_plugin_cargo_version>1.8.4</master_plugin_cargo_version>

    <!-- http://tomcat.apache.org/maven-plugin.html -->
    <master_plugin_tomcat7_version>2.2</master_plugin_tomcat7_version>

    <!-- ####################################################################### -->
    <!-- Outside The Maven Land (Own list) -->
    <!-- ####################################################################### -->
    <!-- http://www.mojohaus.org/exec-maven-plugin/ -->
    <master_plugin_exec_version>3.0.0</master_plugin_exec_version>

    <!-- https://github.com/basepom/duplicate-finder-maven-plugin/releases -->
    <master_plugin_duplicate-finder_version>1.4.0</master_plugin_duplicate-finder_version>

    <!-- https://github.com/wildfly/jandex-maven-plugin -->
    <master_plugin_jandex_version>1.0.8</master_plugin_jandex_version>

    <!-- Plugin version of 'jaxws-maven-plugin' to generate webservice stub. -->
    <!-- https://eclipse-ee4j.github.io/metro-jax-ws/jaxws-maven-plugin/ -->
    <!-- https://github.com/eclipse-ee4j/metro-jax-ws -->
    <!-- https://github.com/eclipse-ee4j/metro-jax-ws/tree/master/jaxws-ri/extras/jaxws-maven-plugin -->
    <master_plugin_jaxws_version>2.3.3</master_plugin_jaxws_version>

    <!-- https://github.com/eclipse-ee4j/jax-ws-api -->
    <master_dependency_jaxws_api_version>2.3.3</master_dependency_jaxws_api_version>

    <!-- Version to generate JAX-WS artifacts -->
    <!-- https://github.com/javaee/metro-jax-ws -->
    <!-- http://www.mojohaus.org/jaxws-maven-plugin/ -->
    <!-- org.glassfish.jaxb:txw2 2.3.2 -->
    <!-- com.sun.xml.ws:jaxws-rt 2.3.2 -->
    <!-- com.sun.xml.ws:jaxws-tools 2.3.2 -->
    <master_dependency_jaxws_version>2.3.3</master_dependency_jaxws_version>

    <!-- http://site.kuali.org/maven/plugins/properties-maven-plugin/latest/index.html -->
    <master_plugin_properties_version>2.0.1</master_plugin_properties_version>

    <!-- http://code.mycila.com/license-maven-plugin/ -->
    <!-- https://github.com/mycila/license-maven-plugin -->
    <master_plugin_license_version>3.0</master_plugin_license_version>

    <!-- http://felix.apache.org/components/bundle-plugin/ -->
    <!-- http://svn.apache.org/viewvc/felix/releases/maven-bundle-plugin-4.1.0/ -->
    <master_plugin_bundle_version>5.1.1</master_plugin_bundle_version>

    <!-- https://github.com/ktoso/maven-git-commit-id-plugin -->
    <master_plugin_git-commit-id_version>4.0.2</master_plugin_git-commit-id_version>

    <!-- https://www.eclemma.org/jacoco/trunk/doc/maven.html -->
    <master_plugin_jacoco_version>0.8.5</master_plugin_jacoco_version>

    <!-- http://www.mojohaus.org/flatten-maven-plugin/ -->
    <!-- https://github.com/mojohaus/flatten-maven-plugin -->
    <master_plugin_flatten_version>1.2.5</master_plugin_flatten_version>

    <!-- https://code.google.com/archive/p/maven-replacer-plugin/ -->
    <!-- https://github.com/dtracers/maven-replacer-plugin -->
    <master_plugin_replacer_version>1.5.3</master_plugin_replacer_version>

    <!-- https://github.com/sonatype/nexus-maven-plugins/tree/master/staging/maven-plugin -->
    <master_plugin_nexus-staging_version>1.6.8</master_plugin_nexus-staging_version>

    <!-- https://www.eclipse.org/tycho/sitedocs/index.html -->
    <!-- version of Tycho used by org.eclipse.scout.sdk.core.releng build and profiles eclipse-sign and eclipse-pack -->
    <!-- Tycho >= 2.0.0 requires at least Java 11 and Maven 3.6.3 -->
    <master_plugin_tycho_version>1.7.0</master_plugin_tycho_version>

    <!-- https://www.eclipse.org/tycho/ -->
    <master_dependency_tycho-compiler_version>${master_plugin_tycho_version}</master_dependency_tycho-compiler_version>

    <!-- https://www.eclipse.org/tycho/sitedocs-extras/index.html -->
    <master_plugin_tycho-extras_version>${master_plugin_tycho_version}</master_plugin_tycho-extras_version>

    <!-- https://www.eclipse.org/cbi/sitedocs/eclipse-jarsigner-plugin/ -->
    <master_plugin_jarsigner_version>1.1.5</master_plugin_jarsigner_version>

    <!-- https://github.com/eirslett/frontend-maven-plugin -->
    <master_plugin_frontend_version>1.10.3</master_plugin_frontend_version>
  </properties>

  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-resources-plugin</artifactId>
          <version>${master_plugin_resources_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-source-plugin</artifactId>
          <version>${master_plugin_source_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>${master_plugin_compiler_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>${master_plugin_surefire_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-failsafe-plugin</artifactId>
          <version>${master_plugin_failsafe_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-jar-plugin</artifactId>
          <version>${master_plugin_jar_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-changelog-plugin</artifactId>
          <version>${master_plugin_changelog_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-javadoc-plugin</artifactId>
          <version>${master_plugin_javadoc_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-jxr-plugin</artifactId>
          <version>${master_plugin_jxr_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-clean-plugin</artifactId>
          <version>${master_plugin_clean_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-install-plugin</artifactId>
          <version>${master_plugin_install_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-deploy-plugin</artifactId>
          <version>${master_plugin_deploy_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-site-plugin</artifactId>
          <version>${master_plugin_site_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-dependency-plugin</artifactId>
          <version>${master_plugin_dependency_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-assembly-plugin</artifactId>
          <version>${master_plugin_assembly_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-release-plugin</artifactId>
          <version>${master_plugin_release_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-gpg-plugin</artifactId>
          <version>${master_plugin_gpg_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-project-info-reports-plugin</artifactId>
          <version>${master_plugin_project-info-reports_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-eclipse-plugin</artifactId>
          <version>${master_plugin_eclipse_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-war-plugin</artifactId>
          <version>${master_plugin_war_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-ear-plugin</artifactId>
          <version>${master_plugin_ear_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-antrun-plugin</artifactId>
          <version>${master_plugin_antrun_version}</version>
          <dependencies>
            <dependency>
              <groupId>org.apache.ant</groupId>
              <artifactId>ant</artifactId>
              <version>${master_plugin_ant_version}</version>
            </dependency>
            <dependency>
              <groupId>org.apache.ant</groupId>
              <artifactId>ant-launcher</artifactId>
              <version>${master_plugin_ant_version}</version>
            </dependency>
          </dependencies>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-enforcer-plugin</artifactId>
          <version>${master_plugin_enforcer_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-scm-plugin</artifactId>
          <version>${master_plugin_scm_version}</version>
          <configuration>
            <providerImplementations>
              <git>jgit</git>
            </providerImplementations>
          </configuration>
          <dependencies>
            <dependency>
              <groupId>org.apache.maven.scm</groupId>
              <artifactId>maven-scm-provider-jgit</artifactId>
              <version>${master_plugin_scm_version}</version>
            </dependency>
            <dependency>
              <groupId>org.eclipse.jgit</groupId>
              <artifactId>org.eclipse.jgit</artifactId>
              <version>5.8.1.202007141445-r</version>
            </dependency>
          </dependencies>
        </plugin>

        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>exec-maven-plugin</artifactId>
          <version>${master_plugin_exec_version}</version>
        </plugin>

        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>build-helper-maven-plugin</artifactId>
          <version>${master_plugin_build-helper_version}</version>
        </plugin>

        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>versions-maven-plugin</artifactId>
          <version>${master_plugin_versions_version}</version>
        </plugin>

        <plugin>
          <groupId>org.basepom.maven</groupId>
          <artifactId>duplicate-finder-maven-plugin</artifactId>
          <version>${master_plugin_duplicate-finder_version}</version>
        </plugin>

        <plugin>
          <groupId>org.jboss.jandex</groupId>
          <artifactId>jandex-maven-plugin</artifactId>
          <version>${master_plugin_jandex_version}</version>
        </plugin>

        <plugin>
          <groupId>com.sun.xml.ws</groupId>
          <artifactId>jaxws-maven-plugin</artifactId>
          <version>${master_plugin_jaxws_version}</version>
        </plugin>

        <plugin>
          <groupId>org.codehaus.cargo</groupId>
          <artifactId>cargo-maven2-plugin</artifactId>
          <version>${master_plugin_cargo_version}</version>
        </plugin>

        <plugin>
          <groupId>org.kuali.maven.plugins</groupId>
          <artifactId>properties-maven-plugin</artifactId>
          <version>${master_plugin_properties_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.tomcat.maven</groupId>
          <artifactId>tomcat7-maven-plugin</artifactId>
          <version>${master_plugin_tomcat7_version}</version>
        </plugin>

        <plugin>
          <groupId>com.mycila</groupId>
          <artifactId>license-maven-plugin</artifactId>
          <version>${master_plugin_license_version}</version>
        </plugin>

        <plugin>
          <groupId>pl.project13.maven</groupId>
          <artifactId>git-commit-id-plugin</artifactId>
          <version>${master_plugin_git-commit-id_version}</version>
        </plugin>

        <plugin>
          <groupId>org.jacoco</groupId>
          <artifactId>jacoco-maven-plugin</artifactId>
          <version>${master_plugin_jacoco_version}</version>
        </plugin>

        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>flatten-maven-plugin</artifactId>
          <version>${master_plugin_flatten_version}</version>
        </plugin>

        <plugin>
          <groupId>com.google.code.maven-replacer-plugin</groupId>
          <artifactId>replacer</artifactId>
          <version>${master_plugin_replacer_version}</version>
        </plugin>

        <plugin>
          <groupId>org.sonatype.plugins</groupId>
          <artifactId>nexus-staging-maven-plugin</artifactId>
          <version>${master_plugin_nexus-staging_version}</version>
        </plugin>

        <plugin>
          <groupId>org.apache.felix</groupId>
          <artifactId>maven-bundle-plugin</artifactId>
          <version>${master_plugin_bundle_version}</version>
        </plugin>

        <plugin>
          <groupId>org.eclipse.tycho</groupId>
          <artifactId>tycho-maven-plugin</artifactId>
          <version>${master_plugin_tycho_version}</version>
        </plugin>

        <plugin>
          <groupId>org.eclipse.tycho.extras</groupId>
          <artifactId>tycho-pack200a-plugin</artifactId>
          <version>${master_plugin_tycho-extras_version}</version>
        </plugin>

        <plugin>
          <groupId>org.eclipse.cbi.maven.plugins</groupId>
          <artifactId>eclipse-jarsigner-plugin</artifactId>
          <version>${master_plugin_jarsigner_version}</version>
        </plugin>

        <plugin>
          <groupId>org.eclipse.tycho.extras</groupId>
          <artifactId>tycho-pack200b-plugin</artifactId>
          <version>${master_plugin_tycho-extras_version}</version>
        </plugin>

        <plugin>
          <groupId>org.eclipse.tycho</groupId>
          <artifactId>target-platform-configuration</artifactId>
          <version>${master_plugin_tycho_version}</version>
        </plugin>

        <plugin>
          <groupId>org.eclipse.tycho</groupId>
          <artifactId>tycho-packaging-plugin</artifactId>
          <version>${master_plugin_tycho_version}</version>
        </plugin>

        <plugin>
          <groupId>org.eclipse.tycho</groupId>
          <artifactId>tycho-p2-director-plugin</artifactId>
          <version>${master_plugin_tycho_version}</version>
        </plugin>

        <plugin>
          <groupId>org.eclipse.tycho</groupId>
          <artifactId>tycho-p2-repository-plugin</artifactId>
          <version>${master_plugin_tycho_version}</version>
        </plugin>

        <plugin>
          <groupId>org.eclipse.tycho.extras</groupId>
          <artifactId>tycho-source-feature-plugin</artifactId>
          <version>${master_plugin_tycho-extras_version}</version>
        </plugin>

        <plugin>
          <groupId>org.eclipse.tycho.extras</groupId>
          <artifactId>tycho-custom-bundle-plugin</artifactId>
          <version>${master_plugin_tycho-extras_version}</version>
        </plugin>

        <plugin>
          <groupId>org.eclipse.tycho</groupId>
          <artifactId>tycho-p2-plugin</artifactId>
          <version>${master_plugin_tycho_version}</version>
        </plugin>

        <plugin>
          <groupId>org.eclipse.tycho</groupId>
          <artifactId>tycho-p2-publisher-plugin</artifactId>
          <version>${master_plugin_tycho_version}</version>
        </plugin>

        <plugin>
          <groupId>com.github.eirslett</groupId>
          <artifactId>frontend-maven-plugin</artifactId>
          <version>${master_plugin_frontend_version}</version>
        </plugin>

        <plugin>
          <groupId>org.owasp</groupId>
          <artifactId>dependency-check-maven</artifactId>
          <version>${master_plugin_security_dependency_check_version}</version>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>

  <url>https://eclipse.org/scout</url>

  <inceptionYear>2015</inceptionYear>

  <licenses>
    <license>
      <name>Eclipse Public License v1.0</name>
      <comments>All rights reserved.

       This program and the accompanying materials are made
       available under the terms of the Eclipse Public License v1.0
       which accompanies this distribution, and is available at
       http://www.eclipse.org/legal/epl-v10.htm</comments>
    </license>
  </licenses>

  <developers>
    <developer>
      <name>Eclipse Scout Committers</name>
      <email>scout-dev@eclipse.org</email>
      <organization>Eclipse</organization>
      <organizationUrl>https://www.eclipse.org</organizationUrl>
    </developer>
  </developers>

  <mailingLists>
    <mailingList>
      <name>scout-dev Mailing List</name>
      <subscribe>https://dev.eclipse.org/mailman/listinfo/scout-dev</subscribe>
      <unsubscribe>https://dev.eclipse.org/mailman/listinfo/scout-dev</unsubscribe>
      <post>scout-dev@eclipse.org</post>
      <archive>http://dev.eclipse.org/mhonarc/lists/scout-dev</archive>
    </mailingList>
  </mailingLists>

  <scm>
    <connection>scm:git:git://git.eclipse.org/gitroot/scout/maven-master.git</connection>
    <developerConnection>scm:git:ssh://${eclipse_gerrit_username}@git.eclipse.org:29418/scout/maven-master.git</developerConnection>
    <tag>v3.13.4</tag>
    <url>https://git.eclipse.org/c/scout/maven-master.git/</url>
  </scm>

  <issueManagement>
    <system>Bugzilla</system>
    <url>https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced;product=Scout;classification=Technology</url>
  </issueManagement>

  <repositories>
    <repository>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
      <releases>
        <enabled>false</enabled>
      </releases>
      <id>eclipse.snapshot</id>
      <name>eclipse-snapshot-repo</name>
      <url>https://repo.eclipse.org/content/groups/snapshots/</url>
    </repository>
  </repositories>

  <pluginRepositories>
    <pluginRepository>
      <snapshots>
        <enabled>false</enabled>
      </snapshots>
      <releases>
        <enabled>true</enabled>
      </releases>
      <id>eclipse.release</id>
      <name>eclipse-release-repo</name>
      <url>https://repo.eclipse.org/content/groups/releases/</url>
    </pluginRepository>
    <pluginRepository>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
      <releases>
        <enabled>false</enabled>
      </releases>
      <id>eclipse.snapshot</id>
      <name>eclipse-snapshot-repo</name>
      <url>https://repo.eclipse.org/content/groups/snapshots/</url>
    </pluginRepository>
  </pluginRepositories>

  <distributionManagement>
    <repository>
      <id>${master_deploy_ReleaseId}</id>
      <name>Scout Repository - Releases</name>
      <url>${master_deploy_ReleaseUrl}</url>
    </repository>
    <snapshotRepository>
      <id>${master_deploy_SnapshotId}</id>
      <name>Scout Repository - Snapshots</name>
      <url>${master_deploy_SnapshotUrl}</url>
    </snapshotRepository>
  </distributionManagement>

  <profiles>
    <profile>
      <id>release.setversion</id>
      <activation>
        <activeByDefault>false</activeByDefault>
      </activation>
      <properties>
        <enforcer.skip>true</enforcer.skip>
      </properties>
      <build>
        <defaultGoal>org.codehaus.mojo:versions-maven-plugin:set generate-resources</defaultGoal>
        <plugins>
          <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>versions-maven-plugin</artifactId>
            <configuration>
              <newVersion>${master_release_newVersion}</newVersion>
              <generateBackupPoms>false</generateBackupPoms>
            </configuration>
          </plugin>

          <plugin>
            <groupId>com.google.code.maven-replacer-plugin</groupId>
            <artifactId>replacer</artifactId>
            <executions>
              <execution>
                <id>replace_tag</id>
                <goals>
                  <goal>replace</goal>
                </goals>
                <phase>generate-resources</phase>
                <configuration>
                  <basedir>${project.basedir}</basedir>
                  <includes>
                    <include>pom.xml</include>
                  </includes>
                  <!-- token finds the <scm><tag> and places the ${master_release_tagName} string there -->
                  <token>(\\x3cscm\\x3e[a-zA-Z0-9\\x3c\\x3e:/@\\s\\.\\{\\}_\\-$]*\\x3ctag\\x3e).*(\\x3c/tag\\x3e[a-zA-Z0-9\\x3c\\x3e:/@\\s\\.\\-?=%;]*\\x3c/scm\\x3e)</token>
                  <value>$1${master_release_tagName}$2</value>
                  <unescape>true</unescape>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>

    <profile>
      <id>release.checkin</id>
      <activation>
        <activeByDefault>false</activeByDefault>
      </activation>
      <build>
        <defaultGoal>scm:add scm:checkin</defaultGoal>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-scm-plugin</artifactId>
            <configuration>
              <connectionType>developerConnection</connectionType>
              <message>${master_release_checkinMessage}</message>
              <basedir>${project.basedir}/..</basedir>
              <includes>pom.xml,*/pom.xml,package.json,*/package.json</includes>
              <pushChanges>${master_release_pushChanges}</pushChanges>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>

    <profile>
      <id>release.tag</id>
      <activation>
        <activeByDefault>false</activeByDefault>
      </activation>
      <properties>
        <master_release_tagName>${project.version}</master_release_tagName>
      </properties>
      <build>
        <defaultGoal>scm:tag</defaultGoal>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-scm-plugin</artifactId>
            <configuration>
              <connectionType>developerConnection</connectionType>
              <basedir>${project.basedir}/..</basedir>
              <tag>${master_release_tagName}</tag>
              <pushChanges>${master_release_pushChanges}</pushChanges>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>

    <profile>
      <id>eclipse-sign</id>
      <build>
        <pluginManagement>
          <plugins>
            <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-gpg-plugin</artifactId>
              <configuration>
                <gpgArguments>
                  <arg>--pinentry-mode</arg>
                  <arg>loopback</arg>
                </gpgArguments>
              </configuration>
            </plugin>
          </plugins>
        </pluginManagement>
        <plugins>
          <plugin>
            <groupId>org.eclipse.cbi.maven.plugins</groupId>
            <artifactId>eclipse-jarsigner-plugin</artifactId>
            <executions>
              <execution>
                <id>sign</id>
                <goals>
                  <goal>sign</goal>
                </goals>
                <phase>verify</phase>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-gpg-plugin</artifactId>
            <executions>
              <execution>
                <id>sign-artifacts</id>
                <goals>
                  <goal>sign</goal>
                </goals>
                <phase>verify</phase>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>

    <profile>
      <id>ossrh</id>
      <build>
        <plugins>
          <plugin>
            <groupId>org.sonatype.plugins</groupId>
            <artifactId>nexus-staging-maven-plugin</artifactId>
            <extensions>true</extensions>
            <configuration>
              <serverId>ossrh</serverId>
              <nexusUrl>https://oss.sonatype.org/</nexusUrl>
              <autoReleaseAfterClose>${master_ossrh_autoReleaseAfterClose}</autoReleaseAfterClose>
            </configuration>
          </plugin>
        </plugins>
      </build>
      <distributionManagement>
        <repository>
          <id>ossrh</id>
          <name>Open Source Project Repository Hosting - Releases (Maven Central)</name>
          <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
        </repository>
      </distributionManagement>
    </profile>
  </profiles>
</project>
