Files
gh-secondsky-sap-skills-ski…/references/hdi-management.md
2025-11-30 08:55:22 +08:00

4.7 KiB

SAP HANA CLI - HDI Container Management

Source: https://github.com/SAP-samples/hana-developer-cli-tool-example

HDI (HANA Deployment Infrastructure) containers provide isolated runtime environments for database artifacts.


HDI Command Overview

Command Purpose
activateHDI Enable HDI service
adminHDI Assign HDI admin privileges
adminHDIGroup Manage group administrators
containers List containers
createContainer Create new container
createContainerUsers Create access users
dropContainer Remove container
createGroup Create container group
dropGroup Remove container group

Activate HDI Service

Enable HDI for a database tenant.

# Activate HDI
hana-cli activateHDI

# For specific tenant
hana-cli activateHDI [tenant]

Prerequisites: SYSTEM user or equivalent privileges.


HDI Administration

Assign HDI Admin

# Make user an HDI administrator
hana-cli adminHDI [user]

Group Administration

# Add group administrator
hana-cli adminHDIGroup [group] [user]

Container Operations

List Containers

# List all containers
hana-cli containers

# With aliases
hana-cli cont
hana-cli listContainers

# Filter by container name pattern
hana-cli containers -c "MY_APP*"

# Filter by group
hana-cli containers -g "DEV_GROUP"

# Limit results
hana-cli containers -l 50

Options:

Option Alias Default Description
container c * Container filter pattern
containerGroup g * Group filter pattern
limit l 200 Maximum results

Output: Container name, group, schema, creator, creation timestamp (UTC).

UI Alternative:

hana-cli containersUI

Create Container

# Create new container
hana-cli createContainer [container] [group]

# Example
hana-cli createContainer MY_APP_HDI DEV_GROUP

Create Container Users

Creates the standard HDI access users for a container.

# Create users for container
hana-cli createContainerUsers [container]

# Example
hana-cli createContainerUsers MY_APP_HDI

Users Created:

  • Runtime user (read/execute)
  • Design-time user (deploy artifacts)
  • Admin user (full access)

Drop Container

# Remove container
hana-cli dropContainer [container]

# Example
hana-cli dropContainer MY_APP_HDI

Warning: This permanently deletes all artifacts in the container.


Container Groups

Create Group

# Create container group
hana-cli createGroup [group]

# Example
hana-cli createGroup DEV_GROUP

Drop Group

# Remove container group
hana-cli dropGroup [group]

# Example
hana-cli dropGroup DEV_GROUP

Note: Group must be empty before deletion.


HANA Cloud HDI Instances

For SAP HANA Cloud, use cloud-specific commands:

# List Cloud HDI instances
hana-cli hanaCloudHDIInstances

# UI version
hana-cli hanaCloudHDIInstancesUI

HDI Container Workflow

Typical Development Workflow

  1. Enable HDI (if not enabled):

    hana-cli activateHDI
    
  2. Create group (optional organization):

    hana-cli createGroup MY_PROJECT_GROUP
    
  3. Create container:

    hana-cli createContainer MY_APP_HDI MY_PROJECT_GROUP
    
  4. Create users:

    hana-cli createContainerUsers MY_APP_HDI
    
  5. Verify:

    hana-cli containers -c "MY_APP*"
    

Cleanup Workflow

  1. List containers:

    hana-cli containers
    
  2. Drop container:

    hana-cli dropContainer MY_APP_HDI
    
  3. Drop group (if empty):

    hana-cli dropGroup MY_PROJECT_GROUP
    

HDI Connection in default-env.json

{
  "VCAP_SERVICES": {
    "hana": [{
      "name": "hdi-container",
      "label": "hana",
      "credentials": {
        "host": "hostname",
        "port": "443",
        "user": "MY_APP_HDI_RT",
        "password": "RuntimeUserPassword",
        "schema": "MY_APP_HDI",
        "hdi_user": "MY_APP_HDI_DT",
        "hdi_password": "DesignTimePassword",
        "certificate": "-----BEGIN CERTIFICATE-----..."
      }
    }]
  }
}

Common Issues

Issue Cause Solution
HDI not activated Service disabled Run activateHDI
Cannot create container Insufficient privileges Get HDI admin rights
Container exists Name conflict Use unique name
Cannot drop group Group not empty Drop containers first

*Reference: https://github.com/SAP-samples/hana-developer-cli-tool-example*