Skip to content
This repository has been archived by the owner on Aug 1, 2022. It is now read-only.

Cheat Sheet

Vladimir Mutafov edited this page Dec 16, 2021 · 15 revisions

Docker Build & Push

  • Local:

    cd releng/server
    docker build -t dirigiblelabs/xsk .
    docker push dirigiblelabs/xsk
    
  • Cloud Foundry:

    cd releng/sap-cf
    docker build -t dirigiblelabs/xsk-cf .
    docker push dirigiblelabs/xsk-cf
    
  • Kyma:

    cd releng/sap-kyma
    docker build -t dirigiblelabs/xsk-kyma . 
    docker push dirigiblelabs/xsk-kyma
    
  • Developer - if you want to use a HotSwap enabled JDK:

    cd releng/developer
    docker build -t dirigiblelabs/xsk --build-arg JDK_TYPE=hotswap-jdk --build-arg USE_HOTSWAP_JDK .
    

    Using a HotSwap enabled JVM like TravaOpenJDK enables you to patch Java code while still debugging. Additional info if using IntelliJ could be found here. Have in mind the HotSwap limitations described there should not exist in the XSK as the hotswap-jdk configuration in Docker uses a Dynamic Code Evolution VM by default.

Clean up XSK database

DROP VIEW DIRIGIBLE_DISCUSSIONS_BOARD_RATING;
DROP VIEW DIRIGIBLE_DISCUSSIONS_BOARD_STATS;
DROP VIEW DIRIGIBLE_DISCUSSIONS_STATS;

DROP TABLE DIRIGIBLE_BPM;
DROP TABLE DIRIGIBLE_DATA_STRUCTURES;
DROP TABLE DIRIGIBLE_DISCUSSIONS_BOARD;
DROP TABLE DIRIGIBLE_DISCUSSIONS_BOARD_TAG;
DROP TABLE DIRIGIBLE_DISCUSSIONS_BOARD_VOTE;
DROP TABLE DIRIGIBLE_DISCUSSIONS_TAGS;
DROP TABLE DIRIGIBLE_DISCUSSIONS_USERS;
DROP TABLE DIRIGIBLE_DISCUSSIONS_COMMENT;
DROP TABLE DIRIGIBLE_EXTENSIONS;
DROP TABLE DIRIGIBLE_EXTENSION_POINTS;
DROP TABLE DIRIGIBLE_IDENTITY;
DROP TABLE DIRIGIBLE_JOBS;
DROP TABLE DIRIGIBLE_LISTENERS;
DROP TABLE DIRIGIBLE_MIGRATIONS;
DROP TABLE DIRIGIBLE_ODATA;
DROP TABLE DIRIGIBLE_ODATA_CONTAINER;
DROP TABLE DIRIGIBLE_ODATA_MAPPING;
DROP TABLE DIRIGIBLE_ODATA_SCHEMA;
DROP TABLE DIRIGIBLE_PUBLISH_LOGS;
DROP TABLE DIRIGIBLE_PUBLISH_REQUESTS;
DROP TABLE DIRIGIBLE_SECURITY_ACCESS;
DROP TABLE DIRIGIBLE_SECURITY_ROLES;
DROP TABLE DIRIGIBLE_SYNCHRONIZER_STATE;
DROP TABLE DIRIGIBLE_SYNCHRONIZER_STATE_LOG;
DROP TABLE DIRIGIBLE_WEBSOCKETS;

DROP TABLE QUARTZ_BLOB_TRIGGERS;
DROP TABLE QUARTZ_CALENDARS;
DROP TABLE QUARTZ_CRON_TRIGGERS;
DROP TABLE QUARTZ_FIRED_TRIGGERS;
DROP TABLE QUARTZ_LOCKS;
DROP TABLE QUARTZ_PAUSED_TRIGGER_GRPS;
DROP TABLE QUARTZ_SCHEDULER_STATE;
DROP TABLE QUARTZ_SIMPLE_TRIGGERS;
DROP TABLE QUARTZ_SIMPROP_TRIGGERS;
DROP TABLE QUARTZ_TRIGGERS;
DROP TABLE QUARTZ_JOB_DETAILS;

