J'utilise Maven-Inovker-Plugin
pour exécuter des tests d'intégration. J'ai un post-build-hook-script appelé verify.groovy
pour vérifier les résultats des tests d'intégration. Dans le script groovy
, j'ai besoin d'accéder à certaines propriétés du POM d'origine. Comment je fais ça?Comment utiliser ScriptVariables dans Maven-Invocateur-Plugin avec PostBuildHookScript Groovy
Jusqu'à présent, je mets cela dans le bloc de configuration pour maven-invoker-plugin
:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-invoker-plugin</artifactId>
<version>1.7</version>
<configuration>
<debug>true</debug>
<cloneProjectsTo>${project.build.directory}/it</cloneProjectsTo>
<projectsDirectory>src/test/resources/invoker-tests</projectsDirectory>
<pomIncludes>
<pomInclude>*/pom.xml</pomInclude>
</pomIncludes>
<postBuildHookScript>verify</postBuildHookScript>
<scriptVariables>
<param>${skip.var1}</param>
<param>${skip.var2}</param>
</scriptVariables>
<localRepositoryPath>${project.build.directory}/local-repo</localRepositoryPath>
<goals>
<goal>clean</goal>
<goal>package</goal>
</goals>
</configuration>
<executions>
<execution>
<id>integration-test</id>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
J'ai mis des valeurs dans scriptVariables
de la documentation here. Je suis sûr que je l'ai fait mal, quelle est la bonne façon?
Et puis comment puis-je accéder à la variable skip.var1
et skip.var2
dans mon script groovy? Je suis incapable de trouver de la documentation ou des exemples à ce sujet. Jusqu'à présent, j'ai essayé ce qui suit, mais cela ne fonctionne pas.
def var1 = skip.var1
Mais j'obtiens l'erreur:
groovy.lang.MissingPropertyException: No such property: skip for class: Script1
Comment puis-je accéder correctement la variable?
Je recommande d'utiliser 'src/main/il s' comme dossier pour vos tests d'intégration ... Si vous avez besoin de donner des valeurs de votre pom d'origine à l'épreuve d'intégration pom cela pourrait être fait en utilisant '@ ... @' dans votre test d'intégration pom qui est filtré lors de l'exécution de maven-invoker-plugin ... Et s'il vous plaît utilisez la version la plus récente de maven-invoker-plugin ... – khmarbaise