Skip to content

Latest commit

 

History

History
215 lines (157 loc) · 10.3 KB

README.discovery.sites.adoc

File metadata and controls

215 lines (157 loc) · 10.3 KB

Build a local site

To build JBoss Tools Discovery requires specific versions of Java and Maven. Also, there is some Maven setup. The How to Build JBoss Tools with Maven 3 document will guide you through that setup.

You must pass in the following commandline arguments (target platform URL is calculated from parent pom’s TARGET_PLATFORM_VERSION):

Note

In this example, build against master branch update site.

mvn clean install -f jbosstools/org.jboss.tools.central.discovery/pom.xml -DBUILD_NUMBER=999 \
  -DUPDATE_SITE=http://download.jboss.org/jbosstools/oxygen/snapshots/updates/core/master/ \
  -DEXTRAS_SITE=http://download.jboss.org/jbosstools/oxygen/snapshots/updates/central/master/,http://download.jboss.org/jbosstools/targetplatforms/jbtcentraltarget/4.9.0.AM1-SNAPSHOT/REPO/

or

mvn clean install -f devstudio/com.jboss.devstudio.central.discovery/pom.xml -DBUILD_NUMBER=999 \
  -DUPDATE_SITE=https://devstudio.redhat.com/11/snapshots/updates/core/master/ \
  -DEXTRAS_SITE=https://devstudio.redhat.com/11/snapshots/updates/central/master/,https://devstudio.redhat.com/targetplatforms/jbtcentraltarget/4.9.0.AM1-SNAPSHOT/REPO/

Repeat for Early Access sites (using 2 EXTRAS_SITE URLs so the resulting site can resolve both Core and Early Access content):

Note

In this example, build against stable branch update site.

Note that as of 4.6 / 12.0 the EA update sites are blank, so do not include them in the list of EXTRAS_SITE URLs.

Should they be populated later, the can be re-added at that time.

mvn clean install -f jbosstools/org.jboss.tools.central.discovery.earlyaccess/pom.xml -DBUILD_NUMBER=999 \
  -DUPDATE_SITE=http://download.jboss.org/jbosstools/oxygen/snapshots/updates/core/master/ \
  -DEXTRAS_SITE=http://download.jboss.org/jbosstools/oxygen/snapshots/updates/central/master/,http://download.jboss.org/jbosstools/targetplatforms/jbtcentraltarget/4.9.0.AM1-SNAPSHOT/REPO/,http://download.jboss.org/jbosstools/targetplatforms/jbtearlyaccesstarget/4.9.0.AM1-SNAPSHOT/REPO/

or

mvn clean install -f devstudio/com.jboss.devstudio.central.discovery.earlyaccess/pom.xml -DBUILD_NUMBER=999 \
  -DUPDATE_SITE=https://devstudio.redhat.com/11/snapshots/updates/core/master/ \
  -DEXTRAS_SITE=https://devstudio.redhat.com/11/snapshots/updates/central/master/,https://devstudio.redhat.com/targetplatforms/jbtcentraltarget/4.9.0.AM1-SNAPSHOT/REPO/,https://devstudio.redhat.com/targetplatforms/jbtearlyaccesstarget/4.9.0.AM1-SNAPSHOT/REPO/

Test a local site

  1. Run a local web server, so you can access the directory.xml via an http:// URL. You have many options for this - recommended is NanoHTTPD.

su
# this is the single-file version of nanohttpd that works w/ JDK 1.1 and higher
cd /tmp; wget https://raw.githubusercontent.com/elonen/nanohttpd/nanohttpd-for-java1.1/NanoHTTPD.java
# assuming sources checked out into /home/user/jbosstools-discovery/
javac NanoHTTPD.java; java NanoHTTPD -d /home/user/jbosstools-discovery/ -p 8080
  1. Build target platforms for Central - Core and Early Access. If you want to do more validation, see README.building.target-platforms.adoc

for d in jbtcentral jbtearlyaccess; do
  pushd ${d}target
    BASEDIR=`pwd`
    # Merge changes in new target file to actual target file
    pushd multiple && mvn -U org.jboss.tools.tycho-plugins:target-platform-utils:1.1.0:fix-versions -DtargetFile=${d}-multiple.target && rm -f ${d}-multiple.target ${d}-multiple.target_update_hints.txt && mv -f ${d}-multiple.target_fixedVersion.target ${d}-multiple.target && popd
    # Resolve the new 'multiple' target platform and verify it is self-contained by building it
    mvn -U install -DtargetRepositoryUrl=file://${BASEDIR}/multiple/target/${d}-multiple.target.repo/
  popd
done
  1. Build Discovery plugin + site:

mvn clean install -f jbosstools/org.jboss.tools.central.discovery/pom.xml \
  -DUPDATE_SITE=http://download.jboss.org/jbosstools/oxygen/snapshots/updates/core/master/ \
  -DEXTRAS_SITE=http://download.jboss.org/jbosstools/oxygen/snapshots/updates/central/master/,http://localhost:8080/jbtcentraltarget/multiple/target/jbtcentral-multiple.target.repo/

