close

Filter

loading table of contents...

Blueprint Developer Manual / Version 2307

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 http://bit.ly/cmcc-11-supported-environments.

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://npm.coremedia.io), 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 http://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://npm.coremedia.io, you need a GitHub access token which can be created via github.com. It will require the following rights:

  • read:org

  • read:user

  • read:packages

Note

Note

Keep in mind, that the user for which you create the access token must be a member of the coremedia-contributions org in GitHub.

After creating the access token you can use the npm client to log in to https://npm.coremedia.io providing your GitHub username when asked for a username and the generated access token when asked for a password:

pnpm login --registry=https://npm.coremedia.io
Note

Note

The npm login requires usernames to be lowercase. As GitHub usernames are case-insensitive make sure to use lowercase letters when entering your username via pnpm login.

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

pnpm config set @coremedia:registry https://npm.coremedia.io
pnpm config set @jangaroo:registry https://npm.coremedia.io
Note

Note

Please note that https://npm.coremedia.io 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.