Skip to content

Support setting CI-Friendly-Versions in tycho-build-extension #611

@laeubi

Description

@laeubi

As discussed in #603 CI-Friendly-Versions might be of high value for ease building consistent versions.

We should add support for automatically setting the following items:

  • {revision} initialized with what currently is the DefaultBuildTimestampProvider
  • {sha1} initialized with what currently is the JGitBuildTimestampProvider

this could be done in the following way:

  1. We add a new LifeCycleParticipant
  2. We read from a tycho.config file two properties: cifriendly.revision and cifriendly.sha1 if they are true we set the corresponding value in the maven session properties in afterSessionStarts
  3. Everything else stays as is, with the exception that we skip generation of new qualifiers in BuildQualifierMojo if there is already a value
  4. For Tycho 3.x we can try to overhaul the concept of BuildTimestampProvider so it could be used more flexible, e.g. one might want to have cifriendly.revision not true/false but having a hint for a specific provider to lookup in the PlexusContainer (would require changing the BuildTimestampProvider interface) passing config values and so on

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions