Hi Michele, a) you say:
> getting all the sources, then create a tar.gz, then that .tar.gz can be > unpacked somewhere, even in an air gapped environment but with a > <registry> > available (that is mandatory) Is it really mandatory? While building in an air gapped environment is a good thing, it should be optional, and the release process should be possible using a CI/CD pipeline. b) you say > Essentially a complete build is: > - building all the images (openwhisk, operator, runtimes, and related > components like the streamer or the devcontainer) and push them in a well > known registry This is a little too vague for me. Could you please list the GitHub URLs of all the projects that need to be built? I cloned the https://github.com/apache/openserverless project along its submodules and I got this: 851e3774f014f193155233ec7997f597af46636b cli (v0.1.0-2501041342.dev-6-g851e377) +a6adb9c806aa6020a54888aa75c7dbf339b8826c devcontainer (heads/main) +d2b2e020d8291ab264703ad336725d29da746c43 olaris (heads/main) +982e48ecfcbaae86ca538bda2146b3e30f260cf3 olaris-op (0.1.0-incubating.2512151437) b1c2ce7b63e5cec138d1b4ab95986df28cd30132 runtimes (2506091954-3-gb1c2ce7) e45b68f3e8a36705d388ab5608d7cb256f55465c site (heads/main) 7cb7f6d64e54949cbb7cd634997b75d244454d4d testing (heads/main) 2d293c9871a5b8ace39e6b42ab152675bb1967f9 vscode (heads/main) Which ones have I to build? How? Here you are the current situation: - cli: no info on how to build - devcontainer: I don't think this needs to be updated - olaris: I don't think this needs to be updated - olaris-op: I don't think this needs to be updated - runtimes: it looks like `task build-common` does what I need - site: it looks like `task build` does what I need - testing: had no time to check yet - vscode: had no time to check yet Then you cite: openwhisk, operator, runtimes, and related components like the streamer Could you please provide the GitHub URL for each of them? Last: https://github.com/apache/openserverless-build its name would suggest that it's what I need to build the whole thing but I'm not sure either (I haven't found any instructions and the page refers to a personal GitHub repository (https://github.com/francescotimperi/openserverless-controller) which seems weird. Thank you Daniele On 2026/02/04 15:51:08 Michele Sciabarra wrote: > I am reposting this email for the new contributors who asked for > informations to help to do a release > > --- > > Hello all, let me explain the structure of the project: > > We have apache/openserverless that is the main repo, and links all the > subrepos with submodules. > > Essentially OpenServerless is an operator that deploys an instance of > openserverless and it is coordinated by the cli ops, that also takes care > also of building kubernetes clusters. > > All the images are referenced in ops in opsroot..json and runtimes.json. > There are many images, some are the openwhisk images, others are runtime > images custom built. > > Essentially a complete build is: > - building all the images (openwhisk, operator, runtimes, and related > components like the streamer or the devcontainer) and push them in a well > know registry > - build the cli and use it to deploy in any kubernetes, starting from the > kind cluster. > > Now, we already build all the images and deploy them in the apache docker > hub registry. So a simple release is as easy as building the cli and > ensuring all the image references apache images. > > A full source release may involve adding a script that builds all the > images in a designated registry. It is possible to do a > > git clone http://github.com/apache/openserverless --recurse-submodules > > getting all the sources, then create a tar.gz, then that .tar.gz can be > unpacked somewhere, even in an air gapped environment but with a <registry> > available (that is mandatory) > > Then with: ./build.sh [<registry>] > > we build all the images and push then on the registry, build the cli with > the references to those images and get a cli so doing > ./ops setup mini > > will build and deploy openserverless in an air gapped environment > > In order to do that we need 2 things to do first: > > - do a simple change to the cli so it can embed its tasks. Currently it > always download them from github, but we should "freeze" some tasks inside > so it is self contained and can work without accessing the network > > - parametrize the builds so we can push them in a local registry > > So let's start fixing those things to prepare for the release. > > Michele Sciabarra | CEO > > m: +44 747 984 8388 > e: [email protected] > l: https://linkedin.com/in/msciab > Nuvolaris Inc | 1209 Orange Street , Wilmington DE > www.nuvolaris.io [image: linkedin icon] > <https://www.linkedin.com/company/nuvolaris-io> [image: youtube icon] > <http://bit.ly/nuvtube> [image: twitter icon] > <https://twitter.com/NuvolarisIo> >
