Bug 1278072 - AssetMgmt: Missing support for changing multi-project repository version
AssetMgmt: Missing support for changing multi-project repository version
Status: NEW
Product: JBoss BRMS Platform 6
Classification: JBoss
Component: Business Central (Show other bugs)
Unspecified Unspecified
high Severity high
: ---
: ---
Assigned To: manstis
Jiri Locker
Depends On: 1277466 1278021
  Show dependency treegraph
Reported: 2015-11-04 11:19 EST by Jiri Locker
Modified: 2017-12-07 18:38 EST (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
Build error stack trace in server.log (6.95 KB, text/plain)
2015-11-04 11:19 EST, Jiri Locker
no flags Details

  None (edit)
Description Jiri Locker 2015-11-04 11:19:27 EST
Created attachment 1089754 [details]
Build error stack trace in server.log

Description of problem:
1. Root pom.xml of the multi-project repository is not accessible from Authoring perspective (Project Explorer or Repository Structure). It can only be opened from File Explorer in Administration perspective and edited with a text editor.
2. After manually changing root POM version, using that version in <parent> section of the sub-module projects doesn't seem to work. Saving the project with parent project version set to 2.0.0-SNAPSHOT causes a build error "Parameter named 'value' should be not null!".

Version-Release number of selected component (if applicable):

How reproducible:
With asset management enabled.

Steps to Reproduce:
1. Create managed multi-project repository with automatically configured branches.
2. Open root pom.xml in File Explorer, change version to 2.0.0-SNAPSHOT.
3. Repository Structure in Authoring perspective, add new module.

Actual results:
In step 3, version of the module cannot be changed, version 2.0.0-SNAPSHOT is inherited from the parent POM. After adding the module, error message appears in Messages panel.

Expected results:
1. The described steps to reproduce shouldn't result in a build error.
2. There should be a better support for changing repository version than text editing of the pom.xml in Administration perspective. The best place seems to be the Repository Structure screen and it would be nice if the version of all modules was changed together with parent POM version.

Additional info:
Comment 1 Walter Medvedeo 2015-11-06 08:05:41 EST
My understanding is that when there are a managed repository with multiple modules the user should never modify the pom.xml file manually, since there can be sub-modules, etc. And it's very easy break all the modules structure.

Aditionally, my understanding is that the version, is a kind "repository level" value, i.e., the child processes typically has all the same version. And this is why the version number for the sub-moules can't be changed.

So the version for given managed repository is changed typically by the relase process. When this process is excecuted a new version number can be specified.

But lets @salaboy confirm if the statments above are correct since I haven't work in the assets management time since a long time ago, and not sure if there has been changes or I've forgot something.

Today I also tryied to run the processes in 6.3.x build but it seems the are not working yet, by @salaboy was working on them so probably is still working on it.
Comment 2 Jiri Locker 2015-11-06 09:34:07 EST
Thanks Walter, upgrading repository-level version through completing of release process makes sense. I now understand why module version is read-only. I would then expect that the parent information in the module project editor should be read-only too.

Process instances and tasks are broken in ER5 (bz 1277473, 1277466) so I will try the project release in ER4 to see if repository version gets bumped.
Comment 4 Jiri Locker 2015-11-10 10:50:34 EST
Tried with ER4 and version and I get the described situation even after a successful release.

1. Releasing version 1.0.0 from release-1.0.0 will bump /pom.xml and /module/pom.xml versions from 1.0.0-SNAPSHOT to 1.0.0 (on the release branch). That can be handy if developers want to tag the release commit. However there is now (obvious way) to bump the snapshot version on master. I suppose that should include choosing what the next development version would be (e.g. 1.1.0 or 2.0.0).

2. After the release, module versions are bumped to the released version, but their parent version stays at snapshot. This could tracked in a separate ticket if you want to break this down into smaller pieces.

3. The parent POM (/pom.xml) doesn't seem to be installed after the release. After releasing version 1.0.0, repository version on the current release branch changes to 1.0.0. If I add a new module at this point, it will use 1.0.0 as its parent version and the build error "Parameter named 'value' should be not null!" appears in Messages.
Comment 5 Walter Medvedeo 2015-11-12 04:22:55 EST
Hi jiri, I could finally check it now with the app generated by Michael, and yes, I confirm that the release process is not bumping the parent pom.xml version as expected.

here's my understanding with reference to your notes above.

1- probalby something better can be implemetned for next version, but in my opinion not too much can be done for this version.

2. This is the bug, when the repository is relesed the version number should be bumped for the main pom.xml and their child projects pom.xml

3. This exception is because of 2. Since the release process should first build the parent pom.xml with the bumped version number and then the child processes.
Comment 6 Walter Medvedeo 2015-11-12 04:23:51 EST
2. and 3. should be fixed.
Comment 7 Bugzilla account termination 2017-12-07 18:38:23 EST
Employee 'msalatin@redhat.com' has left the company.

Note You need to log in before you can comment on or make changes to this bug.