Continuum

multiple profiles

Details

  • Type: New Feature New Feature
  • Status: Closed Closed
  • Priority: Major Major
  • Resolution: Fixed
  • Affects Version/s: None
  • Fix Version/s: 1.1-beta-1
  • Component/s: Core - Profiles
  • Labels:
    None
  • Number of attachments :
    7

Description

would like to be able to define a profile (which can include certain environmental things such as the version of m2 to use, the JDK version, etc).

Profiles should be able to be used globally, per group or per project. In this way, you could build certain projects under a variety of different JDKs for example.

  1. CONTINUUM-44
    18/Jun/07 6:24 PM
    243 kB
    Olivier Lamy
  2. CONTINUUM-44
    18/Jun/07 8:07 AM
    217 kB
    Olivier Lamy
  3. CONTINUUM-44-continuum-data-management
    18/Jun/07 2:54 PM
    14 kB
    Olivier Lamy
  4. CONTINUUM-44-continuum-data-management
    18/Jun/07 2:47 PM
    14 kB
    Olivier Lamy
  5. CONTINUUM-44-GOODIES
    21/Jun/07 4:23 PM
    46 kB
    Olivier Lamy
  6. CONTINUUM-44-GOODIES
    19/Jun/07 5:38 PM
    41 kB
    Olivier Lamy
  7. CONTINUUM-44-LICENSE-REFORMATED
    19/Jun/07 7:58 AM
    211 kB
    Olivier Lamy

Issue Links

Activity

Hide
Brett Porter added a comment -
Show
Brett Porter added a comment - screens: http://people.apache.org/~brett/white-site/profiles.html http://people.apache.org/~brett/white-site/editProfile.html http://people.apache.org/~brett/white-site/viewProfile.html start out by predefining installations (we can hard code them to use the path for alpha-4)
Hide
james strachan added a comment -

I'd include in this OS as well. We want to test all our code in CI using various OSes and JDK versions - then we'd really like to be able to consolidate the results to highlight what failed on what profile - rather than having to navigate into 4-8 different CI installations and then drill into each failed project to try get a feel for whats actually failing where.

So I'd really like a report thats kinda like...

Profile Failures
=======================================
Linux, JDK 1.4.2 : FooTest, BarTest, WhatnotTest
Windows, JDK 1.5.0 : BarTest

Then in one simple web page we can grok whats failing where and see patterns. (e.g. some failures are OS / JVM specific. Some fail everywhere etc).

This is related to... http://jira.codehaus.org/browse/CONTINUUM-427

Show
james strachan added a comment - I'd include in this OS as well. We want to test all our code in CI using various OSes and JDK versions - then we'd really like to be able to consolidate the results to highlight what failed on what profile - rather than having to navigate into 4-8 different CI installations and then drill into each failed project to try get a feel for whats actually failing where. So I'd really like a report thats kinda like... Profile Failures ======================================= Linux, JDK 1.4.2 : FooTest, BarTest, WhatnotTest Windows, JDK 1.5.0 : BarTest Then in one simple web page we can grok whats failing where and see patterns. (e.g. some failures are OS / JVM specific. Some fail everywhere etc). This is related to... http://jira.codehaus.org/browse/CONTINUUM-427
Hide
Emmanuel Venisse added a comment -

A continuum profile should be an aggregate of multiple profile like this :

My continuum profile can include :

  • a continuum profile that define the jdk 1.4
  • a continuum profile that define the schedule
  • a continuum profile that define the build definition
Show
Emmanuel Venisse added a comment - A continuum profile should be an aggregate of multiple profile like this : My continuum profile can include :
  • a continuum profile that define the jdk 1.4
  • a continuum profile that define the schedule
  • a continuum profile that define the build definition
Hide
Jesse McConnell added a comment -

I think profiles will probably be a key feature for 1.2

Show
Jesse McConnell added a comment - I think profiles will probably be a key feature for 1.2
Hide
Emmanuel Venisse added a comment -

I created new screens as brett's screens are old.

First a user can define all installation directories (jdk, maven, ant...), installations are independant of profiles and can be reused in profiles.
http://people.apache.org/~evenisse/design/continuum/continuum_profiles/installations.htm
http://people.apache.org/~evenisse/design/continuum/continuum_profiles/installation.htm
http://people.apache.org/~evenisse/design/continuum/continuum_profiles/installation_read.htm

When installations are defined, The user can create profiles. Profiles are a set of installation, ie maven 2.0.6+jdk5
http://people.apache.org/~evenisse/design/continuum/continuum_profiles/profiles.htm
http://people.apache.org/~evenisse/design/continuum/continuum_profiles/profile.htm
http://people.apache.org/~evenisse/design/continuum/continuum_profiles/profile_read.htm

I don't know yet if schedule, build file and SCM policy should be move from the build definition to the profile. If we do it, the build definition config would be simplified

Build definition screens:
http://people.apache.org/~evenisse/design/continuum/continuum_profiles/builddefinitions.htm
http://people.apache.org/~evenisse/design/continuum/continuum_profiles/builddefinition.htm

Comments?

