close

Filter

loading table of contents...

Blueprint Developer Manual / Version 2512.0

Table Of Contents

3.1 Prerequisites

In order to work with the Blueprint workspace you need to meet some requirements.

Note

Note

For an overview of exact versions of the supported software environments (Java, servlet container, databases, operating systems, directory services, web browsers) please refer to the Supported Environments document at https://releases.coremedia.com/cmcc-13/artifacts/CMCC 13 - Supported Environments.pdf.

CoreMedia Account

In order to get access to the download page, to the CoreMedia contributions repository, the CoreMedia's Maven repository (https://repository.coremedia.com) and npm repository (https://repository.coremedia.com/nexus/repository/coremedia-npm/), you need to have a CoreMedia account. See Section 1.3.1, “Registration” for details. If in doubt, contact CoreMedia support to validate your permissions (see Section 1.3.5, “CoreMedia Support”).

Note

Note

CoreMedia User Orientation for CoreMedia Developers and Partners

Find the latest overview of all CoreMedia services and further references at:

http://documentation.coremedia.com/new-user-orientation

Find the current online documentation at:

Find the download links at the CoreMedia release page at:

Internet access

CoreMedia provides the CoreMedia Content Cloud components as Maven artifacts. These components in turn depend on many third-party components. If your operator has not yet set up and populated a local repository manager, you need Internet access so that Maven can download the artifacts.

Note

Note

Maven and npm Repositories and Internet Access

The CoreMedia Blueprint workspace relies heavily on Maven and pnpm to build the workspace. That is, Maven and pnpm will download CoreMedia artifacts, third-party components, npm packages and Maven plugins from the private CoreMedia repository and other, public repositories (Maven Central Repository, for example). This might interfere with your company's internet policy. Moreover, if a big project accesses public repositories too frequently, the repository operator might block your domain in order to prevent overload. The best way to circumvent both problems is to use a repository manager like Sonatype Nexus for Maven and npm (since Nexus 3), or Verdaccio (https://verdaccio.org/ for npm. Both decouple the development computers from direct Internet access.

Maven Repository Manager

CoreMedia strongly recommends to use a repository manager to mirror CoreMedia's Maven repository, for example Sonatype Nexus. Alternatively, if a repository manager is not available, configure your credentials for the CoreMedia Maven repositories in your ~/.m2/settings.xml file as shown below. Simply replace USERNAME and PASSWORD with your CoreMedia user name and password. It is strongly recommended, that you do not enter the password in plaintext in the settings.xml file but encrypt the password. To do so, follow the instructions at https://maven.apache.org/guides/mini/guide-encryption.html or any other available Maven documentation.

<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
          http://maven.apache.org/xsd/settings-1.0.0.xsd">
  <interactiveMode>false</interactiveMode>
  <servers>
    <server>
      <id>coremedia.external.releases</id>
      <username>USERNAME</username>
      <password>PASSWORD</password>
    </server>
  </servers>
</settings>
MAVEN_OPTS

Maven requires the following minimal memory settings:

MAVEN_OPTS=-Xmx2048m
  
NPM registry

To be able to download the packages from https://repository.coremedia.com/nexus/repository/coremedia-npm/, you need to configure your .npmrc.

To tell pnpm to actually download CoreMedia and Jangaroo packages from the CoreMedia npm registry use the following commands:

First, create a base64 encoded string of your credentials in the format username:password. You can use the following command on Linux or macOS (the result is bmFtZUBjb3JlbWVkaWEuY29tOmFkbWluMTIz):

echo -n 'name@coremedia.com:admin123' | openssl base64
pnpm config set "@coremedia:registry" "https://repository.coremedia.com/nexus/repository/coremedia-npm/"
pnpm config set "@jangaroo:registry" "https://repository.coremedia.com/nexus/repository/coremedia-npm/"
pnpm config set "//repository.coremedia.com/nexus/repository/coremedia-npm/:_auth" bmFtZUBjb3JlbWVkaWEuY29tOmFkbWluMTIz
Note

Note

Please note that https://repository.coremedia.com/nexus/repository/coremedia-npm/ does not mirror packages from https://www.npmjs.com and therefore cannot be used as the default registry for pnpm.

Configuring proxy for pnpm

In order to operate pnpm behind a proxy server, you need to configure it accordingly. See https://pnpm.io/npmrc#https-proxy

If your credentials include an @ symbol, just put your username and password inside quotes. If you use any other special characters in your credentials, you have to convert them into equivalent hexadecimal unicode.

Active Directory users have to pass their credentials in the URL as follows:

pnpm config set proxy "http://domain\\username:password@proxy.domain.tld:port"

Configuring proxy for Git

Some setups require access to GitHub (e.g. when using Git submodules). You then need to configure git to use a proxy in a similar way:

git config --global http.proxy http://username:password@proxy.domain.tld:port
git config --global https.proxy http://username:password@proxy.domain.tld:port

Note

Note

Many companies use a proxy auto-config (PAC) file which defines how browsers and other user agents choose the appropriate proxy server for fetching a given URL. Unfortunately neither pnpm nor git support these files. As a workaround, you can install a local proxy server which uses a PAC file to decide how to forward a request.

Search Results

Table Of Contents
warning

Your Internet Explorer is no longer supported.

Please use Mozilla Firefox, Google Chrome, or Microsoft Edge.