Quantcast
Channel: tycho-user
Viewing all 4647 articles
Browse latest View live

Re: [tycho-user] problem with mirroring of composite P2 repository

$
0
0
I think you are able to re-map any repository URL, regardless if they are configured directly or indirectly via a composite.

The configured repositories are loaded by the Remote*RepositoryManager classes of Tycho, and p2 delegates back to the same manager when loading composite children, so the same re-map logic is used.

So just try to re-map the http://download.eclipse.org/modeling/emft/mwe/updates/releases repository as described here: http://wiki.eclipse.org/Tycho/Target_Platform/Authorization_and_Mirrors

Regards
Tobias


> -----Original Message-----
> From: tycho-user-bounces@xxxxxxxxxxx [mailto:tycho-user-
> bounces@xxxxxxxxxxx] On Behalf Of Igor Fedorenko
> Sent: Donnerstag, 23. Januar 2014 12:31
> To: tycho-user@xxxxxxxxxxx
> Subject: Re: [tycho-user] problem with mirroring of composite P2
> repository
> 
> I don't believe there is anything in P2 or Tycho that would let you map
> URLs specified in composite*.xml files to local mirrors. Unless
> Artifactory supports this directly (I don't know if it does), the
> only other way is to manually craft composite*.xml files to point at
> desired local mirrors of the children.
> 
> --
> Regards,
> Igor
> 
> On 1/23/2014, 3:57, Maxim Frolov wrote:
> > Maven Clients in our environment can only access remote repositories
> > throgh mirrors.
> >
> > A P2 repository beeing mirrored contains the following
> > compositeArtifacts.xml:
> >
> > <?xml version='1.0' encoding='UTF-8'?>
> > <?compositeArtifactRepository version='1.0.0'?>
> > <repository name='Xtext All In One (Releases)'
> >
> >
> type='org.eclipse.equinox.internal.p2.artifact.repository.CompositeArtifa
> ctRepository'
> > version='1.0.0'>
> >      <properties size='1'>
> >          <property name='p2.timestamp' value='1311823210'/>
> >      </properties>
> >      <children size='3'>
> >          <child
> >
> location='http://download.eclipse.org/modeling/emft/mwe/updates/releases'
> />
> >          <child
> >
> location='http://download.eclipse.org/modeling/m2t/xpand/updates/releases
> '/>
> >          <child
> >
> location='http://download.eclipse.org/modeling/tmf/xtext/updates/releases
> '/>
> >      </children>
> > </repository>
> >
> >
> > Maven Client using this mirror always fail with
> > [ERROR] Internal error: java.lang.RuntimeException: Failed to load p2
> > repository with ID 'artifactory.p2-eclipse' from location
> > http://artifactory:8080/p2-
> eclipse/modeling/tmf/xtext/updates/composite/releases/:
> > Unable to read repository at
> > http://artifactory-ac.soptim.net:8080/p2-
> eclipse/modeling/tmf/xtext/updates/composite/releases.
> > Unable to connect to repository
> >
> http://download.eclipse.org/modeling/emft/mwe/updates/releases/content.xm
> l:
> > Connection to http://download.eclipse.org refused: Connection timed
> out:
> > connect -> [Help 1]
> > ....
> > Caused by: org.eclipse.equinox.p2.core.ProvisionException: Unable to
> > connect to repository
> >
> http://download.eclipse.org/modeling/emft/mwe/updates/releases/content.xm
> l
> > ....
> >
> >
> > How is it possible to configure Maven Client and / or Artifactory
> Server
> > to connect to children of mirrored composite P2 repository not directly
> > but also using mirrors?
> >
> >
> > _______________________________________________
> > tycho-user mailing list
> > tycho-user@xxxxxxxxxxx
> > https://dev.eclipse.org/mailman/listinfo/tycho-user
> >
> _______________________________________________
> tycho-user mailing list
> tycho-user@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/tycho-user


Re: [tycho-user] tycho-surefire and testng

$
0
0
Yes that fixes my issue.  Now to track down the problem I'm having with TestNG. 

Thanks for all your help, Igor!

Ben

-----Original Message-----
From: tycho-user-bounces@xxxxxxxxxxx [mailto:tycho-user-bounces@xxxxxxxxxxx] On Behalf Of Igor Fedorenko
Sent: Thursday, January 23, 2014 10:51 PM
To: tycho-user@xxxxxxxxxxx
Subject: Re: [tycho-user] tycho-surefire and testng

maven-surefire-plugin must be listed under build/plugins pom.xml section. Attached is a fixed pom.xml file, which does run maven-surefire-plugin. Tests fail with classnotfound exception but I assume the project dependencies are not fully configured.

--
Regards,
Igor

On 1/23/2014, 14:51, Tracy, Benjamin J wrote:
> I further apologize for forgetting the attachment.. Sheesh.  Not a good day.
> ________________________________________
> From: Tracy, Benjamin J
> Sent: Thursday, January 23, 2014 2:50 PM
> To: Tycho user list
> Subject: RE: [tycho-user] tycho-surefire and testng
>
> I apologize.  Please find attached a tgz with everything you need to replicate what I'm seeing.   What you need to do is:
>
> cd foobar-dependencies.bundle
> mvn p2:site install
> cd ../foobar-common.bundle
> mvn install
> cd ../foobar-common.bundle.tests
> mvn install
>
> When I do that last install on the test fragment, I see two problems.  One is that the tycho-surefire plugin gets a class not found error related to TestNG.  I'm less concerned about that.  I can skip that at least for now because we don't need the whole OSGi framework to run the tests I care about.
>
> The real problem is that the maven-surefire-plugin that I'm trying to invoke in the test fragment pom never runs.  Even if I do mvn test directly it doesn't run.
>
> Again, I'm sorry for the misunderstanding about what you were looking for.  Thanks for your help.
>
> Ben
> ________________________________________
> From: tycho-user-bounces@xxxxxxxxxxx [tycho-user-bounces@xxxxxxxxxxx] 
> on behalf of Igor Fedorenko [igor@xxxxxxxxxxxxxx]
> Sent: Thursday, January 23, 2014 2:15 PM
> To: tycho-user@xxxxxxxxxxx
> Subject: Re: [tycho-user] tycho-surefire and testng
>
> "small complete standalone example" == a zip or tgz file that includes 
> pom.xml and all sources necessary to demonstrate the problem. I want 
> to be able to unpack the archive, run "mvn test" (or some other build 
> phase you specify) and see the problem for myself. I am not good at 
> guessing what other configuration elements you pom files have and what 
> happens when maven interprets those poms.
>
> --
> Regards,
> Igor
>
> On 1/23/2014, 14:09, Tracy, Benjamin J wrote:
>> Oops I forgot to mention that what I see when I run with this is that the maven surefire never runs.
>> ________________________________________
>> From: Tracy, Benjamin J
>> Sent: Thursday, January 23, 2014 2:08 PM
>> To: Tycho user list
>> Subject: RE: [tycho-user] tycho-surefire and testng
>>
>> OK here's a smaller example:
>>
>> I believe that the following snippet should cause the maven-surefire plugin to run at the test phase and the tycho surefire plugin to run later.  Am I right about that?
>>
>>           <pluginManagement>
>>                   <plugins>
>>                           <plugin>
>>                                   <artifactId>maven-surefire-plugin</artifactId>
>>                                   <version>2.16</version>
>>                                   <executions>
>>                                           <execution>
>>                                                   <phase>test</phase>
>>                                                   <goals>
>>                                                           <goal>test</goal>
>>                                                   </goals>
>>                                           </execution>
>>                                   </executions>
>>                                   <dependencies>
>>                                           <dependency>
>>                                                   <groupId>org.apache.maven.surefire</groupId>
>>                                                   <artifactId>surefire-testng</artifactId>
>>                                                   <version>2.16</version>
>>                                                   <scope>test</scope>
>>                                           </dependency>
>>                                   </dependencies>
>>                                   <configuration>
>>                                           <testSourceDirectory>src/</testSourceDirectory>
>>                                           <testClassesDirectory>target/classes/</testClassesDirectory>
>>                                   </configuration>
>>                           </plugin>
>>                           <plugin>
>>                                   <groupId>org.eclipse.tycho</groupId>
>>                                   <artifactId>tycho-surefire-plugin</artifactId>
>>                                   <version>${tycho-version}</version>
>>                                   <configuration>
>>                                           <providerHint>junit47</providerHint>
>>                                           <useSystemClassLoader>false</useSystemClassLoader>
>>                                           <dependencies>
>>                                                   <dependency>
>>                                                           <type>eclipse-plugin</type>
>>                                                           <artifactId>apm-common.bundle</artifactId>
>>                                                           <version>0.0.0</version>
>>                                                   </dependency>
>>                                           </dependencies>
>>
>>                                   </configuration>
>>                                   <executions>
>>                                           <execution>
>>                                                   <id>JUnitTest</id>
>>                                                   <goals>
>>                                                           <goal>test</goal>
>>                                                   </goals>
>>                                                   <phase>install</phase>
>>                                           </execution>
>>                                   </executions>
>>                           </plugin>
>>                   </plugins>
>>           </pluginManagement>
>>
>> ________________________________________
>> From: tycho-user-bounces@xxxxxxxxxxx [tycho-user-bounces@xxxxxxxxxxx] 
>> on behalf of Igor Fedorenko [igor@xxxxxxxxxxxxxx]
>> Sent: Thursday, January 23, 2014 11:28 AM
>> To: Tycho user list
>> Subject: Re: [tycho-user] tycho-surefire and testng
>>
>> Please provide small complete standalone example I can "mvn test" and 
>> see the exact failure you get? Also explain what you believe should 
>> happen to make the error go away.
>>
>> --
>> Regards,
>> Igor
>>
>> On 1/23/2014, 10:12, Tracy, Benjamin J wrote:
>>> Thanks for taking the time.  I've attached a few pom files:  the parent, the test fragment and the target platform pom.   It's not a tiny example, but it's still pretty general.
>>>
>>> Thanks in advance!
>>> Ben
>>>
>>>
>>> ________________________________________
>>> From: tycho-user-bounces@xxxxxxxxxxx 
>>> [tycho-user-bounces@xxxxxxxxxxx] on behalf of Igor Fedorenko 
>>> [igor@xxxxxxxxxxxxxx]
>>> Sent: Thursday, January 23, 2014 9:57 AM
>>> To: tycho-user@xxxxxxxxxxx
>>> Subject: Re: [tycho-user] tycho-surefire and testng
>>>
>>> Tycho is supposed to map OSGi dependencies back to pom.xml model, so 
>>> at least theoretically is should be possible to use "plain"
>>> maven-surefire-plugin for Tycho projects. Whether this will work in 
>>> practice depends on your project structure and dependencies your 
>>> project uses. If you can provide a small standalone example that 
>>> shows your setup I may be able to provide more specific recommendation.
>>>
>>> --
>>> Regards,
>>> Igor
>>>
>>> On 1/23/2014, 9:48, Tracy, Benjamin J wrote:
>>>>> Are you sure you get up to the correct lifecycle phase? Running 
>>>>> mvn test will not do, as the tycho surefire plugin hooks into the 
>>>>> integration-test phase by default:
>>>>> http://www.eclipse.org/tycho/sitedocs/tycho-surefire/tycho-surefir
>>>>> e-plugin/test-mojo.html
>>>>
>>>> Thanks for your quick response!
>>>>
>>>> I noticed that the tycho-surefire runs at integration test.  I had 
>>>> given up on that plugin because there was no provider hint for 
>>>> TestNG (which led me to believe what I had read that TestNG was not 
>>>> supported) and when I give the JUnit 4.7 provider hint, I get an 
>>>> exception (ClassNotFound on OsgiEnabledJUintCoreProvider).  So I 
>>>> had added "<skip>true</skip>" to the tycho-surefire so that I could 
>>>> try to get TestNG working the regular way and that isn't working for me either.
>>>>
>>>> What am I supposed to do to get TestNG to work?
>>>>
>>>> Ben
>>>>
>>>>
>>>> _______________________________________________
>>>> tycho-user mailing list
>>>> tycho-user@xxxxxxxxxxx
>>>> https://dev.eclipse.org/mailman/listinfo/tycho-user
>>>>
>>> _______________________________________________
>>> tycho-user mailing list
>>> tycho-user@xxxxxxxxxxx
>>> https://dev.eclipse.org/mailman/listinfo/tycho-user
>>>
>>>
>>>
>>> _______________________________________________
>>> tycho-user mailing list
>>> tycho-user@xxxxxxxxxxx
>>> https://dev.eclipse.org/mailman/listinfo/tycho-user
>>>
>> _______________________________________________
>> tycho-user mailing list
>> tycho-user@xxxxxxxxxxx
>> https://dev.eclipse.org/mailman/listinfo/tycho-user
>> _______________________________________________
>> tycho-user mailing list
>> tycho-user@xxxxxxxxxxx
>> https://dev.eclipse.org/mailman/listinfo/tycho-user
>>
> _______________________________________________
> tycho-user mailing list
> tycho-user@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/tycho-user
>
>
>
> _______________________________________________
> tycho-user mailing list
> tycho-user@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/tycho-user
>

[tycho-user] building p2 repo w/o validating it

$
0
0
Hi,

By default, Tycho makes sure that the content of a p2 repo being built is consistent.
Is there a way to disable this consistency check and have tycho include in the produced repo any content?


Thanks

Pascal

Re: [tycho-user] p2 provisioning from DMG / changed file structure

$
0
0
Hey Justin,

I am glad to hear that I am not the only person trying to use this workflow:
- creating and signing a DMG file as final step of an
- rcp product build
- using tycho
- updating the product using p2...

What do you mean by "updates will work with p2/configuration in the app itself" ? Usually, the p2 update process is storing the newly installed/updated features, plugins, p2 and configuration folders in another directory which we have specified in our config.ini file:
osgi.configuration.area=@xxxxxxxxx/.ourproduct/configuration
eclipse.p2.data.area=@xxxxxxxxxx/../p2


If the p2 update worked as before changing the file structure I would expect that not the DMG file itself, but only the folders in the external directory would have to be changed.
Then the signing of the DMG file would, hopefully, not be a problem. As I am only a p2 beginner, please tell me if I don't see the obvious. Will the files inside the dmg folder always be touched during the p2 provisioning process?


I am starting to think about using a pkg file instead of the dmg as well, but, knowing about the disadvantages (our customers are used to the dmg file), it would be kind of a last resort for us.

Kind regards,
Sonja

Am 23.01.14 17:24, schrieb Justin Dolezy:
Hi Sonja,

I'm also interested in this at the moment as wanting to do the same.

Updates will work with p2/configuration in the .app itself however the .app shouldn't change as when signing to keep Gatekeeper happy you then get the annoying "do you want to allow YourApp to accept incoming connections" from the firewall if the .app is changed,  I believe.

Doesn't having the p2/configuration folders outside the .app also mean a .pkg package installer is required instead of simple .dmg distribution?

Hmm and the .app is going to change on update when features/plugins are downloaded..! So a new signed .app is needed no?

Apologies for thinking out aloud :)
Hopefully someone out there is already doing p2 updates on a signed DMG and can share some knowledge?!

