Uploaded image for project: 'camunda BPM'
  1. camunda BPM
  2. CAM-13985

Camunda Run invoice example module breaks javadocs release job

    • Icon: Task Task
    • Resolution: Fixed
    • Icon: L3 - Default L3 - Default
    • 7.16.0
    • None
    • None
    • None

      Problem

      The test release javadocs job fails since the module distro/run/modules/example has a dependency to org.camunda.bpm.springboot:camunda-bpm-spring-boot-starter-webapp which is not produced by the reactor.

      The following modules are currently not part of the Javadocs job since the distro-ce profile is not called:

      [INFO] Camunda Platform - Spring Boot Starter - Webapps Core              [jar]
      [INFO] Camunda Platform - Spring Boot Starter - Webapps                   [jar]
      [INFO] Camunda Platform - Spring Boot Starter - QA - Webapps              [pom]
      [INFO] Camunda Platform - Spring Boot Starter - QA - Webapps Invoice Example [jar]
      [INFO] Camunda Platform - Spring Boot Starter - QA - Webapps Runtime      [jar]
      [INFO] Camunda Platform - webapp - JBoss                                  [war]
      [INFO] Camunda Platform - webapp - JBoss Standalone                       [war]
      [INFO] Camunda Platform - webapp - Tomcat                                 [war]
      [INFO] Camunda Platform - tomcat Distro                                   [pom]
      [INFO] Camunda Platform - webapp - Tomcat Standalone                      [war]
      [INFO] Camunda Platform - Run - Module Webapps                            [pom]
      [INFO] Camunda Platform - Run - Distribution                              [pom]
      [INFO] Camunda Platform - Run - QA - Runtime                              [jar]
      [INFO] Camunda Platform - Wildfly Distro                                  [pom]
      

      Premise

      As a user, I want to understand the implementation a bit better, and as the first point of contact, I can read a bit of Javadocs before debugging directly or even checking out the source code on GitHub.

      There is no hard reason why the modules above are not part of the Javadocs. The reason might be a legacy back when we had different jobs for building artifacts, the Webapps, and Distros.

      Solution ideas

      1. Exclude distro/run/modules/example module from the release job
        • Cons
          • We might introduce in the future more such situations and would then maintain this list of excluded modules
          • There is no hard reason for excluding these modules
      2. Call maven command twice to build the missing dependency first and second generate the Javadocs
        • Cons
          • Bigger refactoring
          • Build duration of the job grows
      3. Add the distro-ce profile to the maven command
        • Pro: all modules are included in the Javadocs
        • Cons
          • Build duration of job grows slightly

      Decision

      Solution #3 is the best one since it allows us to provide Javadocs that reflect our entire codebase.

        This is the controller panel for Smart Panels app

            [CAM-13985] Camunda Run invoice example module breaks javadocs release job

            Tassilo Weidner created issue -
            Tassilo Weidner made changes -
            Key Original: CAMTEAM-196 New: CAM-13985
            Project Original: Camunda BPM Team [ 10931 ] New: camunda BPM [ 10230 ]
            Status Original: To Do [ 10011 ] New: Open [ 1 ]
            Workflow Original: CAMTEAM: Simple Issue Tracking Workflow [ 97665 ] New: Backup_camunda BPM [ 97666 ]
            Tassilo Weidner made changes -
            Description New: h3. Acceptance Criteria (Required on creation):
                
             
                h3. Hints (optional):
            DRI New: Tassilo Weidner [ tassilo.weidner ]
            Tassilo Weidner made changes -
            Mentioned Roles
            Tassilo Weidner made changes -
            Mentioned Groups
            Tassilo Weidner made changes -
            Fix Version/s New: 7.16.0 [ 16599 ]
            Tassilo Weidner made changes -
            Description Original: h3. Acceptance Criteria (Required on creation):
                
             
                h3. Hints (optional):
            New: h4. Problem

            The test release javadocs job fails since the module {{distro/run/modules/example}} has a dependency to {{org.camunda.bpm.springboot:camunda-bpm-spring-boot-starter-webapp}} which is not produced by the reactor.

            The following modules are currently not part of the Javadocs job since the {{distro-ce}} profile is not called:
            {code}
            [INFO] Camunda Platform - Spring Boot Starter - Webapps Core [jar]
            [INFO] Camunda Platform - Spring Boot Starter - Webapps [jar]
            [INFO] Camunda Platform - Spring Boot Starter - QA - Webapps [pom]
            [INFO] Camunda Platform - Spring Boot Starter - QA - Webapps Invoice Example [jar]
            [INFO] Camunda Platform - Spring Boot Starter - QA - Webapps Runtime [jar]
            [INFO] Camunda Platform - webapp - JBoss [war]
            [INFO] Camunda Platform - webapp - JBoss Standalone [war]
            [INFO] Camunda Platform - webapp - Tomcat [war]
            [INFO] Camunda Platform - tomcat Distro [pom]
            [INFO] Camunda Platform - webapp - Tomcat Standalone [war]
            [INFO] Camunda Platform - Run - Module Webapps [pom]
            [INFO] Camunda Platform - Run - Distribution [pom]
            [INFO] Camunda Platform - Run - QA - Runtime [jar]
            [INFO] Camunda Platform - Wildfly Distro [pom]
            {code}

            h4. Premise

            As a user, I want to understand the implementation a bit better and as the first point of contact, I can read a bit of Javadocs before debugging directly or even checking out the source code on GitHub.

            There is no hard reason why the aforementioned modules are not part of the Javadocs. The reason might be a legacy back when we had separate jobs for building artifacts, the Webapps, and Distros.

            h4. Solution ideas

            # Exclude {{distro/run/modules/example}} module from the release job
            #* Cons
            #** We might introduce in the future more such situations and would then maintain this list of excluded modules
            #** There is no hard reason for excluding these modules
            # Call maven command twice to build the missing dependency first and second generate the Javadocs
            #* Cons
            #** Bigger refactoring
            #** Build duration of the job grows
            # Add the {{distro-ce}} profile to the maven command
            #* Pro: all modules are included in the Javadocs
            #* Cons
            #** Build duration of job grows slightly
            Tassilo Weidner made changes -
            Mentioned Roles
            Tassilo Weidner made changes -
            Mentioned Groups
            Tassilo Weidner made changes -
            Description Original: h4. Problem

            The test release javadocs job fails since the module {{distro/run/modules/example}} has a dependency to {{org.camunda.bpm.springboot:camunda-bpm-spring-boot-starter-webapp}} which is not produced by the reactor.

            The following modules are currently not part of the Javadocs job since the {{distro-ce}} profile is not called:
            {code}
            [INFO] Camunda Platform - Spring Boot Starter - Webapps Core [jar]
            [INFO] Camunda Platform - Spring Boot Starter - Webapps [jar]
            [INFO] Camunda Platform - Spring Boot Starter - QA - Webapps [pom]
            [INFO] Camunda Platform - Spring Boot Starter - QA - Webapps Invoice Example [jar]
            [INFO] Camunda Platform - Spring Boot Starter - QA - Webapps Runtime [jar]
            [INFO] Camunda Platform - webapp - JBoss [war]
            [INFO] Camunda Platform - webapp - JBoss Standalone [war]
            [INFO] Camunda Platform - webapp - Tomcat [war]
            [INFO] Camunda Platform - tomcat Distro [pom]
            [INFO] Camunda Platform - webapp - Tomcat Standalone [war]
            [INFO] Camunda Platform - Run - Module Webapps [pom]
            [INFO] Camunda Platform - Run - Distribution [pom]
            [INFO] Camunda Platform - Run - QA - Runtime [jar]
            [INFO] Camunda Platform - Wildfly Distro [pom]
            {code}

            h4. Premise

            As a user, I want to understand the implementation a bit better and as the first point of contact, I can read a bit of Javadocs before debugging directly or even checking out the source code on GitHub.

            There is no hard reason why the aforementioned modules are not part of the Javadocs. The reason might be a legacy back when we had separate jobs for building artifacts, the Webapps, and Distros.

            h4. Solution ideas

            # Exclude {{distro/run/modules/example}} module from the release job
            #* Cons
            #** We might introduce in the future more such situations and would then maintain this list of excluded modules
            #** There is no hard reason for excluding these modules
            # Call maven command twice to build the missing dependency first and second generate the Javadocs
            #* Cons
            #** Bigger refactoring
            #** Build duration of the job grows
            # Add the {{distro-ce}} profile to the maven command
            #* Pro: all modules are included in the Javadocs
            #* Cons
            #** Build duration of job grows slightly
            New: h4. Problem

            The test release javadocs job fails since the module {{distro/run/modules/example}} has a dependency to {{org.camunda.bpm.springboot:camunda-bpm-spring-boot-starter-webapp}} which is not produced by the reactor.

            The following modules are currently not part of the Javadocs job since the {{distro-ce}} profile is not called:
            {code}
            [INFO] Camunda Platform - Spring Boot Starter - Webapps Core [jar]
            [INFO] Camunda Platform - Spring Boot Starter - Webapps [jar]
            [INFO] Camunda Platform - Spring Boot Starter - QA - Webapps [pom]
            [INFO] Camunda Platform - Spring Boot Starter - QA - Webapps Invoice Example [jar]
            [INFO] Camunda Platform - Spring Boot Starter - QA - Webapps Runtime [jar]
            [INFO] Camunda Platform - webapp - JBoss [war]
            [INFO] Camunda Platform - webapp - JBoss Standalone [war]
            [INFO] Camunda Platform - webapp - Tomcat [war]
            [INFO] Camunda Platform - tomcat Distro [pom]
            [INFO] Camunda Platform - webapp - Tomcat Standalone [war]
            [INFO] Camunda Platform - Run - Module Webapps [pom]
            [INFO] Camunda Platform - Run - Distribution [pom]
            [INFO] Camunda Platform - Run - QA - Runtime [jar]
            [INFO] Camunda Platform - Wildfly Distro [pom]
            {code}

            h4. Premise

            As a user, I want to understand the implementation a bit better, and as the first point of contact, I can read a bit of Javadocs before debugging directly or even checking out the source code on GitHub.

            There is no hard reason why the modules above are not part of the Javadocs. The reason might be a legacy back when we had different jobs for building artifacts, the Webapps, and Distros.

            h4. Solution ideas

            # Exclude {{distro/run/modules/example}} module from the release job
            #* Cons
            #** We might introduce in the future more such situations and would then maintain this list of excluded modules
            #** There is no hard reason for excluding these modules
            # Call maven command twice to build the missing dependency first and second generate the Javadocs
            #* Cons
            #** Bigger refactoring
            #** Build duration of the job grows
            # Add the {{distro-ce}} profile to the maven command
            #* Pro: all modules are included in the Javadocs
            #* Cons
            #** Build duration of job grows slightly

            h4. Decision

            Solution #3 is the best one since it allows us to provide Javadocs that reflect our entire codebase.
            Tassilo Weidner made changes -
            Mentioned Roles
            Tassilo Weidner made changes -
            Mentioned Groups

              tassilo.weidner Tassilo Weidner
              tassilo.weidner Tassilo Weidner
              Tassilo Weidner Tassilo Weidner
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: