Могу ли я выполнить повторное развертывание на удаленном экземпляре Tomcat и запустить локальный тестовый экземпляр

Я хотел бы запустить новый локальный экземпляр Tomcat для целей тестирования на этапе тестирования перед интеграцией Maven (на другом порту) и запустить там тесты. Затем, если тесты пройдены, я хотел бы выполнить грузовое: повторное развертывание на удаленном экземпляре Tomcat. У меня проблемы с тем, чтобы понять это правильно. Если я сделаю

mvn org.codehaus.cargo:cargo-maven2-plugin:run -Dcargo.maven.containerId=tomcat8x -Dcargo.maven.containerUrl=https://archive.apache.org/dist/tomcat/tomcat-8/v8.0.36/bin/apache-tomcat-8.0.36.zip -Dcargo.maven.type=standalone

я получил

[ERROR] Failed to execute goal org.codehaus.cargo:cargo-maven2-plugin:1.4.19:run (default-cli) on project atf-relay-server: Execution default-cli of goal org.co
    dehaus.cargo:cargo-maven2-plugin:1.4.19:run failed: Cannot create configuration. There's no registered configuration for the parameters (container [id = [tomcat
    8x], type = [installed]], configuration type [runtime]). Valid types for this configuration are:
    [ERROR] - standalone
    [ERROR] - existing
    [ERROR] -> [Help 1]

Мой pom.xml для груза (с указанием только удаленного экземпляра):

    <plugin>
        <groupId>org.codehaus.cargo</groupId>
        <artifactId>cargo-maven2-plugin</artifactId>
        <version>1.4.19</version>
        <configuration>
            <container>
                <containerId>tomcat8x</containerId>
                <type>remote</type>
            </container>

            <configuration>
                <type>runtime</type>
                <properties>
                    <cargo.hostname>localhost</cargo.hostname>
                    <cargo.servlet.port>9990</cargo.servlet.port>
                    <cargo.remote.username>user</cargo.remote.username>
                    <cargo.remote.password>pass</cargo.remote.password>
                </properties>
            </configuration>
            <deployer>
                <type>remote</type>
            </deployer>
        </configuration>
    </plugin>

Каков правильный способ добиться этого?


person burm    schedule 18.07.2016    source источник


Ответы (1)


Хорошо, кажется, что это довольно легко сделать после знакомства с профилями Maven. Теперь у меня есть один профиль, управляющий удаленным экземпляром Tomcat и выполняющий команду cargo:redeploy, а другой профиль просто создает локальный Tomcat, запускает его, развертывает там приложение и запускает тесты.

person burm    schedule 19.07.2016