apache / apache/openserverless
Implement a builder
- Dominant language
- Python
- Stars
- 576
- Forks
- 29
- Avg merge
- 50m
- Merged PRs (30d)
- 13
Description
## Why you need it?
We now support building custom runtimes for actions with requirements, modules and moving foward for compiling actions with java and dotnet
The `ide deploy` can now creates a Dockerfile to add dependencies to a runtime,
we need a service to build them and deploy in the internal registry
the build service should be invoked by the builder when a new image to build is detected
## How it could be?
Using the rest api server of the operator, I would add a "build" action accepting:
```
{
"source": "apache/python:123",
"target: "msciab:hash",
"kind": "python",
"file": ""
}
```
the builder will then create a dockerfile like this
```
FROM
ADD /tmp/requirements
RUN /bin/extend
```
We will update the runtimes to have the NEW /bin/install script that will will manage and install the requirements in the proper way for the various languages (pip install with python, npm install with node, maven with java, and so on)
Note if the build fails, the error message should clearly communitate if you need to update installing the registry or update the runtimes to use a newer, extendisble runtime
## Other related information
do not accept any name different from the namespace otherwise the user could change other people images.
the builder could use [img](https://github.com/genuinetools/img) to build the image quckly
Contributor guide
Assessment
This issue has not been assessed yet.