Skip to content

Commit

Permalink
Release SDK-V-0120
Browse files Browse the repository at this point in the history
  • Loading branch information
Albrecht Johannes (DC-IA/EAO5) committed Apr 6, 2023
1 parent 9ac2e53 commit d6d3218
Show file tree
Hide file tree
Showing 266 changed files with 13,891 additions and 3,547 deletions.
4 changes: 2 additions & 2 deletions doc/app_builder_env_changes.md
Expand Up @@ -4,9 +4,9 @@


!!! important
The newest App Builder Environment is always provided with ctrlX WORKS.
The newest App Build Environment is always provided with ctrlX WORKS.

Only the AMD64 version is supported because for every programing language supported by the ctrlX AUTOMATION SDK cross build capability is provided.
Only the AMD64 version is supported because for every programming language supported by the ctrlX AUTOMATION SDK cross build capability is provided.

### Common

Expand Down
10 changes: 5 additions & 5 deletions doc/appdevguide.md
Expand Up @@ -103,7 +103,7 @@ To simplify the delivery of artifacts, we provide a base folder structure with d

**Handover of artifacts**

Once all the required information is available in your local folder, zip the folder using Windows-zip and upload it as "**artifacts.zip**" to the ctrlX World Partner Portal space in the "**.../{company-name}/{app-name}/{version}/**" path.
Once all the required information is available in your local folder, zip the folder using Windows-zip and upload it as "**artifacts.zip**" to the ctrlX World Portal space in the "**.../{company-name}/{app-name}/{version}/**" path.

!!! important
To avoid problems when uploading the artifacts.zip file, please use the Windows-zip feature
Expand All @@ -113,7 +113,7 @@ Once all the required information is available in your local folder, zip the fol
### 2.4 Validation and Signing

Validation is typically carried out in several iterations, depending on the result of a particular validation activity.
If all the required information is provided in the ctrlX World Portal, an email to `ctrlx.world@boschrexroth.de` will trigger a validation loop.
If all the required information is provided in the ctrlX World Portal, an email to `ctrlx.world@boschrexroth.com` will trigger a validation loop.
Basically, the workflow will be as follows:

1. Partner/app developer: Uploads required artifacts and informs Bosch Rexroth
Expand Down Expand Up @@ -244,7 +244,7 @@ The basic app information is checked as a prerequisite by Bosch Rexroth, before

#### 4.1.1 Artifacts Folder Template

The ctrlX World Partner Portal provides a file (artifacts.zip), which can be downloaded and extracted locally.
The ctrlX World Portal provides a file (artifacts.zip), which can be downloaded and extracted locally.
This will create the required folder structure for the mandatory artifacts out-of-the-box, with default descriptions and schema files.