or

mvn clean install -f devstudio/com.jboss.devstudio.central.discovery/pom.xml \
  -DUPDATE_SITE=https://devstudio.redhat.com/11/snapshots/updates/core/master/ \
  -DEXTRAS_SITE=https://devstudio.redhat.com/11/snapshots/updates/central/master/,http://localhost:8080/jbtcentraltarget/multiple/target/jbtcentral-multiple.target.repo/

Repeat for Early Access plugin + site (using 2 EXTRAS_SITE URLs so the resulting site can resolve both Core and Early Access content):

Note that as of 4.6 / 12.0 the EA update sites are blank, so do not include them in the list of EXTRAS_SITE URLs.

Should they be populated later, the can be re-added at that time.

mvn clean install -f jbosstools/org.jboss.tools.central.discovery.earlyaccess/pom.xml \
  -DUPDATE_SITE=http://download.jboss.org/jbosstools/oxygen/snapshots/updates/core/master/ \
  -DEXTRAS_SITE=http://download.jboss.org/jbosstools/oxygen/snapshots/updates/central/master/,http://localhost:8080/jbtcentraltarget/multiple/target/jbtcentral-multiple.target.repo/,http://localhost:8080/jbtearlyaccesstarget/multiple/target/jbtearlyaccess-multiple.target.repo/

or

mvn clean install -f devstudio/com.jboss.devstudio.central.discovery.earlyaccess/pom.xml \
  -DUPDATE_SITE=https://devstudio.redhat.com/11/snapshots/updates/core/master/ \
  -DEXTRAS_SITE=https://devstudio.redhat.com/11/snapshots/updates/central/master/,http://localhost:8080/jbtcentraltarget/multiple/target/jbtcentral-multiple.target.repo/,http://localhost:8080/jbtearlyaccesstarget/multiple/target/jbtearlyaccess-multiple.target.repo/
  1. Install Eclipse (eg., 4.7 Oxygen JEE bundle)

  2. Launch Eclipse (or Devstudio):

./eclipse -vmargs \
  -Djboss.discovery.directory.url=http://localhost:8080/jbosstools/org.jboss.tools.central.discovery.earlyaccess/target/discovery-site/jbosstools-directory.xml \
  -Djboss.discovery.site.url=http://localhost:8080/jbosstools/org.jboss.tools.central.discovery.earlyaccess/target/discovery-site/ \
  -Djboss.discovery.earlyaccess.site.url=http://localhost:8080/jbosstools/org.jboss.tools.central.discovery.earlyaccess/target/discovery-site/

or

./devstudio -vmargs \
  -Djboss.discovery.directory.url=http://localhost:8080/devstudio/com.jboss.devstudio.central.discovery.earlyaccess/target/discovery-site/devstudio-directory.xml \
  -Djboss.discovery.site.url=http://localhost:8080/devstudio/com.jboss.devstudio.central.discovery.earlyaccess/target/discovery-site/ \
  -Djboss.discovery.earlyaccess.site.url=http://localhost:8080/devstudio/com.jboss.devstudio.central.discovery.earlyaccess/target/discovery-site/
  1. Install Central:

  2. Restart. Review Central’s Software/Update tab. For Early Access connectors, scroll to the bottom of the list of connectors and enable the Early Access Features checkbox. Choose connectors/feature groups to install.

Test a site built w/ Jenkins

  1. Install Eclipse (eg., 4.7 Oxygen JEE bundle)

  2. Launch Eclipse:

./eclipse -vmargs \
  -Djboss.discovery.directory.url=http://download.jboss.org/jbosstools/oxygen/snapshots/updates/discovery.central/master/jbosstools-directory.xml \
  -Djboss.discovery.site.url=http://download.jboss.org/jbosstools/oxygen/snapshots/updates/discovery.central/master/ \
  -Djboss.discovery.earlyaccess.site.url=http://download.jboss.org/jbosstools/oxygen/snapshots/updates/discovery.earlyaccess/master/
  1. Install JBoss Community Central feature from http://download.jboss.org/jbosstools/oxygen/snapshots/updates/discovery.central/master/

  2. Restart. Review Central > Software/Update tab. For Early Access connectors, scroll to the bottom of the list of connectors and enable the Early Access Features checkbox. Choose connectors/feature groups to install.

  3. Or, launch Devstudio like this:

./devstudio -vmargs \
  -Djboss.discovery.directory.url=https://devstudio.redhat.com/11/snapshots/updates/discovery.central/master/devstudio-directory.xml \
  -Djboss.discovery.site.url=https://devstudio.redhat.com/11/snapshots/updates/discovery.central/master/ \
  -Djboss.discovery.earlyaccess.site.url=https://devstudio.redhat.com/11/snapshots/updates/discovery.earlyaccess/master/

Instead of the latest master build, you can also point Eclipse / Devstudio at more stable Central sites: