Jump to: navigation, search

LDT/Developer Area/Development

Git repositories

Koneki source code is available on the Git repositories of the Eclipse Foundation. There are several repositories:

org.eclipse.koneki.commons.git Contains plug-ins that aim at being re-used by other Koneki projects (generic UI components, helpers, ...)
org.eclipse.koneki.ldt.git Contains the Lua Development Tools source code
org.eclipse.koneki.protocols.git Contains different sub-projects providing the core components enabling protocols (OMA-DM, ...) manipulation in the tools
org.eclipse.koneki.simulators.git Contains different sub-projects providing the components enabling protocols (OMA-DM, ...) simulation in the tools

Update sites organization

The active Hudson jobs perform the continuous integration of Koneki projects and deploy signed p2 repos to the nightly update sites.

There are 2 kind of nightly updates sites (repositories) :

  • nightly: /home/data/httpd/download.eclipse.org/koneki/updates-nightly, which is a composite repo of the last successful builds of the 'master' branch of each Koneki projects.
  • nightly-maintenance: /home/data/httpd/download.eclipse.org/koneki/updates-nightly-maintenance, which is the same one but for the active maintenance branch.

All the last releases are stored in /home/data/httpd/download.eclipse.org/koneki/releases repository which is composed of :

  • stable: /home/data/httpd/download.eclipse.org/koneki/releases/stable which contains all the last stable releases.
  • milestones: /home/data/httpd/download.eclipse.org/koneki/releases/milestones which contains all the last milestones.

All the old releases can be found in /home/data/httpd/archive.eclipse.org/koneki/releases. (with the same structure)

Delivery Process

All the path in this section are relative to /home/data/httpd/download.eclipse.org/koneki on build.eclipse.org

Maintenance version

  • "Commit freeze" on all maintenance branches.
  • Be sure the last version build corresponds to the last commit wanted.
  • Test the last nightly-maintenance build.

If tests are ok:

  • Copy all directories from updates-nightly-maintenance/ to releases/stables/${NUM.VERSION}.
    • mkdir releases/stable/${NUM.VERSION}/
    • cp -r updates-nightly-maintenance/* releases/stable/${NUM.VERSION}/
  • Rename the repository name in compositeArtifacts.xml and compositeContent.xml in releases/stables/${NUM.VERSION} (increment timestamp too)
    • sed -i -e "s/(nightly-maintenance)/(${NUM.VERSION})/g" releases/stable/${NUM.VERSION}/compositeArtifacts.xml
    • sed -i -e "s/(nightly-maintenance)/(${NUM.VERSION})/g" releases/stable/${NUM.VERSION}/compositeContent.xml
    • (increment timestamp)
  • Add child ${NUM.VERSION} in the repository name in compositeArtifacts.xml and compositeContent.xml in releases/stables/ (increment timestamp too)
  • Check the files permissions. (all repo should have directory with right drwxrwsr-x and artifacts.jar and content.jar in -rw-rw-r--)
  • Tag the last commit of the maintance branches.
  • Increment version to the next maintenance version then commit it.

Milestones versions

  • "Commit freeze" on all master branches.
  • Be sure the last version build corresponds to the last commit wanted.
  • Test the last nightly build.

If tests are ok:

  • Copy all directories from nightly to releases/milestones/${MILESTONES.VERSION}.
  • Check the files permissions.
  • Tag the last commit of the master branches.
  • Deliver new products.
    • archive current version : cp products/current-milestone/* /home/data/httpd/archive.eclipse.org/koneki/products/milestones/${CURRENT.NUM.VERSION.MILESTONE_NUM}/
    • deliver new version : cp /shared/jobs/koneki-ldt/lastSuccessful/archive/product/target/products/* products/current-milestone
    • check the files permissions.

Major versions

  • Test the milestones version which is the releases candidate.

If tests are ok :

  • Copy all the directories from releases/stable/${NUM.VERSION} to /home/data/httpd/archive.eclipse.org/koneki/releases/${NUM.VERSION}
  • Delete all directories in releases/stable/${NUM.VERSION}
  • Copy all directories from releases/milestones/${MILESTONES.VERSION} in releases/stable/${NUM.VERSION}
  • Delete all directories in releases/milestones/${MILESTONES.VERSION}
  • Check the files permissions.
  • Tag the master branches.
  • Create maintenance branches.
  • Increment version on master branches then commit it.
  • Increment version to the next maintenance version then commit it.
  • Change hudson configuration of maintenance builds to build the new one.
  • Deliver new products.
    • archive current version : cp products/stable/* /home/data/httpd/archive.eclipse.org/koneki/products/stable/${CURRENT.NUM.VERSION}/
    • deliver new version : cp /shared/jobs/koneki-ldt-maintenance/lastSuccessful/archive/product/target/products/* products/stable
    • Check the files permissions.

Simultaneous Release

  • To be Completed

Increment version Process

  • Increment feature version (pom.xml)
  • Increment product feature version (pom.xml)
  • Increment product version and its dependencies version
  • Increment feature version includes in category.xml

Simultaneous Release migration

  • Update target platform (.target)
  • Add the new plaform profile in root pom.xml
  • Change the default repo use to build in root pom.xml (<eclipse-site> property)