Regards,
Justin

On 23 Jan 2014, at 09:33, "Sonja Subicin" <Sonja-Subicin@xxxxxx> wrote:

Hey there,
we are discovering an issue enabling the p2 provisioning for the DMG file we have created.
We have the following setup:
We have configured a multi-platform tycho build. The provisioning of the exported product works fine for all platforms - BUT


THEN, we are using a shell script to create the dmg file.

This script is using a template.dmg file. I have to add, and this is the important part, that we are changing the file structure when running the shell script.

The dmg template contains the following file structure
application.app
---Contents
------Info.plist
------MacOS
---------application.app
---------application.ini
------Resources
---------Java
------------configuration
------------features
------------p2
------------plugins
------launcher.icns


whereas the exported product has the following, flat file structure: -application -application.app -artifacts.xml -configuration -features -p2 -plugins

Using the shell script, we are replacing the folders configuration, features, p2, plugins with the folders from our tycho-built product.
The info.plist File etc. are staying unchanged.

I believe the changes of the folder structure to be the problem, but I have no idea, how to fix this.
In our config.ini, we have the following parameters set:

org.eclipse.update.reconcile=false
eclipse.p2.profile=DefaultProfile
osgi.framework=file\:plugins/org.eclipse.osgi_3.8.2.v20130124-134944.jar
osgi.classloader.type=parallel
equinox.use.ds=true
osgi.bundles=reference\:file\:org.eclipse.equinox.simpleconfigurator_1.0.301.v20120914-163612.jar@1\:start
osgi.configuration.area=@xxxxxxxxx/.ourproduct/configuration
p2.gathering=true
org.eclipse.equinox.simpleconfigurator.configUrl=file\:org.eclipse.equinox.simpleconfigurator/bundles.info
eclipse.product=com.ourproduct.client.app.product
osgi.splashPath=platform\:/base/plugins/com.ourproduct.client.app
osgi.framework.extensions=
osgi.bundles.defaultStartLevel=4
eclipse.application=com.ourproduct.client.app.application
eclipse.p2.data.area=@xxxxxxxxxx/../p2

