Нужен пример файла POM для запуска преобразования кухни / кастрюли в Пентахо и работы на этапе интеграционных испытаний - PullRequest
6 голосов
/ 18 января 2012

Я провел слишком много часов в Google и на форумах в Пентахо, пытаясь найти простой пример того, что, я думаю, было бы распространенным вариантом использования.Я прошу коллег по SE помочь ответить на этот вопрос.

У меня есть проект, который представляет собой смесь заданий Java и Pentaho ETL.Мы хотели бы создать, протестировать и развернуть оба типа проектов, используя maven 3.

Я ищу пример POM, который будет выполнять преобразования и задания (используя кухню / панорамирование, я полагаю) во время интеграциифаза испытаний.Кроме того, если возможно, пример того, что вы делаете для проверки рабочих мест чайника в базе данных (например, DBunit).Пока что вот что у меня есть для информации.

  • Пользовательские документы для кухни, которые показывают, как запустить задание в командной строке в командном файле: http://wiki.pentaho.com/display/EAI/Kitchen+User+Documentation
  • ПользовательДокументы для PAN, которые показывают, как запустить преобразование в командной строке в командном файле: http://wiki.pentaho.com/display/EAI/Pan+User+Documentation
  • Хотя я мог бы использовать плагин exec (http://mojo.codehaus.org/exec-maven-plugin/), чтобы выполнить командный файл, который вызывает кухню и кастрюлюв лучшем случае это похоже на взлом. Я ищу более "родной" подход maven

Файл POM в процессе разработки:

<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>pentaho-example</groupId>
    <artifactId>pentaho-example</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>jar</packaging>
    <name>pentaho-example</name>
    <!--
        required by pentaho stuff to bring in the needed jars to run via
        command line for testing
    -->
    <repositories>
        <repository>
            <releases>
                <updatePolicy>always</updatePolicy>
                <checksumPolicy>warn</checksumPolicy>
            </releases>
            <snapshots>
                <enabled>false</enabled>
                <checksumPolicy>warn</checksumPolicy>
            </snapshots>
            <id>pentaho-repo</id>
            <url>http://repo.pentaho.org/artifactory/pentaho/</url>
        </repository>
        <repository>
            <id>pentaho-third-party</id>
            <url>http://repo.pentaho.org/artifactory/third-party/</url>
        </repository>
    </repositories>
    <dependencies>
        <dependency>
            <groupId>com.mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.7</version>
        </dependency>
        <dependency>
            <groupId>org.pentaho</groupId>
            <artifactId>core</artifactId>
            <version>4.2.1</version>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <artifactId>maven-assembly-plugin</artifactId>
                <version>2.2.2</version>
                <configuration>
                    <descriptorRefs>
                        <descriptorRef>project</descriptorRef>
                    </descriptorRefs>
                    <!--
                        <descriptors> <descriptor>src/assemble/etl-only.xml</descriptor>
                        </descriptors>
                    -->
                </configuration>
                <executions>
                    <execution>
                        <id>make-assembly</id> <!-- this is used for inheritance merges -->
                        <phase>package</phase> <!-- bind to the packaging phase -->
                        <goals>
                            <goal>single</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>

У кого-нибудь есть дополнительная информация?или пример POM, чтобы показать, как это можно сделать?

TIA,

Скотт

...