jQAssistant / jqassistant

Your Software. Your Structures. Your Rules.
https://jqassistant.org/
GNU General Public License v3.0
198 stars 35 forks source link

The build of jQAssistant should use the latest release version of jQAssistant to verify itself #238

Closed obfischer closed 8 years ago

obfischer commented 9 years ago

Every run of the build of jQA should the version build during the build to verify itself.

obfischer commented 9 years ago

I had a look at the Maven Invoker Plugin. It seems to be usefull to run integrationtests for Maven plugins but not to run an arbitrary plugin with an arbitrary goal.

Hence I would like to suggest the following: To keep the effort low we should validate the build with the previous version of jQA.

@DirkMahler Please comment.

khmarbaise commented 9 years ago

@obfischer With Maven Invoker Plugin you can run any plugin with any goal you like...like this...Furthermore you can take a look here where i pre generate site content before the real site is generate. In this case it's needed to run different maven builds to create the needed content.

But I would also to suggest using the previous release of jQA to do QA of your current jQA build...we have the same problem in Maven itself..like integration testing of maven-invoker-plugin itself..

obfischer commented 9 years ago

@khmarbaise Thanks for the tip. So the second sence on the homepage of the Invoker Plugin is missleading. It should mention what you can run any plugin goal with the Invoker Plugin. If it can be used to run an arbitrary goal of an arbitrary plugin the documentation and the examples should not concentrate on integration tests only.

obfischer commented 8 years ago

Will start with the implementation.

obfischer commented 8 years ago

@DirkMahler Should we scan and validate jQAssistant during every build?

DirkMahler commented 8 years ago

Yes. If things will take too long we can split-up the validation by costs.

obfischer commented 8 years ago

ack. I will only add a profile to start the server via Maven.

obfischer commented 8 years ago

Scan of 1.2.0-SNAPSHOT with 1.1.0 fails with the following message:

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:44 min
[INFO] Finished at: 2015-11-27T14:39:29+01:00
[INFO] Final Memory: 90M/1109M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.buschmais.jqassistant.scm:jqassistant-maven-plugin:1.1.0:scan (default) on project jqassistant.plugin.rdbms: Execution default of goal com.buschmais.jqassistant.scm:jqassistant-maven-plugin:1.1.0:scan failed: Unexpected problem while scanning: item='MavenProject: com.buschmais.jqassistant.plugin:jqassistant.plugin.rdbms:1.2.0-SNAPSHOT @ /Users/obf/code/jqassistant/plugin/rdbms/target/dependency-reduced-pom.xml', path='/Users/obf/code/jqassistant/plugin/rdbms/target/dependency-reduced-pom.xml', scope='PROJECT', pipeline='[com.buschmais.jqassistant.plugin.maven3.impl.scanner.MavenProjectScannerPlugin@78b293a]'. com.sun.proxy.$Proxy1853 cannot be cast to com.buschmais.jqassistant.plugin.maven3.api.model.MavenPomXmlDescriptor -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginExecutionException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <goals> -rf :jqassistant.plugin.rdbms

I used Maven 3.3.3 for the build.

obfischer commented 8 years ago

I will disabled the RDBMS plugin for the moment.

DirkMahler commented 8 years ago

Getting a ClassCastException It's definitively a bug - but: why is the file scanned?

obfischer commented 8 years ago

It is created by the Maven Shade Plugin used by the RDBMS plugin. Should I file an extra issue for that?

DirkMahler commented 8 years ago

That's clear - but why is it picked up by the scanner? Are you working with scanIncludes?

obfischer commented 8 years ago

No, it is in the target directory. I didn't change this aspect of the configuration.

obfischer commented 8 years ago

This change disabled jQAssistant at all. I will disable the execution of the jQAssistant Maven plugin at in the top level parent of the project. We have to wait for release 1.1.1 until we can continue to work on this.

obfischer commented 8 years ago

I would like to close this issue as it is only on analysing itself. Nothing more.

obfischer commented 8 years ago

Done on master branch for version 1.2.0.