The features we want to update are not being downloaded to the defined folder @user.home/.ourproduct/
We are getting provisioning error code 10001.

Any idea would be appreciated!

Greetings from Cologne,
Sonja
_______________________________________________
tycho-user mailing list
tycho-user@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/tycho-user
_______________________________________________
tycho-user mailing list
tycho-user@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/tycho-user



Re: [tycho-user] p2 provisioning from DMG / changed file structure

$
0
0
In an Eclipse install produced by Tycho, p2 director or a couple other build tools, all the files are under p2's responsibility. As such, moving things around will just end up confusing things for when p2 will try to add more plugins.

However know that since Tycho 0.19.0 (though I believe it is possible with 0.17 and 0.18), you can produce a mac bundle.
IIrc this is automatically enabled if the application name ends with .app
Note though that the produced layout will not be exactly like what you want. Instead, you will find directly in the .app folder the features and plugins folders, but the resulting app is fully updatable with p2.


HTH

Pascal

On 01/23/2014 04:33 AM, Sonja Subicin wrote:
Hey there,
we are discovering an issue enabling the p2 provisioning for the DMG file we have created.
We have the following setup:
We have configured a multi-platform tycho build. The provisioning of the exported product works fine for all platforms - BUT


THEN, we are using a shell script to create the dmg file.

This script is using a template.dmg file. I have to add, and this is the important part, that we are changing the file structure when running the shell script.

The dmg template contains the following file structure
application.app
---Contents
------Info.plist
------MacOS
---------application.app
---------application.ini
------Resources
---------Java
------------configuration
------------features
------------p2
------------plugins
------launcher.icns


whereas the exported product has the following, flat file structure: -application -application.app -artifacts.xml -configuration -features -p2 -plugins

Using the shell script, we are replacing the folders configuration, features, p2, plugins with the folders from our tycho-built product.
The info.plist File etc. are staying unchanged.

I believe the changes of the folder structure to be the problem, but I have no idea, how to fix this.
In our config.ini, we have the following parameters set:

org.eclipse.update.reconcile=false
eclipse.p2.profile=DefaultProfile
osgi.framework=file\:plugins/org.eclipse.osgi_3.8.2.v20130124-134944.jar
osgi.classloader.type=parallel
equinox.use.ds=true
osgi.bundles=reference\:file\:org.eclipse.equinox.simpleconfigurator_1.0.301.v20120914-163612.jar@1\:start
osgi.configuration.area=@xxxxxxxxx/.ourproduct/configuration
p2.gathering=true
org.eclipse.equinox.simpleconfigurator.configUrl=file\:org.eclipse.equinox.simpleconfigurator/bundles.info
eclipse.product=com.ourproduct.client.app.product
osgi.splashPath=platform\:/base/plugins/com.ourproduct.client.app
osgi.framework.extensions=
osgi.bundles.defaultStartLevel=4
eclipse.application=com.ourproduct.client.app.application
eclipse.p2.data.area=@xxxxxxxxxx/../p2

The features we want to update are not being downloaded to the defined folder @user.home/.ourproduct/
We are getting provisioning error code 10001.

Any idea would be appreciated!

Greetings from Cologne,
Sonja
_______________________________________________
tycho-user mailing list
tycho-user@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/tycho-user


[tycho-user] Problem with qualifier replacement / expanded version

$
0
0
Hi All,

I'm having a problem that looks like Tycho getting confused (or loosing) qualifier replacement information in a single reactor build.

The error message I get is:
[ERROR] Failed to execute goal org.eclipse.tycho:tycho-packaging-plugin:0.19.0:build-qualifier-aggregator (default-build-qualifier-aggregator) on project org.eclipse.gyrex.features.addons.jersey.jaxrs: Execution default-build-qualifier-aggregator of goal org.eclipse.tycho:tycho-packaging-plugin:0.19.0:build-qualifier-aggregator failed: Project org.eclipse.gyrex.addons.jersey:org.eclipse.gyrex.http.jersey:eclipse-plugin:1.0.0-SNAPSHOT does not have expanded version -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.eclipse.tycho:tycho-packaging-plugin:0.19.0:build-qualifier-aggregator (default-build-qualifier-aggregator) on project org.eclipse.gyrex.features.addons.jersey.jaxrs: Execution default-build-qualifier-aggregator of goal org.eclipse.tycho:tycho-packaging-plugin:0.19.0:build-qualifier-aggregator failed: Project org.eclipse.gyrex.addons.jersey:org.eclipse.gyrex.http.jersey:eclipse-plugin:1.0.0-SNAPSHOT does not have expanded version
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:224)


at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)

at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)

at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:84)

at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:59)

at org.apache.maven.lifecycle.internal.LifecycleStarter.singleThreadedBuild(LifecycleStarter.java:183)

at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:161)

at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:317)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:152)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:555)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:214)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:158)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)


at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

at java.lang.reflect.Method.invoke(Method.java:606)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)


at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)


at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.PluginExecutionException: Execution default-build-qualifier-aggregator of goal org.eclipse.tycho:tycho-packaging-plugin:0.19.0:build-qualifier-aggregator failed: Project org.eclipse.gyrex.addons.jersey:org.eclipse.gyrex.http.jersey:eclipse-plugin:1.0.0-SNAPSHOT does not have expanded version
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:115)


at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)

... 19 more
Caused by: java.lang.IllegalStateException: Project org.eclipse.gyrex.addons.jersey:org.eclipse.gyrex.http.jersey:eclipse-plugin:1.0.0-SNAPSHOT does not have expanded version
at org.eclipse.tycho.core.osgitools.DefaultReactorProject.getExpandedVersion(DefaultReactorProject.java:190)


at org.eclipse.tycho.buildversion.BuildQualifierAggregatorMojo$1.visitArtifact(BuildQualifierAggregatorMojo.java:90)

at org.eclipse.tycho.buildversion.BuildQualifierAggregatorMojo$1.visitPlugin(BuildQualifierAggregatorMojo.java:85)

at org.eclipse.tycho.core.osgitools.AbstractArtifactDependencyWalker.traversePlugin(AbstractArtifactDependencyWalker.java:205)

at org.eclipse.tycho.core.osgitools.AbstractArtifactDependencyWalker.traverseFeature(AbstractArtifactDependencyWalker.java:85)

at org.eclipse.tycho.core.osgitools.AbstractArtifactDependencyWalker.traverseFeature(AbstractArtifactDependencyWalker.java:62)

at org.eclipse.tycho.core.osgitools.EclipseFeatureProject$1.walk(EclipseFeatureProject.java:35)

at org.eclipse.tycho.buildversion.BuildQualifierAggregatorMojo.getBuildTimestamp(BuildQualifierAggregatorMojo.java:68)

at org.eclipse.tycho.buildversion.BuildQualifierMojo.calculateQualifiedVersion(BuildQualifierMojo.java:157)

at org.eclipse.tycho.buildversion.BuildQualifierMojo.execute(BuildQualifierMojo.java:131)

at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:106)

	... 20 more



