This is an automated email from the ASF dual-hosted git repository.
d4rkstar pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/openserverless.git
The following commit(s) were added to refs/heads/main by this push:
new 5fc8bd0 Build runtimes (#199)
5fc8bd0 is described below
commit 5fc8bd0b0261ea9b29e8dd058449e210cbe64a3e
Author: Michele Sciabarra <[email protected]>
AuthorDate: Thu May 14 15:45:01 2026 +0100
Build runtimes (#199)
* build from sources the operator
* sync testing and Taskfile
* generating the env var
* README.md
---------
Co-authored-by: Trustable User <[email protected]>
Co-authored-by: Michele Sciabarra <[email protected]>
---
README.md | 54 +++++++++++++++++++++++++++++++++++++++++++-----------
Taskfile.yml | 36 ++++++++++++++++++++++++++----------
testing | 2 +-
3 files changed, 70 insertions(+), 22 deletions(-)
diff --git a/README.md b/README.md
index 34b1ac0..0e1b49d 100644
--- a/README.md
+++ b/README.md
@@ -17,6 +17,41 @@ Welcome to [Apache
OpenServerless](https://openserverless.apache.org), an incu
- you need go available on the path
- you need task (https://taskfile.dev) available in the path
+Here the procedures for MacOS, Windows 11 and Ubuntu Linux
+
+## Prepare Mac
+
+On Mac, install brew and Docker Desktop. then do
+
+- `brew install task`
+- `brew install go`
+
+## Prepare Windows
+
+On windows,
+- install Docker Desktop then
+- `wsl --install Ubuntu-24.04`
+
+then enable docker to be used in the distro `Ubuntu-24.04`
+
+Access the distro (`wsl -d Ubuntu-24.04` ) and run:
+
+- `sudo snap install go --classic`
+- `sudo snap install task --classic`
+
+## Prepare Ubuntu Linux
+
+Install docker with
+
+- `curl -sL get.docker.com | sudo bash`
+- `sudo usermod -aG docker $USER`
+- `newgrp`
+
+Then
+
+- `sudo snap install go --classic`
+- `sudo snap install task --classic`
+
## Procedure
### 1. Get the sources
@@ -25,6 +60,10 @@ Clone all the modules and submodules recursively
`git clone https://github.com/apache/openserverless --recurse-submodules`
+and enter in the folder
+
+`cd openserverless`
+
### 2. Build
First clean everything
@@ -38,17 +77,10 @@ then build:
This will
- build the cli
- build the operator image
-TODO: build the runtimes
-
-3. Smoke test
-
-Execute a basic smoke test
-
-`bash smoke.sh`
-
-4. More tests
-
-TODO: execute locally the full test suite under ./testing
+- build the runtimes
+TODO: build the system actions and the streamer
+3. Tests
+TODO: execute the test suite
diff --git a/Taskfile.yml b/Taskfile.yml
index feb41ae..baaa1ff 100644
--- a/Taskfile.yml
+++ b/Taskfile.yml
@@ -28,21 +28,14 @@ tasks:
cmds:
- rm -vf ./ops ~/.ops/{{OS}}-{{ARCH}}/images/kind/*
- build:
- desc: build all
- cmds:
- - task: cli
- - task: operator
- - task: opsroot
- - task: runtimes
-
-
image-save:
desc: save an a SRC image in the TGT file
requires: { vars: [SRC, TGT]}
cmds:
+ - mkdir -p "{{ dir .TGT}}"
- docker save {{.SRC}} -o {{.TGT}}
+
cli:
desc: build the cli
dir: cli
@@ -88,4 +81,27 @@ tasks:
- task build-common
- task build
- task render-runtimes
- - cp runtimes.json ../olaris/rutimes.json
+ - cp runtimes.json ../olaris/runtimes.json
+ - task: runtimes-save
+
+ runtimes-save:
+ desc: save runtimes images
+ dir: runtimes
+ vars:
+ IMAGES:
+ sh: jq -r '.runtimes[][] | select(.default == true) |
"\(.image.prefix)/\(.image.name):\(.image.tag)"' runtimes.json
+ cmds:
+ - for: { var: IMAGES, split: "\n", as: IMG }
+ task: image-save
+ vars:
+ SRC: "registry.hub.docker.com/{{.IMG}}"
+ TGT:
+ sh: echo ~/.ops/{{OS}}-{{ARCH}}/images/kind/$(echo
registry.hub.docker.com/{{.IMG}} | /usr/bin/base64 -w0)
+
+ build:
+ desc: build all
+ cmds:
+ - task: cli
+ - task: operator
+ - task: opsroot
+ - task: runtimes
diff --git a/testing b/testing
index 5bbfa8a..4784e06 160000
--- a/testing
+++ b/testing
@@ -1 +1 @@
-Subproject commit 5bbfa8aabf8b2f22327b6caa708484c3ae4ce066
+Subproject commit 4784e064e0c0b171ceb93b9656d8d1c9f900346f