!!!! important
Expand Down Expand Up @@ -336,7 +336,7 @@ The following properties must be defined within the **"snapcraft.yaml"** file (s

- **Title** - The general name of the app that will be shown on all sales channels and customer touch points, e.g. app overview or ctrlX App Store. This is defined together with the partner manager, as part of the business model definitions. Example: "My App"

- **Name** - The technical name of the snap. The name has to be unique in the snap universe and across all snap developer and device vendors. The snap name has to **start with "ctrlx-"** and must be **lowercase** and a **maximum length of 32 characters**. ctrlX World Partners add their company name to the snap name. Example: "ctrlx-partnername-myapp"
- **Name** - The technical name of the snap. The name has to be unique in the snap universe and across all snap developer and device vendors. The snap name has to **start with "ctrlx-"** and must be **lowercase** and a **maximum length of 32 characters**. ctrlX World partners add their company name to the snap name. Example: "ctrlx-partnername-myapp"

- **Confinement** - Must be set to **"strict"** for releases. See also https://snapcraft.io/docs/snap-confinement

Expand Down Expand Up @@ -614,7 +614,7 @@ Please contact your partner manager if a real-time extension might be required f

## 12 Licensing (<span style="color:green;">**OPTIONAL**</span>)<a name="licensing"></a>

If you are ctrlX World Partner you must use the licensing service that is operated by Bosch Rexroth. For information how to adapt an app to the licensing service please have look on the [Licensing Page](licensing.md)
If you are ctrlX World partner you must use the licensing service that is operated by Bosch Rexroth. For information how to adapt an app to the licensing service please have look on the [Licensing Page](licensing.md)

### Appendix
[Guide appendix](appdevguide_other-technologies.md)
Expand Down
5 changes: 5 additions & 0 deletions doc/changelog.md
@@ -1,5 +1,10 @@
## Software Development Kit for ctrlX AUTOMATION

### Version 1.20.0 <small> April 02, 2023</small>

* Add new samples in angular and go
* Update documentation

### Version 1.18.0 <small> November 30, 2022</small>

* Adapt bulk operation from ctrlX Data Layer
Expand Down
2 changes: 1 addition & 1 deletion doc/connecting_qemu_vm_ctrlx.md
@@ -1,4 +1,4 @@
This document describes how SDK QEMU VMs and a ctrlX CORE can be connected.
This document describes how SDK App Build Environments (resp. QEMU VMs) and a ctrlX CORE can be connected.

In our examples we are assuming a Windows 10 host with px.exe as local proxy.

Expand Down
Binary file added doc/images/winscp-files.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/winscp-sites.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
53 changes: 13 additions & 40 deletions doc/install-scripts.md
@@ -1,53 +1,26 @@
An App Build Environment instance created by ctrlX WORKS or based on the scripts under the SDK folder public/scripts/environment has a set of important install scripts in the directory __/home/boschrexroth/.__
The directory __/home/boschrexroth/scripts/__ of an App Build Environment contains a set of important scripts.

## install-sdk.sh
In the file `/home/boschrexroth/scripts/README.md` all files are listed and described.

!!! important
Starting this script must be the first step using a new App Build Environment.

This script downloads the ctrlX AUTOMATION SDK archive from github, extracts the content into the actual directory, sets some x permission flags and installs the ctrlx-datalayer debian package.

Also snapcraft is installed because in the initialization phase during the first boot this snap cannot be installed.
__Hint:__ The ctrlX AUTOMATION SDK contains these scripts also in the folder scripts/environment/scripts.

Here the archive is directly installed into the home directory:
## Some important scripts

cd
./install-sdk.sh
cd ctrlx-automation-sdk

## install-deb.sh
### install-sdk.sh

!!! important
Calling this script once is mandatory for architectural cross-builds of C++ apps.

cd
./install-deb.sh
Run this script first.

Important libraries for the Data Layer communication are installed for both amd64 and arm64 (aarch64) architecture.

## install-go.sh

If you want to develop apps in golang call this script:

cd
./install-go.sh

## install-dotnet.sh

If you want to develop apps in C# call this script:

cd
./install-dotnet.sh
In addition to the ctrlX AUTOMATION SDK, the ctrlx-datalayer debian package, snapcraft and libraries for cross build are installed.

## install-nodejs-npm.sh
~/scripts/install-sdk.sh

If you want to develop apps in Node.js call this script:
Now the directory ctrlx-automation-sdk/ contains the files of the ctrlX AUTOMATION SDK.

cd
./install-nodejs-npm.sh
### install-go, -dotnet, -nodejs

The Node.js snap inclusively the Node Package Manager npm ist installed.
These scripts are installing programming language dependend packages to be able to build apps in the according language.

## install-snapcraft.sh
### install-ctrlx-os-dev-tools.sh

This script installs snapcraft, it is called implicitly by the other scripts.
This script installs packages needed to build a ctrlX CORE image.
52 changes: 52 additions & 0 deletions doc/install-sources-from-github.md
@@ -0,0 +1,52 @@
## Introduction

If you want to contribute the ctrlX AUTOMATION SDK you have to clone the github repository https://github.com/boschrexroth/ctrlx-automation-sdk.git.

After this step you have to merge the runtime content of ths ctrlX AUTOMATION SDKs zip archive into this repo.

These jobs can be initiated by __install-sdk-from-github.sh__ located in the ctrlX AUTOMATION SDK folder __scripts/__

## Installing a Runnable Repository

* Open the github site [https://github.com/boschrexroth/ctrlx-automation-sdk/tree/main/scripts](https://github.com/boschrexroth/ctrlx-automation-sdk/tree/main/scripts)
* Download the script install-sdk-from-github.sh
* Install the script e.g. in the home directory of your App Build Environment
* Create a working directory e.g. ~/github
* Change into this directory and call the script

~/install-sdk-from-github.sh

When the script is finished the ctrlX AUTOMATION SDK is installed into the directory ctrlx-automation-sdk and sample projects can be build at once.

## Build Sample Project

To build a sample project do following steps:

Change directory e.g.:

cd ctrlx-automation-sdk/public/samples-cpp/datalayer.provider.all-data


Build snap:

build-snap-amd64.sh


## Troubleshooting

github grants only a a limited number of accesses to its repositories. If you are behind a proxy this number can be exceeded very fast. In this case the download of the zip archive fails.

To avoid this you need a github account and a personal access token - see [Creating a personal access token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token)

Open the script install-sdk-from-github.sh search the line beginning with LATEST=$(curl -s and add this information:

From

LATEST=$(curl -s ...

change to e.g.

LATEST=$(curl -s -u usrxyz:tokenxyz ...



0 comments on commit d6d3218

Please sign in to comment.