However, according to the log, the problematic module is build before and gets a proper version:

[INFO] ------------------------------------------------------------------------
[INFO] Building org.eclipse.gyrex.http.jersey 1.0.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
...
[INFO] --- tycho-packaging-plugin:0.19.0:build-qualifier (default-build-qualifier) @ org.eclipse.gyrex.http.jersey ---
[DEBUG] Configuring mojo org.eclipse.tycho:tycho-packaging-plugin:0.19.0:build-qualifier from plugin realm ClassRealm[plugin>org.eclipse.tycho:tycho-packaging-plugin:0.19.0, parent: sun.misc.Launcher$AppClassLoader@4821e115]
[DEBUG] Configuring mojo 'org.eclipse.tycho:tycho-packaging-plugin:0.19.0:build-qualifier' with basic configurator -->
[DEBUG] (f) baseDir = /Users/user/git/gyrex-server/jaxrs/bundles/org.eclipse.gyrex.http.jersey
[DEBUG] (f) execution = org.eclipse.tycho:tycho-packaging-plugin:0.19.0:build-qualifier {execution: default-build-qualifier}
[DEBUG] (s) format = 'v'yyyyMMdd-HHmm
[DEBUG] (f) packaging = eclipse-plugin
[DEBUG] (f) project = MavenProject: org.eclipse.gyrex.addons.jersey:org.eclipse.gyrex.http.jersey:1.0.0-SNAPSHOT @ /Users/user/git/gyrex-server/jaxrs/bundles/org.eclipse.gyrex.http.jersey/pom.xml


[DEBUG] (f) session = org.apache.maven.execution.MavenSession@44563324
[DEBUG] (f) timestampProvider = jgit
[DEBUG] -- end configuration --
[INFO] The project's OSGi version is 1.0.0.v20140128-1652
[INFO]
[INFO] --- tycho-packaging-plugin:0.19.0:validate-id (default-validate-id) @ org.eclipse.gyrex.http.jersey ---




Any ideas?


-Gunnar



--
Gunnar Wagenknecht
gunnar@xxxxxxxxxxxxxxx



Re: [tycho-user] Problem with qualifier replacement / expanded version

$
0
0
On 2014-01-28 21:13:38 +0000, Gunnar Wagenknecht said:
The error message I get is:
[ERROR] Failed to execute goal
org.eclipse.tycho:tycho-packaging-plugin:0.19.0:build-qualifier-aggregator
(default-build-qualifier-aggregator) on project
org.eclipse.gyrex.features.addons.jersey.jaxrs: Execution
default-build-qualifier-aggregator of goal
org.eclipse.tycho:tycho-packaging-plugin:0.19.0:build-qualifier-aggregator
failed: Project
org.eclipse.gyrex.addons.jersey:org.eclipse.gyrex.http.jersey:eclipse-plugin:1.0.0-SNAPSHOT


does not have expanded version

FWIW, this seems to be related to the "test" goal, i.e. a "mvn clean compile" works fine as well as a "mvn clean verify". Just a "mvn clean test" breaks.


-Gunnar


-- Gunnar Wagenknecht gunnar@xxxxxxxxxxxxxxx



Re: [tycho-user] Problem with qualifier replacement / expanded version

$
0
0
Helle Gunnar,

Tycho and the test goal are no good friends. Have you tried mvn
package or mvn install? Some lifecycle steps of maven have a strange
behavior within the tycho extension, so you have no other chance than
use a additional phase.

Kai

> Am 28.01.2014 um 22:32 schrieb Gunnar Wagenknecht <gunnar@xxxxxxxxxxxxxxx>:
>
> On 2014-01-28 21:13:38 +0000, Gunnar Wagenknecht said:
>> The error message I get is:
>> [ERROR] Failed to execute goal
>> org.eclipse.tycho:tycho-packaging-plugin:0.19.0:build-qualifier-aggregator
>> (default-build-qualifier-aggregator) on project
>> org.eclipse.gyrex.features.addons.jersey.jaxrs: Execution
>> default-build-qualifier-aggregator of goal
>> org.eclipse.tycho:tycho-packaging-plugin:0.19.0:build-qualifier-aggregator
>> failed: Project
>> org.eclipse.gyrex.addons.jersey:org.eclipse.gyrex.http.jersey:eclipse-plugin:1.0.0-SNAPSHOT does not have expanded version
>
> FWIW, this seems to be related to the "test" goal, i.e. a "mvn clean compile" works fine as well as a "mvn clean verify". Just a "mvn clean test" breaks.
>
> -Gunnar
>
>
> --
> Gunnar Wagenknecht
> gunnar@xxxxxxxxxxxxxxx
>
>
> _______________________________________________
> tycho-user mailing list
> tycho-user@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/tycho-user


Re: [tycho-user] How to add JUnit RunListener to Tycho Surefire Plugin

$
0
0
Hey Vlado,

I don't think tycho-surefire-plugin currently allow addition of a Listener. That would be a valid enhancement request, you should create it in Bugzilla.

Cheers,
--
Mickael Istria
Eclipse developer at JBoss, by Red Hat
My blog - My Tweets

Re: [tycho-user] Problem with qualifier replacement / expanded version

$
0
0
If you have a small, simple example that demonstrates the problem with "mvn test", please open a bug report. I'd be interested in making this work (eventually at least) - Tycho should not behave differently than other Maven builds (unless absolutely needed).

Regards
Tobias


> -----Original Message-----
> From: tycho-user-bounces@xxxxxxxxxxx [mailto:tycho-user-
> bounces@xxxxxxxxxxx] On Behalf Of Kai Zimmermann
> Sent: Mittwoch, 29. Januar 2014 01:02
> To: Tycho user list
> Subject: Re: [tycho-user] Problem with qualifier replacement / expanded
> version
> 
> Helle Gunnar,
> 
> Tycho and the test goal are no good friends. Have you tried mvn
> package or mvn install? Some lifecycle steps of maven have a strange
> behavior within the tycho extension, so you have no other chance than
> use a additional phase.
> 
> Kai
> 
> > Am 28.01.2014 um 22:32 schrieb Gunnar Wagenknecht
> <gunnar@xxxxxxxxxxxxxxx>:
> >
> > On 2014-01-28 21:13:38 +0000, Gunnar Wagenknecht said:
> >> The error message I get is:
> >> [ERROR] Failed to execute goal
> >> org.eclipse.tycho:tycho-packaging-plugin:0.19.0:build-qualifier-
> aggregator
> >> (default-build-qualifier-aggregator) on project
> >> org.eclipse.gyrex.features.addons.jersey.jaxrs: Execution
> >> default-build-qualifier-aggregator of goal
> >> org.eclipse.tycho:tycho-packaging-plugin:0.19.0:build-qualifier-
> aggregator
> >> failed: Project
> >> org.eclipse.gyrex.addons.jersey:org.eclipse.gyrex.http.jersey:eclipse-
> plugin:1.0.0-SNAPSHOT does not have expanded version
> >
> > FWIW, this seems to be related to the "test" goal, i.e. a "mvn clean
> compile" works fine as well as a "mvn clean verify". Just a "mvn clean
> test" breaks.
> >
> > -Gunnar
> >
> >
> > --
> > Gunnar Wagenknecht
> > gunnar@xxxxxxxxxxxxxxx
> >
> >
> > _______________________________________________
> > tycho-user mailing list
> > tycho-user@xxxxxxxxxxx
> > https://dev.eclipse.org/mailman/listinfo/tycho-user
> _______________________________________________
> tycho-user mailing list
> tycho-user@xxxxxxxxxxx
> https://dev.eclipse.org/mailman/listinfo/tycho-user

Re: [tycho-user] Problem with qualifier replacement / expanded version

$
0
0
On 2014-01-29 09:28:01 +0000, Oberlies, Tobias said:

If you have a small, simple example that demonstrates the problem with "mvn test", please open a bug report. I'd be interested in making this work (eventually at least) - Tycho should not behave differently than other Maven builds (unless absolutely needed).

Thanks Tobias! I've opened https://bugs.eclipse.org/426837. However, I'm afraid it's not that small. It does involve a few projects. :( But it should be easy to setup & reproduce, given that all is EPL and at Eclipse. :)


