Customers in an air-gapped environment will have network restrictions that prevent access to the Broadcom Gemfire repository. To workaround this, you can download all the required Gemfire components following instructions provided below.
All supported Gemfire versions.
Prerequisites:
Procedure:
Set up a parent folder with a pom file and configure maven(.m2/settings.xml) to access Broadcom repo as shown below.
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://apache.org"
xmlns:xsi="http://w3.org"
xsi:schemaLocation="http://apache.org https://apache.org">
<modelVersion>4.0.0</modelVersion>
<groupId>com.broadcom.internal</groupId>
<artifactId>gemfire-offline-downloader</artifactId>
<version>1.0.0</version>
<properties>
<gemfire.version>10.2.5</gemfire.version>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<repositories>
<repository>
<id>gemfire-repository</id>
<name>Tanzu GemFire Release Repository</name>
<url>https://packages.broadcom.com/artifactory/gemfire/</url>
</repository>
</repositories>
<dependencies>
<!-- Core Engine Dependency -->
<dependency>
<groupId>com.vmware.gemfire</groupId>
<artifactId>gemfire-core</artifactId>
<version>${gemfire.version}</version>
</dependency>
<!-- Logging Subsystem Dependency -->
<dependency>
<groupId>com.vmware.gemfire</groupId>
<artifactId>gemfire-logging</artifactId>
<version>${gemfire.version}</version>
</dependency>
<!-- Continuous Queries (CQ) Capability Dependency -->
<dependency>
<groupId>com.vmware.gemfire</groupId>
<artifactId>gemfire-cq</artifactId>
<version>${gemfire.version}</version>
</dependency>
<dependency>
<groupId>com.vmware.gemfire</groupId>
<artifactId>gemfire-old-client-support</artifactId>
<version>${gemfire.version}</version>
</dependency>
<dependency>
<groupId>com.vmware.gemfire</groupId>
<artifactId>gemfire-server-all</artifactId>
<version>${gemfire.version}</version>
</dependency>
<dependency>
<groupId>com.vmware.gemfire</groupId>
<artifactId>gemfire-gfsh</artifactId>
<version>${gemfire.version}</version>
</dependency>
<dependency>
<groupId>com.vmware.gemfire</groupId>
<artifactId>gemfire-wan</artifactId>
<version>${gemfire.version}</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.6.1</version>
<executions>
<execution>
<id>go-offline</id>
<phase>package</phase>
<goals>
<goal>go-offline</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
<settings xmlns="http://apache.org"
xmlns:xsi="http://w3.org"
xsi:schemaLocation="http://apache.org https://apache.org">
<servers>
<server>
<id>gemfire-repository</id>
<username>broadcom email</username>
<password>registry token</password>
</server>
</servers>
<profiles>
<profile>
<id>gemfire-profile</id>
<repositories>
<repository>
<id>gemfire-repository</id>
<name>Tanzu GemFire Release Repository</name>
<url>https://packages.broadcom.com/artifactory/gemfire/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>gemfire-profile</activeProfile>
</activeProfiles>
</settings>
2. Run the command from the parent folder
mvn clean package -U -s ~/.m2/settings.xml\n3. Navigate to your global local repository root
cd ~/.m2/repository4. Package all extracted modules into a zip file.
zip -r ~/Desktop/gemfire-<version>-offline-maven-repo.zip