Uploaded image for project: 'Maven Release Plugin'
  1. Maven Release Plugin
  2. MRELEASE-645

Allow File/Directory Patterns for the checkModificationExcludes Option

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 2.1
    • 2.3
    • branch, prepare, scm
    • None
    • all
    • Patch

    Description

      The checkModificationExcludes option does currently only allow the definition single files to be excluded from the SCM modification check. If this option is defined, all files anywhere in the maven project structure with the specified name will be excluded from the check. It is currently not possible to exclude files only within a specific directory or to exclude classes of files, i.e. all files matching a specific file name pattern.
      If the checkModificationExcludes option allowed the definition of file and directory patterns, these things would be possible.

      Example 1: I'd like to exclude a test resource src/test/resources/foo.properties from the modification check but the real foo.properties in src/main/resources should still be checked.

       
      <checkModificationExcludes>
        <checkModificationExclude>src/test/resources/foo.properties</checkModificationExclude>
      </checkModificationExcludes>
      

      Example 2: I'd like to exclude all properties files with the prefix bar from the modification check:

       
      <checkModificationExcludes>
        <checkModificationExclude>**/bar*.properties</checkModificationExclude>
      </checkModificationExcludes>
      

      The attached patch modifies the ScmCheckModificationsPhase to use the DirectoryScanner from plexus-utils instead of doing a strict file name comparison. The patch does not provide more unit tests for this feature but it adjusts the existing tests to run without any failures.

      Attachments

        1. maven-release-manager-r1305146.patch
          8 kB
          Stefan Ferstl
        2. maven-release-plugin-it.patch
          13 kB
          Stefan Ferstl
        3. maven-release-plugin-it-with-scm-provider.patch
          17 kB
          Stefan Ferstl
        4. modification-excludes.patch
          9 kB
          Stefan Ferstl
        5. MRELEASE-645.patch
          9 kB
          Robert Scholte

        Activity

          People

            rfscholte Robert Scholte
            sferstl Stefan Ferstl
            Votes:
            12 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: