Hi Michele,

I tried integrating the OpenWhisk build into the Taskfile of PR #198, as
you suggested.

Here is what I did:

    1. Added apache/openwhisk as a git submodule (commit 54cda89, latest on
master, with Pekko 1.1.5)

    2. Added the following tasks to Taskfile.yml:


   - openwhisk:compile — compiles controller and invoker with Gradle
   - openwhisk:docker — builds Docker images (scala base, controller,
   invoker) and saves them locally in ~/.ops/.../images/kind/
   - openwhisk — main task that calls compile then docker

    3. Integrated into the existing task build flow: cli → operator →
*openwhisk* → opsroot

    4. Updated the opsroot task to write controller and invoker image
references into opsroot.json (replacing the old ghcr.io/nuvolaris images)

    5. Added OpenWhisk artifact cleanup to task clean

I followed the same pattern used for the operator: tag based on commit SHA,
local image saving with image-save, opsroot.json update.

I tested the full task build end-to-end on Ubuntu 22.04 (WSL) with Java 17,
Docker 29.4, and Task 3.40.1 — all steps complete successfully: cli,
operator, openwhisk compile, openwhisk docker, and opsroot.

Notes:

   - I did not include the standalone (as discussed on the mailing list,
   the operator uses the controller, not the standalone)
   - The openwhisk:compile task has a status: check that skips
   recompilation if artifacts already exist
   - The Taskfile requires Java 17 as an additional prerequisite (for
   Gradle)

If this approach looks correct, I am happy to wait for your guidance on the
next steps.

Lorenzo

<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
Privo
di virus.www.avast.com
<https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
<#m_-1049685067260733118_DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>

Il giorno dom 3 mag 2026 alle ore 17:34 Michele Sciabarra <
[email protected]> ha scritto:

> Hi Lorenzo, can you try to integrate your build_ow.sh the Taskfile in the
> PR 198 ?
> I am using Taskfile as everything else in the project.
>
>
> Michele Sciabarra | CEO
>
> m: +44 747 984 8388
> e:  [email protected]
> l:   https://linkedin.com/in/msciab
> Nuvolaris Inc | 1209 Orange Street, 19801Wilmington DE - US
> www.nuvolaris.io linkedin.com/in/msciab
>
>
> On Sat, 2 May 2026 at 22:13, Lorenzo Sarna <[email protected]> wrote:
>
> > Hi everyone,
> >
> > following the discussion about building OpenWhisk, I tried compiling the
> > components from source using the openserverless-build project.
> >
> > I cloned the repo, updated the openwhisk submodule to the latest master
> > commit (54cda89, with Pekko 1.1.5), and compiled the controller, invoker,
> > scheduler, and standalone with Gradle.
> > I then built the Docker images locally.
> >
> > During the process I found two issues:
> >
> > Zookeeper in invoker's build.gradle, version 3.4.14 causes a
> > NoClassDefFoundError (ZooKeeperAdmin) with recent Curator versions. I can
> > confirm that Francesco's fix in PR #5565 (upgrade to 3.5.9) resolves the
> > issue.
> >
> > Docker CLI in the standalone Dockerfile, version 18.06.3-ce is not
> > compatible with Docker Engine 24+. Updating to 24.0.9 works correctly.
> >
> > I tested the standalone as a Docker container: the API responds, and I
> was
> > able to create and invoke a Node.js action successfully.
> >
> > I also tested the full controller: it starts with Pekko 1.1.5, connects
> to
> > Kafka, and creates the topics (completed0, health, cacheInvalidation,
> > events). It stops at CouchDB, which is the part managed by the operator
> in
> > the cluster.
> >
> > I created a build_ow.sh script that automates the process: compiles the
> > sources with Gradle and builds the Docker images.
> >
> > Happy to share it if useful.
> >
> > Lorenzo
> >
> >
> > <
> >
> https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail
> > >
> > Privo
> > di virus.www.avast.com
> > <
> >
> https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail
> > >
> > <#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
> >
> > Il giorno sab 2 mag 2026 alle ore 13:42 Michele Sciabarra <
> > [email protected]> ha scritto:
> >
> > > This is perfectly clear.
> > > Indeed we have exactly to do this: build from sources.
> > >
> > > Michele Sciabarra | CEO
> > >
> > > m: +44 747 984 8388
> > > e:  [email protected]
> > > l:   https://linkedin.com/in/msciab
> > > Nuvolaris Inc | 1209 Orange Street, 19801Wilmington DE - US
> > > www.nuvolaris.io linkedin.com/in/msciab
> > >
> > >
> > > On Sat, 2 May 2026 at 09:53, Justin Mclean <[email protected]> wrote:
> > >
> > > > Hi,
> > > >
> > > > Please note that the Docker Hub deployment are not following ASF
> > policy -
> > > > please see
> > https://incubator.apache.org/guides/distribution.html#docker
> > > >
> > > > They should be based on a voted-on release.
> > > >
> > > > Kind Regards,
> > > > Justin
> > > >
> > >
> >
>

Reply via email to