You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+26-62Lines changed: 26 additions & 62 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,9 +3,9 @@
3
3
## Overview
4
4
5
5
The Script-Languages-Container-Tool (exaslct) is the build tool for the script language container.
6
-
You can build, export and upload script-language container from so-called flavors
7
-
which are description how to build the script language container. You can find pre-defined flavors
8
-
in the [script-languages-release](https://github.com/exasol/script-languages-release) repository.
6
+
You can build, export and upload script-language container from so-called flavors
7
+
which are description how to build the script language container. You can find pre-defined flavors
8
+
in the [script-languages-release](https://github.com/exasol/script-languages-release) repository.
9
9
There we also described how you could customize these flavors to your needs.
10
10
<h1align="center">Exasol Toolbox</h1>
11
11
@@ -37,22 +37,15 @@ Building script-language container for extending Exasol UDFs.
37
37
38
38
### Prerequisites
39
39
40
+
**Note**: Since version 1.0.0 the "starter scripts" shipped with previous version, which pulled the `exaslct` docker container runtime, were removed. If you can't use Python3, you still can use our [AI-lab](https://github.com/exasol/ai-lab) which provides VM images, AMI images and a Docker images, all capable of building script-language-container.
41
+
40
42
#### For installation
41
43
42
-
In order to install this tool, your system needs to provide
44
+
In order to install this tool, your system needs to provide
* with support for [multi-stage builds required](https://docs.docker.com/develop/develop-images/multistage-build/)
77
60
* host volume mounts need to be allowed
78
61
79
-
* System Setup
80
-
* We recommend at least 50 GB free disk space on the partition
81
-
where Docker stores its images, on linux Docker typically stores
62
+
* System Setup
63
+
* We recommend at least 50 GB free disk space on the partition
64
+
where Docker stores its images, on linux Docker typically stores
82
65
the images at /var/lib/docker.
83
66
* For the partition where the output directory (default: ./.build_output)
84
67
is located we recommend additionally at least 10 GB free disk space.
@@ -87,41 +70,39 @@ Further, prerequisites might be necessary for specific tasks. These are listed u
87
70
88
71
### Installation
89
72
90
-
You have two options to use this project:
91
-
- as a pure Python project
92
-
- using the _start scripts_ which pull the correct container image from Dockerhub and execute it within the Docker container
93
-
94
-
#### Pure Python
73
+
In general, it's good practice to install the package in a virtual environment, using `venv` or `Poetry`.
95
74
96
-
Find the wheel package for a specific [release](https://github.com/exasol/script-languages-container-tool/releases) under assets.
75
+
#### Pip via PyPi
97
76
98
-
Install the python package with `python3 -m pip install https://github.com/exasol/script-languages-container-tool/releases/download/$VERSION/exasol_script_languages_container_tool-$VERSION-py3-none-any.whl`. Replace $VERSION with the latest version or the specific version you are interested in.
This will create a subfolder with the scripts itself and a symlink `exaslct` in $YOUR_INSTALL_PATH, which can be used as entry point.
108
89
109
90
### Usage
110
91
111
-
For simplicity the following examples use the starter script version (`exaslct`). If you want to use the pure Python package, simply replace `exaslct` with `python3 -m exasol_script_languages_container_tool.main` in all examples.
92
+
For simplicity the following examples use the script version (`exaslct`), which will be installed together with the Python package. The script is just an alias for `python3 -m exasol_script_languages_container_tool.main`.
112
93
113
94
#### How to build an existing flavor?
114
95
115
96
Create the language container and export it to the local file system
@@ -158,23 +139,6 @@ ALTER SESSION SET SCRIPT_LANGUAGES='<LANGUAGE_ALIAS>=localzmq+protobuf:///<bucke
158
139
* Can push Docker images to Docker registries
159
140
* Run tests for you container against an Exasol DB (docker-db or external db)
160
141
161
-
## Limitations
162
-
163
-
* Caution with symbolic links:
164
-
If you use symbolic links inside any directory of the command line arguments
165
-
they must not point to files or directories outside the root of the path of the
166
-
command line argument (i.e. --flavor-path ./flavors/my_flavor/ => There must be no symbolic
167
-
link inside ./flavors/my_flavor point to anywhere outside of ./flavors/my_flavor).
168
-
Background: Local directories paths must be mounted manually to the docker container.
169
-
We currently support only the mounting of the given command line arguments, but we do not analyze
170
-
the content of those directories.
171
-
Plan is to fix this limitation with [#35](https://github.com/exasol/script-languages-container-tool/issues/35)
172
-
173
-
174
-
### MacOsX Limitations
175
-
176
-
* On MacOsX all arguments (flavors path, output directory, etc.) must point to locations within the current directory (background is that the MacOsX version does not support mount binding additional directories).
0 commit comments