-Gunnar



--
Gunnar Wagenknecht
gunnar@xxxxxxxxxxxxxxx



Re: [tycho-user] building p2 repo w/o validating it

$
0
0
Hi,

> By default, Tycho makes sure that the content of a p2 repo being built
> is consistent.
> Is there a way to disable this consistency check and have tycho include
> in the produced repo any content?

not an answer to your question, but on a related note: I wonder what the
intention is behind the tycho-p2-repisotory-plugin:verify-repository
goal [1]. As far as I can see, it is not bound by any of Tycho's packagings.

Is repository verification already being done as part of
tycho-p2-repisotory-plugin:assemble-repository? Intuitively, I would
expect that assemble-repository does no such thing and that skipping the
execution of verify-repository would solve Pascal's problem. But
apparently, that's not how the latter goal is used by Tycho ATM (i.e.,
not at all).

Best wishes,

Andreas

[1]
<http://eclipse.org/tycho/sitedocs/tycho-p2/tycho-p2-repository-plugin/verify-repository-mojo.html>

-- 
Codetrails UG (haftungsbeschränkt)
The knowledge transfer company

Robert-Bosch-Str. 7, 64293 Darmstadt
Mobile: +49-170-811-3791
http://www.codetrails.com/

Managing Director: Dr. Marcel Bruch
Handelsregister: Darmstadt HRB 91940

Re: [tycho-user] Problem with qualifier replacement / expanded version

$
0
0
Whether or not the code is EPL and hosted at Eclipse does not really
matter. Going through your entire codebase to try to figure out what is
wrong there is a significant effort. I generally ignore bugreports that
do not come with "a small, simple example that demonstrates the problem".

--
Regards,
Igor

On 1/29/2014, 5:07, Gunnar Wagenknecht wrote:
On 2014-01-29 09:28:01 +0000, Oberlies, Tobias said:

If you have a small, simple example that demonstrates the problem with
"mvn test", please open a bug report. I'd be interested in making this
work (eventually at least) - Tycho should not behave differently than
other Maven builds (unless absolutely needed).

Thanks Tobias! I've opened https://bugs.eclipse.org/426837. However, I'm afraid it's not that small. It does involve a few projects. :( But it should be easy to setup & reproduce, given that all is EPL and at Eclipse. :)

-Gunnar




Re: [tycho-user] Creating a Product and then updating via Update Site

$
0
0
Hi Laurent,

On Thu, Jan 16, 2014 at 4:49 PM, Laurent PETIT <laurent.petit@xxxxxxxxx> wrote:
Hi Paul,Â

So thanks to you and the link, I've been able to fix my problem. I had to remove the ccw feature definition from the product features list, and instead add a requires.x.name to my product's ccw.p2.inf file.

And the final step is to manually invoke the Director to install ccw.feature.feature.group to the product after the fact.

This is why I'm coming back to you. Since I've removed ccw.feature from the product features list, I don't find feature artifacts in my product's target/repository repository anymore. Before that, it was easy to point the Director to this directory.
So Ive pointed instead the directory to a relative path like ../ccw.updatesite/target/repository.

I think others have answered this already, but you don't need to remove your ccw feature from your product to update the require range using the ccw.p2.inf. The p2.inf will override the defaults generated by the product require. That will also still allow it to show up in your build p2 repo.


It's the same for any other feature you'd like to allow independent updating in your product. You need to find it's "inclusion" point (either in your .product file, or in a feature) and use the p2.inf to broaden the requirement range.

Later,
PW

--
Paul Webster
Hi floor. Make me a sammich! - GIR

[tycho-user] tycho-versions-plugin:set-version only modifies features, not plugins

$
0
0

Hello, tycho-user list members

 

We have an Eclipse application that consists of hundreds of plugins grouped into a number of features. Tycho is used to build an update site that provides all features. To make the development easier, all plugins have version 1.0.0 in manifests and all dependencies on our plugins have version 0.0.0.

 

I want to automatically set version to all plugins and features during every build, so that instead of version 1.0.0 they appear on the update site as having some meaningful version, say, 3.14.${buildNumber} (buildNumber property is passed as a maven command line argument). This will be done only on a build server (developers can switch off the plugin execution using maven profile). I tried to use tycho-versions-plugin to achieve that by adding these lines to the master pom:

<plugin>

     <groupId>org.eclipse.tycho</groupId>

     <artifactId>tycho-versions-plugin</artifactId>

     <version>${tycho.version}</version>

     <executions>

          <execution>

                <configuration>

                     <newVersion>3.14.${buildNumber}</newVersion>

                </configuration>

                <goals>

                     <goal>set-version</goal>

                </goals>

                <id>set-version-all</id>

                <phase>validate</phase>

          </execution>

          <execution>

               <configuration>

                    <newVersion>1.0.0-SNAPSHOT</newVersion>

                </configuration>

                <inherited>false</inherited>

                <goals>

                     <goal>set-version</goal>

                </goals>

                <id>restore-version-master</id>

                <phase>validate</phase>

          </execution>

     </executions>

</plugin>

2nd execution was required because the first one doesn’t replace parent version in child poms. Master pom doesn’t go to the update site, so it’s ok to restore it to 1.0.0-SNAPSHOT.

This code is being run on a build server, where poms and manifests get rewritten with the latest version from SVN before every build anyway, so I can pollute them by calling tycho-versions-plugin.

 

Here is what I get in the log for a typical plugin:

build 29-jan-2014 13:17:21 [INFO] ------------------------------------------------------------------------

build 29-jan-2014 13:17:21 [INFO] Building com.mycompany.myplugin 1.0.0

build 29-jan-2014 13:17:21 [INFO] ------------------------------------------------------------------------

build 29-jan-2014 13:17:21 [INFO]

