Uploaded image for project: 'IGB'
  1. IGB
  2. IGBF-2212

Simplify development (experimental) apps build and deployment system

    Details

    • Type: Task
    • Status: Closed (View Workflow)
    • Priority: Major
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: None
    • Labels:
      None

      Description

      The current build system for the development apps renamed experimental apps) contains repeated code, which makes it hard to modify and understand.

      See: https://bitbucket.org/lorainelab/experimental-apps-for-igb for new git repository location.

      We wrote it this way in part because I imposed the requirement for enabling individual Apps and their unitary OBR index files to be deployed to the Bitbucket Downloads folder for the repository.

      However, upon taking a deeper look into this, it is clear we can get rid of this requirement.

      For proper testing, we should copy all the Apps and a shared OBR index file to the Downloads. This will enable a developer, tester, or ordinary user to simply add the Downloads folder to IGB as an App repository. If they do that, then all of the Apps will become visible in the IGB App Manager, where they can install them. Also, because the Apps are sharing a repository and a parent POM, we need to make sure that if one can build, all can build.

      By getting rid of this requirement, we can remove the App-specific profiles from the system, which will greatly simplify the setup.

      Making the setup simpler and easier to understand and modify will allow us to use it as part of our developer documentation to help developers get more familiar with IGB Apps and how they work.

      cc: Prutha Kulkarni

        Attachments

          Issue Links

            Activity

            aloraine Ann Loraine created issue -
            aloraine Ann Loraine made changes -
            Field Original Value New Value
            Epic Link IGBF-1908 [ 17998 ]
            aloraine Ann Loraine made changes -
            Link This issue relates to IGBF-1931 [ IGBF-1931 ]
            aloraine Ann Loraine made changes -
            Rank Ranked higher
            aloraine Ann Loraine made changes -
            Status To-Do [ 10305 ] In Progress [ 3 ]
            aloraine Ann Loraine made changes -
            Status In Progress [ 3 ] Needs 1st Level Review [ 10005 ]
            Hide
            aloraine Ann Loraine added a comment -

            Made branch, merged into master, closed branch.
            New design puts plugin configurations in parent pom.
            Child pom in new module "obr" builds index file for all the Apps.

            Show
            aloraine Ann Loraine added a comment - Made branch, merged into master, closed branch. New design puts plugin configurations in parent pom. Child pom in new module "obr" builds index file for all the Apps.
            aloraine Ann Loraine made changes -
            Status Needs 1st Level Review [ 10005 ] First Level Review in Progress [ 10301 ]
            aloraine Ann Loraine made changes -
            Status First Level Review in Progress [ 10301 ] Ready for Pull Request [ 10304 ]
            aloraine Ann Loraine made changes -
            Status Ready for Pull Request [ 10304 ] Pull Request Submitted [ 10101 ]
            aloraine Ann Loraine made changes -
            Status Pull Request Submitted [ 10101 ] Reviewing Pull Request [ 10303 ]
            aloraine Ann Loraine made changes -
            Status Reviewing Pull Request [ 10303 ] Merged Needs Testing [ 10002 ]
            aloraine Ann Loraine made changes -
            Assignee Ann Loraine [ aloraine ] Prutha Kulkarni [ prutha ]
            Hide
            aloraine Ann Loraine added a comment -

            Prutha Kulkarni - when you get back to Charlotte, please test.

            Test local configuration:

            • Clone the repo
            • Compile by running mvn install at top-level of project
            • Add obr/bundles as a local App Repository
            • Confirm that you can install the Apps

            Note: To confirm installation, check the Felix Web console. IGB Console reports bundles are getting installed even when they are not as per https://jira.transvar.org/browse/IGBF-2186.

            To test remote configuration:

            • Add Downloads of team repository as a new App repository.
            • Confirm that you can install the Apps from there as well.

            To test local configuration:

            • Run mvn install using the module POMs
            • An OBR index file and jar file should get copied into the modules target directory
            Show
            aloraine Ann Loraine added a comment - Prutha Kulkarni - when you get back to Charlotte, please test. Test local configuration: Clone the repo Compile by running mvn install at top-level of project Add obr/bundles as a local App Repository Confirm that you can install the Apps Note: To confirm installation, check the Felix Web console. IGB Console reports bundles are getting installed even when they are not as per https://jira.transvar.org/browse/IGBF-2186 . To test remote configuration: Add Downloads of team repository as a new App repository. Confirm that you can install the Apps from there as well. To test local configuration: Run mvn install using the module POMs An OBR index file and jar file should get copied into the modules target directory
            Hide
            aloraine Ann Loraine added a comment -

            Also, Prutha Kulkarni - please review the code. If you have questions, please add as new comments.
            It's important that the project structure and POMs be clear so that new developers can learn from them.

            Show
            aloraine Ann Loraine added a comment - Also, Prutha Kulkarni - please review the code. If you have questions, please add as new comments. It's important that the project structure and POMs be clear so that new developers can learn from them.
            aloraine Ann Loraine made changes -
            Sprint Spring 1 : 25 Dec to 17 Jan [ 84 ] Spring 2 : 20 Jan to 31 Jan [ 85 ]
            aloraine Ann Loraine made changes -
            Link This issue relates to IGBF-2213 [ IGBF-2213 ]
            aloraine Ann Loraine made changes -
            Status Merged Needs Testing [ 10002 ] Post-merge Testing In Progress [ 10003 ]
            aloraine Ann Loraine made changes -
            Status Post-merge Testing In Progress [ 10003 ] To-Do [ 10305 ]
            aloraine Ann Loraine made changes -
            Assignee Prutha Kulkarni [ prutha ] Ann Loraine [ aloraine ]
            Hide
            aloraine Ann Loraine added a comment -

            Found a problem with repository.xml created on Bitbucket and copied to Downloads. It does not list any Apps.

            Show
            aloraine Ann Loraine added a comment - Found a problem with repository.xml created on Bitbucket and copied to Downloads. It does not list any Apps.
            aloraine Ann Loraine made changes -
            Status To-Do [ 10305 ] In Progress [ 3 ]
            aloraine Ann Loraine made changes -
            Status In Progress [ 3 ] Needs 1st Level Review [ 10005 ]
            aloraine Ann Loraine made changes -
            Status Needs 1st Level Review [ 10005 ] First Level Review in Progress [ 10301 ]
            aloraine Ann Loraine made changes -
            Status First Level Review in Progress [ 10301 ] Ready for Pull Request [ 10304 ]
            aloraine Ann Loraine made changes -
            Status Ready for Pull Request [ 10304 ] Pull Request Submitted [ 10101 ]
            aloraine Ann Loraine made changes -
            Status Pull Request Submitted [ 10101 ] Reviewing Pull Request [ 10303 ]
            aloraine Ann Loraine made changes -
            Status Reviewing Pull Request [ 10303 ] Merged Needs Testing [ 10002 ]
            Hide
            aloraine Ann Loraine added a comment -

            Fixed problem. Copying task was failing due to misconfiguration of maven-antrun-plugin.
            Moved maven-antrun-plugin configuration and execution to obr module so that copying of jars into obr/bundles will only happen when trying to build an OBR with all the bundles.
            When working with a single module, we don't need to copy its bundle to obr/bundles since its target directory will be its OBR.

            Show
            aloraine Ann Loraine added a comment - Fixed problem. Copying task was failing due to misconfiguration of maven-antrun-plugin. Moved maven-antrun-plugin configuration and execution to obr module so that copying of jars into obr/bundles will only happen when trying to build an OBR with all the bundles. When working with a single module, we don't need to copy its bundle to obr/bundles since its target directory will be its OBR.
            aloraine Ann Loraine made changes -
            Assignee Ann Loraine [ aloraine ] Prutha Kulkarni [ prutha ]
            prutha Prutha Kulkarni (Inactive) made changes -
            Status Merged Needs Testing [ 10002 ] Post-merge Testing In Progress [ 10003 ]
            Hide
            prutha Prutha Kulkarni (Inactive) added a comment -

            I have tested the experimental apps for both local as well as remote configuration. Followed the steps that are mentioned above. Also I checked in on the apache felix console whether the bundle is getting installed or not and I was able to see it on the console as well.
            I really liked the idea of creating a new obr folder in order to build the consolidated repository.xml file instead of maintaining profiles for each plugin. It is very easy to understand as well.

            Show
            prutha Prutha Kulkarni (Inactive) added a comment - I have tested the experimental apps for both local as well as remote configuration. Followed the steps that are mentioned above. Also I checked in on the apache felix console whether the bundle is getting installed or not and I was able to see it on the console as well. I really liked the idea of creating a new obr folder in order to build the consolidated repository.xml file instead of maintaining profiles for each plugin. It is very easy to understand as well.
            prutha Prutha Kulkarni (Inactive) made changes -
            Assignee Prutha Kulkarni [ prutha ] Ann Loraine [ aloraine ]
            prutha Prutha Kulkarni (Inactive) made changes -
            Resolution Done [ 10000 ]
            Status Post-merge Testing In Progress [ 10003 ] Closed [ 6 ]

              People

              • Assignee:
                aloraine Ann Loraine
                Reporter:
                aloraine Ann Loraine
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: