<?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.3-SNAPSHOT</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>master</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>