build 29-jan-2014 13:17:21 [INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ com.mycompany.myplugin ---

build 29-jan-2014 13:17:21 [INFO] Deleting C:\<SVN_ROOT>\build\com.mycompany.myplugin

build 29-jan-2014 13:17:21 [INFO]

build 29-jan-2014 13:17:21 [INFO] --- tycho-packaging-plugin:0.19.0:build-qualifier (default-build-qualifier) @ com.mycompany.myplugin ---

build 29-jan-2014 13:17:21 [INFO] The project's OSGi version is 1.0.0

build 29-jan-2014 13:17:21 [INFO]

build 29-jan-2014 13:17:21 [INFO] --- tycho-packaging-plugin:0.19.0:validate-id (default-validate-id) @ com.mycompany.myplugin ---

build 29-jan-2014 13:17:21 [INFO]

build 29-jan-2014 13:17:21 [INFO] --- tycho-packaging-plugin:0.19.0:validate-version (default-validate-version) @ com.mycompany.myplugin ---

build 29-jan-2014 13:17:21 [INFO]

build 29-jan-2014 13:17:21 [INFO] --- tycho-versions-plugin:0.19.0:set-version (set-version-all) @ com.mycompany.myplugin ---

build 29-jan-2014 13:17:21 [INFO] Making changes in C:\<SVN_ROOT>\plugins\com.mycompany.myplugin

build 29-jan-2014 13:17:21 [INFO]   pom.xml//project/version: 1.0.0 => 3.14.171

build 29-jan-2014 13:17:21 [INFO]   META-INF/MANIFEST.MF//Bundle-Version: 1.0.0 => 3.14.171

build 29-jan-2014 13:17:21 [INFO]   META-INF/MANIFEST.MF//Export-Package//version: 1.0.0 => 3.14.171

build 29-jan-2014 13:17:21 [INFO] --- maven-resources-plugin:2.4.3:resources (default-resources) @ com.mycompany.myplugin ---

build 29-jan-2014 13:17:21 [INFO]

build 29-jan-2014 13:17:21 [INFO] --- tycho-compiler-plugin:0.19.0:compile (default-compile) @ com.mycompany.myplugin ---

build 29-jan-2014 13:17:21 [INFO] Compiling 2 source files to C:\<SVN_ROOT>\build\com.mycompany.myplugin\classes

build 29-jan-2014 13:17:22 [INFO]

build 29-jan-2014 13:17:22 [INFO] --- maven-resources-plugin:2.4.3:testResources (default-testResources) @ com.mycompany.myplugin ---

build 29-jan-2014 13:17:22 [INFO]

build 29-jan-2014 13:17:22 [INFO] --- tycho-packaging-plugin:0.19.0:package-plugin (default-package-plugin) @ com.mycompany.myplugin ---

build 29-jan-2014 13:17:22 [INFO] Building jar: C:\<SVN_ROOT>\build\com.mycompany.myplugin\com.mycompany.myplugin-1.0.0.jar

build 29-jan-2014 13:17:22 [INFO]

build 29-jan-2014 13:17:22 [INFO] --- tycho-p2-plugin:0.19.0:p2-metadata-default (default-p2-metadata-default) @ com.mycompany.myplugin ---

build 29-jan-2014 13:17:22 [INFO]

build 29-jan-2014 13:17:22 [INFO] --- maven-jarsigner-plugin:1.3.1:sign (sign) @ com.mycompany.myplugin ---

build 29-jan-2014 13:17:22 [INFO] 1 archive(s) processed

build 29-jan-2014 13:17:22 [INFO]                                                                        

This results in com.mycompany.myplugin-1.0.0.jar with version 1.0.0 in the manifest.

 

But for all features the version gets changed!

build 29-jan-2014 13:17:26 [INFO] ------------------------------------------------------------------------

build 29-jan-2014 13:17:26 [INFO] Building com.mycompany.myfeature 1.0.0

build 29-jan-2014 13:17:26 [INFO] ------------------------------------------------------------------------

build 29-jan-2014 13:17:26 [INFO]

build 29-jan-2014 13:17:26 [INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ com.mycompany.myfeature ---

build 29-jan-2014 13:17:26 [INFO] Deleting C:\<SVN_ROOT>\build\com.mycompany.myfeature

build 29-jan-2014 13:17:26 [INFO]

build 29-jan-2014 13:17:26 [INFO] --- tycho-packaging-plugin:0.19.0:build-qualifier-aggregator (default-build-qualifier-aggregator) @ com.mycompany.myfeature ---

build 29-jan-2014 13:17:26 [INFO] The project's OSGi version is 1.0.0

build 29-jan-2014 13:17:26 [INFO]

build 29-jan-2014 13:17:26 [INFO] --- tycho-packaging-plugin:0.19.0:validate-id (default-validate-id) @ com.mycompany.myfeature ---

build 29-jan-2014 13:17:26 [INFO]

build 29-jan-2014 13:17:26 [INFO] --- tycho-packaging-plugin:0.19.0:validate-version (default-validate-version) @ com.mycompany.myfeature ---

build 29-jan-2014 13:17:26 [INFO]

build 29-jan-2014 13:17:26 [INFO] --- tycho-versions-plugin:0.19.0:set-version (set-version-all) @ com.mycompany.myfeature ---

build 29-jan-2014 13:17:26 [INFO] Making changes in C:\<SVN_ROOT>\features\com.mycompany.myfeature

build 29-jan-2014 13:17:26 [INFO]   pom.xml//project/version: 1.0.0 => 3.14.171

build 29-jan-2014 13:17:26 [INFO]   feature.xml//feature/@version: 1.0.0 => 3.14.171

build 29-jan-2014 13:17:26 [INFO]

build 29-jan-2014 13:17:26 [INFO] --- tycho-packaging-plugin:0.19.0:package-feature (default-package-feature) @ com.mycompany.myfeature ---

build 29-jan-2014 13:17:26 [INFO] Building jar: C:\<SVN_ROOT>\build\com.mycompany.myfeature\com.mycompany.myfeature-1.0.0.jar

build 29-jan-2014 13:17:26 [INFO]

build 29-jan-2014 13:17:26 [INFO] --- tycho-p2-plugin:0.19.0:p2-metadata-default (default-p2-metadata-default) @ com.mycompany.myfeature ---

build 29-jan-2014 13:17:26 [INFO]

build 29-jan-2014 13:17:26 [INFO] --- tycho-p2-plugin:0.19.0:feature-p2-metadata (default-feature-p2-metadata) @ com.mycompany.myfeature ---

build 29-jan-2014 13:17:26 [INFO]

build 29-jan-2014 13:17:26 [INFO] --- maven-jarsigner-plugin:1.3.1:sign (sign) @ com.mycompany.myfeature ---

build 29-jan-2014 13:17:26 [INFO] 1 archive(s) processed

This results in com.mycompany.myfeature-3.14.171.jar (though the log says it is 1.0.0) with version 3.14.171 in the manifest.

 

As a result, tycho-versions-plugin updates the versions in all required files, but for some reason this has no impact on plugins, only feature versions really get updated. How can I update plugin versions too? Or maybe I’m doing something conceptually wrong?

 

As far as I know, tycho-packaging-plugin can only set the qualifier. We can change plugin versions in manifests to 1.0.0.qualifier, but we don’t really want to change them after every release to 3.14.qualifier, then 3.15… and so on. I have also tried to call tycho-packaging-plugin:build-qualifier after calling tycho-versions-plugin:set-version, but the result was exactly the same (only feature versions were updated).

 

Any help will be appreciated.

 

Thank you

 

Nikolay Glazyrin


Re: [tycho-user] tycho-versions-plugin:set-version only modifies features, not plugins

$
0
0
First, don't use tycho-versions-plugin in build lifecycle, it is only
meant for direct invocation.

As for plugin versions not being replaced,
tycho-versions-plugin:set-version works as "change version" refactoring,
it starts with some initial version changed (current project by default,
but this is configurable), then recursively finds and updates all
referenced to the changed version in pom.xml and corresponding
eclipse/osgi metadata files. If this does not explain the behaviour you
see, please provide a small standalone example that demonstrates the
problem and I'll have a look.

--
Regards,
Igor

On 1/29/2014, 14:52, Nikolay Glazyrin wrote:
Hello, tycho-user list members

We have an Eclipse application that consists of hundreds of plugins
grouped into a number of features. Tycho is used to build an update site
that provides all features. To make the development easier, all plugins
have version 1.0.0 in manifests and all dependencies on our plugins have
version 0.0.0.

I want to automatically set version to all plugins and features during
every build, so that instead of version 1.0.0 they appear on the update
site as having some meaningful version, say, 3.14.${buildNumber}
(buildNumber property is passed as a maven command line argument). This
will be done only on a build server (developers can switch off the
plugin execution using maven profile). I tried to use
tycho-versions-plugin to achieve that by adding these lines to the
master pom:

<plugin>

      <groupId>org.eclipse.tycho</groupId>

      <artifactId>tycho-versions-plugin</artifactId>

      <version>${tycho.version}</version>

      <executions>

           <execution>

                 <configuration>

                      <newVersion>3.14.${buildNumber}</newVersion>

                 </configuration>

                 <goals>

                      <goal>set-version</goal>

                 </goals>

                 <id>set-version-all</id>

                 <phase>validate</phase>

           </execution>

           <execution>

                <configuration>

                     <newVersion>1.0.0-SNAPSHOT</newVersion>

                 </configuration>

                 <inherited>false</inherited>

                 <goals>

                      <goal>set-version</goal>

                 </goals>

                 <id>restore-version-master</id>

                 <phase>validate</phase>

           </execution>

      </executions>

</plugin>

2^nd execution was required because the first one doesn’t replace parent
version in child poms. Master pom doesn’t go to the update site, so it’s
ok to restore it to 1.0.0-SNAPSHOT.

This code is being run on a build server, where poms and manifests get
rewritten with the latest version from SVN before every build anyway, so
I can pollute them by calling tycho-versions-plugin.

Here is what I get in the log for a typical plugin:

build 29-jan-2014 13:17:21 [INFO]
------------------------------------------------------------------------

build 29-jan-2014 13:17:21 [INFO] Building com.mycompany.myplugin 1.0.0

build 29-jan-2014 13:17:21 [INFO]
------------------------------------------------------------------------

build 29-jan-2014 13:17:21 [INFO]

build 29-jan-2014 13:17:21 [INFO] --- maven-clean-plugin:2.5:clean
(default-clean) @ com.mycompany.myplugin ---

build 29-jan-2014 13:17:21 [INFO] Deleting
C:\<SVN_ROOT>\build\com.mycompany.myplugin

build 29-jan-2014 13:17:21 [INFO]

build 29-jan-2014 13:17:21 [INFO] ---
tycho-packaging-plugin:0.19.0:build-qualifier (default-build-qualifier)
@ com.mycompany.myplugin ---

build 29-jan-2014 13:17:21 [INFO] The project's OSGi version is 1.0.0

build 29-jan-2014 13:17:21 [INFO]

build 29-jan-2014 13:17:21 [INFO] ---
tycho-packaging-plugin:0.19.0:validate-id (default-validate-id) @
com.mycompany.myplugin ---

build 29-jan-2014 13:17:21 [INFO]

build 29-jan-2014 13:17:21 [INFO] ---
tycho-packaging-plugin:0.19.0:validate-version
(default-validate-version) @ com.mycompany.myplugin ---

build 29-jan-2014 13:17:21 [INFO]

build 29-jan-2014 13:17:21 [INFO] ---
tycho-versions-plugin:0.19.0:set-version (set-version-all) @
com.mycompany.myplugin ---

build 29-jan-2014 13:17:21 [INFO] Making changes in
C:\<SVN_ROOT>\plugins\com.mycompany.myplugin

build 29-jan-2014 13:17:21 [INFO]   pom.xml//project/version: 1.0.0 =>
3.14.171

build 29-jan-2014 13:17:21 [INFO]
META-INF/MANIFEST.MF//Bundle-Version: 1.0.0 => 3.14.171

build 29-jan-2014 13:17:21 [INFO]
META-INF/MANIFEST.MF//Export-Package//version: 1.0.0 => 3.14.171

build 29-jan-2014 13:17:21 [INFO] ---
maven-resources-plugin:2.4.3:resources (default-resources) @
com.mycompany.myplugin ---

build 29-jan-2014 13:17:21 [INFO]

build 29-jan-2014 13:17:21 [INFO] ---
tycho-compiler-plugin:0.19.0:compile (default-compile) @
com.mycompany.myplugin ---

build 29-jan-2014 13:17:21 [INFO] Compiling 2 source files to
C:\<SVN_ROOT>\build\com.mycompany.myplugin\classes

build 29-jan-2014 13:17:22 [INFO]

build 29-jan-2014 13:17:22 [INFO] ---
maven-resources-plugin:2.4.3:testResources (default-testResources) @
com.mycompany.myplugin ---

build 29-jan-2014 13:17:22 [INFO]

build 29-jan-2014 13:17:22 [INFO] ---
tycho-packaging-plugin:0.19.0:package-plugin (default-package-plugin) @
com.mycompany.myplugin ---

build 29-jan-2014 13:17:22 [INFO] Building jar:
C:\<SVN_ROOT>\build\com.mycompany.myplugin\com.mycompany.myplugin-1.0.0.jar

build 29-jan-2014 13:17:22 [INFO]

build 29-jan-2014 13:17:22 [INFO] ---
tycho-p2-plugin:0.19.0:p2-metadata-default (default-p2-metadata-default)
@ com.mycompany.myplugin ---

build 29-jan-2014 13:17:22 [INFO]

build 29-jan-2014 13:17:22 [INFO] --- maven-jarsigner-plugin:1.3.1:sign
(sign) @ com.mycompany.myplugin ---

build 29-jan-2014 13:17:22 [INFO] 1 archive(s) processed

build 29-jan-2014 13:17:22 [INFO]

This results in com.mycompany.myplugin-1.0.0.jar with version 1.0.0 in
the manifest.

But for all features the version gets changed!

build 29-jan-2014 13:17:26 [INFO]
------------------------------------------------------------------------

build 29-jan-2014 13:17:26 [INFO] Building com.mycompany.myfeature 1.0.0

build 29-jan-2014 13:17:26 [INFO]
------------------------------------------------------------------------

build 29-jan-2014 13:17:26 [INFO]

build 29-jan-2014 13:17:26 [INFO] --- maven-clean-plugin:2.5:clean
(default-clean) @ com.mycompany.myfeature ---

build 29-jan-2014 13:17:26 [INFO] Deleting
C:\<SVN_ROOT>\build\com.mycompany.myfeature

build 29-jan-2014 13:17:26 [INFO]

build 29-jan-2014 13:17:26 [INFO] ---
tycho-packaging-plugin:0.19.0:build-qualifier-aggregator
(default-build-qualifier-aggregator) @ com.mycompany.myfeature ---

build 29-jan-2014 13:17:26 [INFO] The project's OSGi version is 1.0.0

build 29-jan-2014 13:17:26 [INFO]

build 29-jan-2014 13:17:26 [INFO] ---
tycho-packaging-plugin:0.19.0:validate-id (default-validate-id) @
com.mycompany.myfeature ---

build 29-jan-2014 13:17:26 [INFO]

build 29-jan-2014 13:17:26 [INFO] ---
tycho-packaging-plugin:0.19.0:validate-version
(default-validate-version) @ com.mycompany.myfeature ---

build 29-jan-2014 13:17:26 [INFO]

build 29-jan-2014 13:17:26 [INFO] ---
tycho-versions-plugin:0.19.0:set-version (set-version-all) @
com.mycompany.myfeature ---

build 29-jan-2014 13:17:26 [INFO] Making changes in
C:\<SVN_ROOT>\features\com.mycompany.myfeature

build 29-jan-2014 13:17:26 [INFO]   pom.xml//project/version: 1.0.0 =>
3.14.171

build 29-jan-2014 13:17:26 [INFO]   feature.xml//feature/@version: 1.0.0
=> 3.14.171

build 29-jan-2014 13:17:26 [INFO]

build 29-jan-2014 13:17:26 [INFO] ---
tycho-packaging-plugin:0.19.0:package-feature (default-package-feature)
@ com.mycompany.myfeature ---

build 29-jan-2014 13:17:26 [INFO] Building jar:
C:\<SVN_ROOT>\build\com.mycompany.myfeature\com.mycompany.myfeature-1.0.0.jar

build 29-jan-2014 13:17:26 [INFO]

build 29-jan-2014 13:17:26 [INFO] ---
tycho-p2-plugin:0.19.0:p2-metadata-default (default-p2-metadata-default)
@ com.mycompany.myfeature ---

build 29-jan-2014 13:17:26 [INFO]

build 29-jan-2014 13:17:26 [INFO] ---
tycho-p2-plugin:0.19.0:feature-p2-metadata (default-feature-p2-metadata)
@ com.mycompany.myfeature ---

build 29-jan-2014 13:17:26 [INFO]

build 29-jan-2014 13:17:26 [INFO] --- maven-jarsigner-plugin:1.3.1:sign
(sign) @ com.mycompany.myfeature ---

build 29-jan-2014 13:17:26 [INFO] 1 archive(s) processed

This results in com.mycompany.myfeature-3.14.171.jar (though the log
says it is 1.0.0) with version 3.14.171 in the manifest.

As a result, tycho-versions-plugin updates the versions in all required
files, but for some reason this has no impact on plugins, only feature
versions really get updated. How can I update plugin versions too? Or
maybe I’m doing something conceptually wrong?

As far as I know, tycho-packaging-plugin can only set the qualifier. We
can change plugin versions in manifests to 1.0.0.qualifier, but we don’t
really want to change them after every release to 3.14.qualifier, then
3.15… and so on. I have also tried to call
tycho-packaging-plugin:build-qualifier after calling
tycho-versions-plugin:set-version, but the result was exactly the same
(only feature versions were updated).

Any help will be appreciated.

Thank you

Nikolay Glazyrin



_______________________________________________
tycho-user mailing list
tycho-user@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/tycho-user


Re: [tycho-user] Creating a Product and then updating via Update Site

$
0
0
Hello Paul,


2014-01-29 Paul Webster <pwebster@xxxxxxxxxxxxxxxxxxx>
Hi Laurent,


On Thu, Jan 16, 2014 at 4:49 PM, Laurent PETIT <laurent.petit@xxxxxxxxx> wrote:
Hi Paul, 

So thanks to you and the link, I've been able to fix my problem. I had to remove the ccw feature definition from the product features list, and instead add a requires.x.name to my product's ccw.p2.inf file.

And the final step is to manually invoke the Director to install ccw.feature.feature.group to the product after the fact.

This is why I'm coming back to you. Since I've removed ccw.feature from the product features list, I don't find feature artifacts in my product's target/repository repository anymore. Before that, it was easy to point the Director to this directory.
So Ive pointed instead the directory to a relative path like ../ccw.updatesite/target/repository.

I think others have answered this already, but you don't need to remove your ccw feature from your product to update the require range using the ccw.p2.inf.  The p2.inf will override the defaults generated by the product require.  That will also still allow it to show up in your build p2 repo.


Thanks for the information. I wasn't really aware of that. And doing "experiment tests" takes so much time that I hadn't discovered that by myself.
 

It's the same for any other feature you'd like to allow independent updating in your product.  You need to find it's "inclusion" point (either in your .product file, or in a feature) and use the p2.inf to broaden the requirement range.

I'm not sure I understand what you mean by "you need to find its 'inclusion' point [...] and use the p2.inf ...". It's the "inclusion point" that I don't understand, and maybe I'm missing something important ?

Also, I have been unable to understand by myself / find an explanation somewhere about the "namespace" part of the p2.inf example here : http://aniefer.blogspot.ca/2009/07/composing-and-updating-custom-eclipse.html

requires.1.namespace = org.eclipse.equinox.p2.iu
requires.1.name = org.eclipse.cvs.feature.group
requires.1.range = [1.1.100, 1.2.0)
- Where does the namespace's  value come from? What is it used for? Where can I find it for the several features I would like to broaden ?

Additional question:

- What if I want to use an open upper bound for the features ? Do I need to use some very large value such as defining [1.1.100, 9999.0.0.0), or is there a cleaner way to achieve the goal?

I kind of remember I attempted to both let my feature declared in my .product file and broaden the version range by adding requires in the product's p2.inf file. As a result, I was seing, in the About page of the resulting product, the feature declared 2 times in the graphical tree: once as a child of the product, and once as a separate root in the tree. Is that expected, or is it symptomatic of a mistake?

Thanks in advance for your answers,

-- 
Laurent
 

Later,
PW

--
Paul Webster
Hi floor.  Make me a sammich! - GIR

_______________________________________________
tycho-user mailing list
tycho-user@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/tycho-user


[tycho-user] Run swtbot tests using tycho/Maven

$
0
0

Hello,

 

I’m tryning to run swtbot using tycho/Maven, I’m getting this error :

Running com.st.mlpc.test.MLPCTest

!ENTRY com.st.mlpc.test 4 0 2014-01-31 09:02:01.072

!MESSAGE Could not initialize bot

!STACK 0

java.lang.IllegalStateException: Could not find a display

        at org.eclipse.swtbot.swt.finder.utils.SWTUtils.display(SWTUtils.java:250)

        at org.eclipse.swtbot.swt.finder.finders.ControlFinder.<init>(ControlFinder.java:82)

        at org.eclipse.swtbot.swt.finder.finders.ControlFinder.<init>(ControlFinder.java:72)

        at org.eclipse.swtbot.swt.finder.SWTBot.<init>(SWTBot.java:115)

        at org.eclipse.swtbot.eclipse.finder.SWTWorkbenchBot.<init>(SWTWorkbenchBot.java:58)

 

My pom.xml :

 

<packaging>eclipse-test-plugin</packaging>

  <build>

    <plugins>

       <plugin>

            <groupId>org.eclipse.tycho</groupId>

            <artifactId>tycho-surefire-plugin</artifactId>

            <version>0.16.0</version>

            <configuration>

              <useUIHarness>true</useUIHarness>

              <useUIThread>false</useUIThread>

              <product>com.st.platform.st_ide</product>

              <application>com.st.platform.st_ide</application>

            <testSuite>com.st.mlpc.test</testSuite>

              <testClass>com.st.mlpc.test.MLPCTest</testClass>

              <argLine>-Xms512m -Xmx1024m</argLine>

            </configuration>

        </plugin>

</plugins>

  </build>

 

Any help is so welcome.

Thanks in advance,

Maherzia

Re: [tycho-user] [swtbot-dev] Run swtbot tests using tycho/Maven

$
0
0
What OS are you using? If you're on Linux, make sure the DISPLAY environment property is set to the display of an existing X session.
http://wiki.eclipse.org/SWTBot/Automate_test_execution

Note that SWTBot has a user forum, which is recommended for such questions. http://www.eclipse.org/forums/index.php/f/74/ . The swtbot-dev mailing-list is dedicated to discussions about development and contribution to the SWTBot project.

--
Mickael Istria
Eclipse developer at JBoss, by Red Hat
My blog - My Tweets

Re: [tycho-user] [swtbot-dev] Run swtbot tests using tycho/Maven

$
0
0
On Fri, Jan 31, 2014 at 9:23 AM, Maherzia BELAAZI <maherzia.belaazi@xxxxxx> wrote:

Hello,

Â

Iâm tryning to run swtbot using tycho/Maven, Iâm getting this error :

Running com.st.mlpc.test.MLPCTest

!ENTRY com.st.mlpc.test 4 0 2014-01-31 09:02:01.072

!MESSAGE Could not initialize bot

!STACK 0

java.lang.IllegalStateException: Could not find a display

ÂÂÂÂÂÂÂ at org.eclipse.swtbot.swt.finder.utils.SWTUtils.display(SWTUtils.java:250)

ÂÂÂÂÂÂÂ at org.eclipse.swtbot.swt.finder.finders.ControlFinder.<init>(ControlFinder.java:82)

ÂÂÂÂÂÂÂ at org.eclipse.swtbot.swt.finder.finders.ControlFinder.<init>(ControlFinder.java:72)

ÂÂÂÂÂÂÂ at org.eclipse.swtbot.swt.finder.SWTBot.<init>(SWTBot.java:115)

ÂÂÂÂÂÂÂ at org.eclipse.swtbot.eclipse.finder.SWTWorkbenchBot.<init>(SWTWorkbenchBot.java:58)

Â

My pom.xml :

Â

<packaging>eclipse-test-plugin</packaging>

 <build>

ÂÂÂ <plugins>

ÂÂÂÂÂÂ <plugin>

ÂÂÂÂÂÂÂÂÂÂÂ <groupId>org.eclipse.tycho</groupId>

ÂÂÂÂÂÂÂÂÂÂÂ <artifactId>tycho-surefire-plugin</artifactId>

ÂÂÂÂÂÂÂÂÂÂÂ <version>0.16.0</version>

ÂÂÂÂÂÂÂÂÂÂÂ <configuration>

ÂÂÂÂÂÂÂÂÂÂÂÂÂ <useUIHarness>true</useUIHarness>

ÂÂÂÂÂÂÂÂÂÂÂÂÂ <useUIThread>false</useUIThread>

ÂÂÂÂÂÂÂÂÂÂÂÂÂ <product>com.st.platform.st_ide</product>

ÂÂÂÂÂÂÂÂÂÂÂÂÂ <application>com.st.platform.st_ide</application>

ÂÂÂÂÂÂÂÂÂÂÂ <testSuite>com.st.mlpc.test</testSuite>

ÂÂÂÂÂÂÂÂÂÂÂ Â <testClass>com.st.mlpc.test.MLPCTest</testClass>

ÂÂÂÂÂÂÂÂÂÂÂ Â <argLine>-Xms512m -Xmx1024m</argLine>

ÂÂÂÂÂÂÂÂÂÂÂ </configuration>

ÂÂÂÂÂÂÂ </plugin>

</plugins>

 </build>

Â

Any help is so welcome.

Thanks in advance,

Maherzia


looks like you are running that on a headless server, in Hudson/Jenkins enable the XVnc plugin
and start a window manager in a shell step before starting the tests

In EGit we use metacity as the window manager

metacity --replace --sm-disable &

--
Matthias
Viewing all 4647 articles
Browse latest View live