Show
Emmanuel Venisse added a comment - I created new screens as brett's screens are old. First a user can define all installation directories (jdk, maven, ant...), installations are independant of profiles and can be reused in profiles. http://people.apache.org/~evenisse/design/continuum/continuum_profiles/installations.htm http://people.apache.org/~evenisse/design/continuum/continuum_profiles/installation.htm http://people.apache.org/~evenisse/design/continuum/continuum_profiles/installation_read.htm When installations are defined, The user can create profiles. Profiles are a set of installation, ie maven 2.0.6+jdk5 http://people.apache.org/~evenisse/design/continuum/continuum_profiles/profiles.htm http://people.apache.org/~evenisse/design/continuum/continuum_profiles/profile.htm http://people.apache.org/~evenisse/design/continuum/continuum_profiles/profile_read.htm I don't know yet if schedule, build file and SCM policy should be move from the build definition to the profile. If we do it, the build definition config would be simplified Build definition screens: http://people.apache.org/~evenisse/design/continuum/continuum_profiles/builddefinitions.htm http://people.apache.org/~evenisse/design/continuum/continuum_profiles/builddefinition.htm Comments?
Hide
Olivier Lamy added a comment -

Here the patch which implements this feature.
contains fix for CONTINUUM-1291.

Show
Olivier Lamy added a comment - Here the patch which implements this feature. contains fix for CONTINUUM-1291.
Hide
Olivier Lamy added a comment -

add patch for continuum-data-management (due to Profile repackaging in the other patch).
Change xml diff with using xmlunit.
All units works.
patch build from root with : svn diff continuum-data-management > CONTINUUM-44-continuum-data-management

Show
Olivier Lamy added a comment - add patch for continuum-data-management (due to Profile repackaging in the other patch). Change xml diff with using xmlunit. All units works. patch build from root with : svn diff continuum-data-management > CONTINUUM-44-continuum-data-management
Hide
Olivier Lamy added a comment -

override previous patch in continuum-data-management.
With xmlunit no more need of clean quotes and line ending in order to compare xml files.

Show
Olivier Lamy added a comment - override previous patch in continuum-data-management. With xmlunit no more need of clean quotes and line ending in order to compare xml files.
Hide
Olivier Lamy added a comment -

Here a full patch which include a fix (deleted Installation linked to some profiles) and fix for data-management.
Other things to do :

  • validation of the user entry when saving installation (jdk path, M2_HOME value etc..)
  • adding information on the builder use and the env vars in the mail
  • documentation
Show
Olivier Lamy added a comment - Here a full patch which include a fix (deleted Installation linked to some profiles) and fix for data-management. Other things to do :
  • validation of the user entry when saving installation (jdk path, M2_HOME value etc..)
  • adding information on the builder use and the env vars in the mail
  • documentation
Hide
Emmanuel Venisse added a comment -

Your patch isn't correct, I can't apply it.

Please don't reformat the license in files and don't change the import order.

Show
Emmanuel Venisse added a comment - Your patch isn't correct, I can't apply it. Please don't reformat the license in files and don't change the import order.
Hide
Olivier Lamy added a comment -

Ok for license format.
I'm using eclipse file format found here http://maven.apache.org/developers/committer-environment.html.
What can I do better ?
I will provide an other patch with the non reformated license.
But I don't really understand the trouble with import ? (again I use eclipse provided format file).

Show
Olivier Lamy added a comment - Ok for license format. I'm using eclipse file format found here http://maven.apache.org/developers/committer-environment.html. What can I do better ? I will provide an other patch with the non reformated license. But I don't really understand the trouble with import ? (again I use eclipse provided format file).
Hide
Olivier Lamy added a comment -

New patch (note the file name ).
I have made some test on solaris and work fine as expected (fix my use case CONTINUUM-1291).
I will provide other patchs for other points (gui validation)

Show
Olivier Lamy added a comment - New patch (note the file name ). I have made some test on solaris and work fine as expected (fix my use case CONTINUUM-1291). I will provide other patchs for other points (gui validation)
Hide
Emmanuel Venisse added a comment -

Patch committed.
We'll close this issue when all other patches will be provided/applied too

Show
Emmanuel Venisse added a comment - Patch committed. We'll close this issue when all other patches will be provided/applied too
Hide
Emmanuel Venisse added a comment -

Great work, thanks Olivier

Show
Emmanuel Venisse added a comment - Great work, thanks Olivier
Hide
Olivier Lamy added a comment -

This patch provide the following :

  • validation of the user entry when saving installation (jdk path, M2_HOME value etc..)
  • adding information on the builder use (like mvn -v) in the mail
  • change edit profile screen to not display installation (Add button) in case of profile creation
  • create a class ExecutorConfigurator to store configuration regarding executable informations.
Show
Olivier Lamy added a comment - This patch provide the following :
  • validation of the user entry when saving installation (jdk path, M2_HOME value etc..)
  • adding information on the builder use (like mvn -v) in the mail
  • change edit profile screen to not display installation (Add button) in case of profile creation
  • create a class ExecutorConfigurator to store configuration regarding executable informations.
Hide
Olivier Lamy added a comment -

Sorry just detected a small issue on the previous patch
Information on the builder in the mail was not correct.

Show
Olivier Lamy added a comment - Sorry just detected a small issue on the previous patch Information on the builder in the mail was not correct.
Hide
Emmanuel Venisse added a comment -

Applied. Thanks.

Show
Emmanuel Venisse added a comment - Applied. Thanks.
Hide
Olivier Lamy added a comment -

Can we close the issue and create a new one for profile inheritance and other profile features ?

Show
Olivier Lamy added a comment - Can we close the issue and create a new one for profile inheritance and other profile features ?

People

Vote (3)
Watch (0)

Dates

  • Created:
    Updated:
    Resolved: