使用maven脚本从Jenkins部署SOA / OSB组合

问题描述 投票:1回答:1

我正在尝试使用Jenkins进行持续构建并尝试使用Jenkins部署这些构建。

我已经配置了Jenkins自由样式作业来检查来自SVN的代码和使用pre-integration-test -P<environment>调用顶级maven目标。

这项工作是成功构建并将我的SOA组合部署到weblogic上。但我不想部署我的每一个版本。我想将我的部署限制在服务器上。

如果我配置Jenkins作业以使用mvn clean package目标构建我的SOA。如何触发我的其他Jenkins作业来部署先前生成的工件。我们的基础设施中没有任何关联/神器。我们将构建存储在Jenkins工作区中。

我已经配置了两个Jenkins作业,一个使用mvn clean package构建应用程序,这将使用mvn pre-integration-test触发其他Jenkins作业。但是在我的第二份工作中,预集成测试再次从验证阶段再次开始我的sar开始。是否有任何插件可以部署我的sar而无需再次重新编译/重建它。

请帮我解决这个问题。

这是我的POM:

http://maven.apache.org/maven-v4_0_0.xsd“xmlns =”http://maven.apache.org/POM/4.0.0“xmlns:xsi =”http://www.w3.org/ 2001 / XMLSchema的实例“>

<modelVersion>4.0.0</modelVersion>

<parent>
   <groupId>com.oracle.servicebus</groupId>
    <artifactId>sbar-project-common</artifactId>
    <version>12.2.1-1-0</version>
    <relativePath></relativePath>
</parent>

<groupId>ServiceBusApplication1</groupId>
<artifactId>SBProject</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>sbar</packaging>

<description/>
 <build>
            <plugins>
                <plugin>
                    <groupId>com.oracle.servicebus-plugin</groupId>
                    <artifactId>oracle-servicebus-plugin</artifactId>
                    <version>12.2.1-1-0</version>
                    <configuration>
                    </configuration>    
                </plugin>
            </plugins>
  </build>

<profiles>  
   <profile>
        <id>Dev</id>
       <properties>
            <oracleServerUrl>http://serverDev.com:7001</oracleServerUrl>
            <oracleUsername>username</oracleUsername>
            <oraclePassword>password</oraclePassword>
            <oracleHome>path to oracle home</oracleHome>
            <customization>path to configuration file</customization>
        </properties>

   </profile>
 </profiles>

oracle maven jenkins soa sar
1个回答
0
投票

你的第二个工作再次构建整个jar的原因是因为你正在执行一个目标pre-integration-test,其中包括maven lifecycle phases之前

package - 获取已编译的代码并将其打包为可分发的格式,例如JAR。

pre-integration-test - 执行集成测试之前执行所需的操作。这可能涉及诸如设置所需环境之类的事情。

如果您想在不构建jar的情况下执行集成测试,可以将它们配置为在test阶段执行。

test - 使用合适的单元测试框架运行测试。这些测试不应要求打包或部署代码。

这可以使用executions实现并覆盖集成测试执行的阶段。 How do I get my Maven Integration tests to run

© www.soinside.com 2019 - 2024. All rights reserved.