DROP TABLE XSK_DATA_STRUCTURES;
DROP TABLE XSK_IMPORTED_CSV_RECORDS;
DROP TABLE XSK_JOBS;
DROP TABLE XSK_ODATA;
DROP TABLE XSK_PRIVILEGES;
DROP TABLE XSK_SECURE_STORE_LIST;
DROP TABLE XSK_SECURITY_ACCESS;
DROP TABLE XSK_TABLE_IMPORT_TO_CSV;

Chrome Extensions

To Visualize XML install chrome extension xml-tree It will be used when showing xml related data, for example as *.xsodata.

Integration Tests

  • Main focus is to test against PostgreSQL, MySQL and SAP HANA Cloud.

  • There is a specific name pattern for each integration test (ending in ITTest).

  • The itests profile is to be run as follows:

    mvn verify -P itests -Dhana.url="jdbcUrl" -Dhana.username="jdbcUsername" -Dhana.password="jdbcPassword"
    

    Note that you have to provide the credentials of your own HANA Cloud instance and more importantly to wrap them in quotes! Otherwise you might not be able to connect to the db instance due some special characters in respective db properties.

  • To find more details about an Insufficient Privileges Error execute the following stored procedure:

    call SYS.GET_INSUFFICIENT_PRIVILEGE_ERROR_DETAILS ('<ERROR-GUID>', ?) 

    Note: Before executing the command, replace the <ERROR-GUID> placeholder.

Create Delivery Units

https://help.sap.com/viewer/a4d43a319ecf464e9d838454a6bdb9ad/2.0.03/en-US/d5ca92aba6b4445aba17ca3f8d671217.html

A delivery unit (DU) is a group of transportable packages that contain objects used for content delivery. You can use the SAP HANA Application Lifecycle Management to create a DU for your application content or your software component.

Prerequisites

To create a delivery unit with the SAP HANA Application Lifecycle Management, you must ensure the following prerequisites are met: You have access to an SAP HANA system. You have the privileges granted by a role based on the SAP HANA sap.hana.xs.lm.roles::Administrator user role template. The vendor ID is defined for the DU; the vendor ID defines the repository namespace in which the new DU resides.

Context

You use a DU to transport the design-time objects that are stored in the SAP HANA repository between two systems, for example, from a development system to a consolidation system. To create a new delivery unit using the SAP HANA application lifecycle management, perform the following steps.

Procedure

1. Open SAP HANA Application Lifecycle Management. SAP HANA Application Lifecycle Management is available on the SAP HANA XS Web server at the following URL: http://:80/sap/hana/XS/lm

2. Choose the PRODUCTS tab. Choose the Delivery Units tab.

Choose Create.

The New Delivery Unit dialog box appears.

Enter details for the new DU.

When entering details, note the following points:

  • Name

The field is mandatory and you must follow strict naming conventions, for example, use capital letters.

  • Vendor

This field is mandatory. However, you cannot enter a vendor here; the box is populated by the value you enter when defining the vendor in the SETTINGS tab.

  • Version

Version numbers must take the form “#.#.#”, for example, 1.0.5, where: 1 = the DU version number 0 = the support package version (if required) 5 = the patch version (if required) ##Note The numbers you enter here refer to the application component that you are developing; the numbers do not refer to the patch or service-pack level deployed on the SAP HANA server. Choose Create. The new delivery unit is added to the SAP HANA repository in the namespace specified by the vendor ID and the application path. Check the status bar at the bottom of the browser window for error messages. Choose the message link to display the message text.

Project

Architecture

Tips & Tricks

Infrastructure

Troubleshooting guide

Clone this wiki locally