(openserverless-site) branch main updated: [#67] added authors shortcodes and first article ported from opensource.net (#74)

2025-07-26 Thread bsalzano
This is an automated email from the ASF dual-hosted git repository.

bsalzano pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/openserverless-site.git


The following commit(s) were added to refs/heads/main by this push:
 new ca65d63e [#67] added authors shortcodes and first article ported from 
opensource.net  (#74)
ca65d63e is described below

commit ca65d63e848a5898a0568ef6cd08764d2ba498b4
Author: Alberto Anelli 
AuthorDate: Sat Jul 26 15:57:57 2025 +0200

[#67] added authors shortcodes and first article ported from opensource.net 
 (#74)

* [#67] created authors shortcodes and added under blog/news the first 
article from opensource.net

* [#67] fix typo

* [#67] ported the second article from opensource.net

* [#67] moved new articles in  a new section
---
 assets/scss/_styles_project.scss   |  40 
 content/en/blog/articles/_index.md |   4 +
 content/en/blog/articles/building-mcp-servers.md   | 219 +
 .../en/blog/articles/openserverless-easiest-ai.md  |  72 +++
 content/en/ops-mcp-testing.webp| Bin 0 -> 91770 bytes
 content/en/ops-mcp-using.webp  | Bin 0 -> 81734 bytes
 layouts/shortcodes/authors/bruno.html  |   9 +
 layouts/shortcodes/authors/michele.html|   9 +
 static/blog/authors/bruno.jpeg | Bin 0 -> 37877 bytes
 static/blog/authors/michele.png| Bin 0 -> 14699 bytes
 10 files changed, 353 insertions(+)

diff --git a/assets/scss/_styles_project.scss b/assets/scss/_styles_project.scss
index 4ba1541d..228d2f92 100644
--- a/assets/scss/_styles_project.scss
+++ b/assets/scss/_styles_project.scss
@@ -184,3 +184,43 @@ aside{
 }
 }
 
+
+// Author card styles
+.author-card {
+  display: flex;
+  align-items: flex-start;
+  background: #f5f6f7;
+  border: 1px solid #e0e0e0;
+  border-radius: 6px;
+  padding: 16px;
+  margin-bottom: 16px;
+  box-shadow: 0 1px 2px rgba(0,0,0,0.03);
+  gap: 16px;
+  max-width: 100%;
+}
+.author-card img {
+  width: 64px;
+  height: 64px;
+  border-radius: 50%;
+  object-fit: cover;
+  flex-shrink: 0;
+  border: 2px solid #ddd;
+  background: #fff;
+}
+.author-card .author-info {
+  flex: 1;
+}
+.author-card .author-info strong {
+  font-size: 1.1em;
+}
+@media (max-width: 600px) {
+  .author-card {
+flex-direction: column;
+align-items: center;
+text-align: center;
+  }
+  .author-card .author-info {
+margin-top: 8px;
+  }
+}
+
diff --git a/content/en/blog/articles/_index.md 
b/content/en/blog/articles/_index.md
new file mode 100644
index ..638d865e
--- /dev/null
+++ b/content/en/blog/articles/_index.md
@@ -0,0 +1,4 @@
+---
+title: "Articles"
+weight: 20
+---
\ No newline at end of file
diff --git a/content/en/blog/articles/building-mcp-servers.md 
b/content/en/blog/articles/building-mcp-servers.md
new file mode 100644
index ..176bf0e4
--- /dev/null
+++ b/content/en/blog/articles/building-mcp-servers.md
@@ -0,0 +1,219 @@
+---
+title: "Building MCP Servers the Easy Way with Apache OpenServerless"
+date: 2025-07-08
+description: >
+  How to build an MCP-compliant server using Apache OpenServerless and a 
custom MCP plugin.
+---
+
+It’s 2025, and apparently, if your infrastructure isn’t running on MCP 
servers, are you even in tech? From stealth startups to sleepy enterprises 
pretending to innovate, everyone claims to be “built on MCP” — or at least 
wishes they were. It’s the new badge of modernity.
+
+In this guide, I’ll show how to build an MCP-compliant server using Apache 
OpenServerless and our custom MCP plugin. By deploying OpenServerless and using 
the plugin, you can quickly expose tools via the Model Context Protocol (MCP). 
This setup enables fast and portable AI workflows across any cloud or on-prem 
environment.
+
+## The hard part about running an MCP Server
+
+Spinning up an MCP server sounds cool and it looks easy. But the real pain 
doesn’t start until after the “hello world” works. Because running an MCP 
server isn’t the challenge — it’s **keeping it running** and updating it.
+
+Want to make it available on the Internet? Prepare for a joyride through SSL, 
firewall configs, and reverse proxies. Thinking of scaling it? That’s when the 
fun begins: orchestration, autoscaling, persistence, model versioning, billing 
— suddenly you’re less “AI pioneer” and more “distributed systems janitor.”
+
+This is where OpenServerless with MCP truly shines: enabling fast, portable, 
and secure AI tool deployment with zero DevOps, seamless orchestration, and 
full compliance with the Model Context Protocol.
+
+## Introducing `olaris-mcp`, the OpenServerless plugin to build MCP servers
+
+We developed an Apache OpenServerless plugin, or more precisely an **ops** 
plugin for building MCP servers with Apache OpenServerless functions. A quick 
reminder: **ops** is the CLI and it supports plugins as a way to ext

(openserverless-site) branch main updated: [#67] fix dark-mode links for blog (#75)

2025-07-26 Thread bsalzano
This is an automated email from the ASF dual-hosted git repository.

bsalzano pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/openserverless-site.git


The following commit(s) were added to refs/heads/main by this push:
 new 4e5bd098 [#67] fix dark-mode links for blog (#75)
4e5bd098 is described below

commit 4e5bd0982de66a498720e575c139d219066e8c11
Author: Alberto Anelli 
AuthorDate: Sat Jul 26 15:56:50 2025 +0200

[#67] fix dark-mode links for blog (#75)

* [#67] fix dark-mode links for blog

* [#67] updated css root body color
---
 assets/scss/_styles_project.scss | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/assets/scss/_styles_project.scss b/assets/scss/_styles_project.scss
index 859f3e60..4ba1541d 100644
--- a/assets/scss/_styles_project.scss
+++ b/assets/scss/_styles_project.scss
@@ -37,6 +37,7 @@
 --td-pre-bg: #ececec;
 --bs-body-bg: #ff;
 --bs-emphasis-color: #33;
+--bs-body-color: #33;
   }
   
   .dark-mode {
@@ -49,6 +50,7 @@
 --td-pre-bg: #1e1e1e;
 --bs-body-bg: #33;
 --bs-emphasis-color: #ff;
+--bs-body-color: #e0e0e0;
   }
   
   body {



(openserverless-admin-api) branch main updated (b270107 -> 434b400)

2025-07-26 Thread bsalzano
This is an automated email from the ASF dual-hosted git repository.

bsalzano pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/openserverless-admin-api.git


 discard b270107  chore: added .asf.yaml
 new 434b400  chore: added .asf.yaml

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (b270107)
\
 N -- N -- N   refs/heads/main (434b400)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:



(openserverless-admin-api) branch main updated: chore: added .asf.yaml

2025-07-26 Thread bsalzano
This is an automated email from the ASF dual-hosted git repository.

bsalzano pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/openserverless-admin-api.git


The following commit(s) were added to refs/heads/main by this push:
 new b270107  chore: added .asf.yaml
b270107 is described below

commit b270107bb15beafd849ee389b3d8d086242070a4
Author: Bruno Salzano 
AuthorDate: Sun Jul 27 07:46:56 2025 +0200

chore: added .asf.yaml

Added .asf.yaml file
---
 .asf.yaml | 8 
 1 file changed, 8 insertions(+)

diff --git a/.asf.yaml b/.asf.yaml
new file mode 100644
index 000..a2ccb37
--- /dev/null
+++ b/.asf.yaml
@@ -0,0 +1,8 @@
+github:
+  description: "OpenServerless Admin API"
+  homepage: https://github.com/apache/openserverless-admin-api
+  labels:
+- openserverless
+- rest
+- api
+- apache
\ No newline at end of file



(openserverless-admin-api) 01/01: chore: added .asf.yaml

2025-07-26 Thread bsalzano
This is an automated email from the ASF dual-hosted git repository.

bsalzano pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/openserverless-admin-api.git

commit 434b4005b21f786300c29b6e2e8b3d3b4f7cb5a7
Author: Bruno Salzano 
AuthorDate: Sun Jul 27 07:46:56 2025 +0200

chore: added .asf.yaml

Added .asf.yaml file
---
 .asf.yaml | 8 
 1 file changed, 8 insertions(+)

diff --git a/.asf.yaml b/.asf.yaml
new file mode 100644
index 000..a2ccb37
--- /dev/null
+++ b/.asf.yaml
@@ -0,0 +1,8 @@
+github:
+  description: "OpenServerless Admin API"
+  homepage: https://github.com/apache/openserverless-admin-api
+  labels:
+- openserverless
+- rest
+- api
+- apache
\ No newline at end of file



(openserverless-admin-api) branch main updated: chore: updated readme. Added first github action

2025-07-26 Thread bsalzano
This is an automated email from the ASF dual-hosted git repository.

bsalzano pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/openserverless-admin-api.git


The following commit(s) were added to refs/heads/main by this push:
 new c141e2e  chore: updated readme. Added first github action
c141e2e is described below

commit c141e2e977b1f078ffb7c31cf37afde9e3a6af41
Author: Bruno Salzano 
AuthorDate: Sat Jul 26 23:26:29 2025 +0200

chore: updated readme. Added first github action
---
 .dockerignore  | 17 +
 .github/check.yaml | 37 +
 .licenserc.yaml| 34 ++
 README.md  | 19 +++
 4 files changed, 107 insertions(+)

diff --git a/.dockerignore b/.dockerignore
index 46b5a39..fd64569 100644
--- a/.dockerignore
+++ b/.dockerignore
@@ -1,3 +1,20 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
 .vscode
 .venv
 tokens
diff --git a/.github/check.yaml b/.github/check.yaml
new file mode 100644
index 000..c0b534d
--- /dev/null
+++ b/.github/check.yaml
@@ -0,0 +1,37 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+name: openserverless-admin-api-check
+on: 
+  push:
+branches: [main]
+  pull_request:
+branches: [main]
+
+jobs:
+  check:
+name: Check OpenServerless Operator
+runs-on: ubuntu-22.04
+steps:
+  - name: Checkout
+uses: actions/checkout@v2
+with:
+  submodules: recursive
+  - name: License   
+uses: apache/skywalking-eyes@main
+  
\ No newline at end of file
diff --git a/.licenserc.yaml b/.licenserc.yaml
new file mode 100644
index 000..4caaedf
--- /dev/null
+++ b/.licenserc.yaml
@@ -0,0 +1,34 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+header:
+  license:
+spdx-id: Apache-2.0
+copyright-owner: Apache Software Foundation
+
+  paths-ignore:
+- '**/*.sample'
+- 'env.example'
+- '.git-hooks/pre-commit'
+- '**/_*'
+- 'LICENSE'
+- 'NOTICE'
+- 'DISCLAIMER'
+- '**/*.json'
+- '**/*.service'
+- '**/*.txt'
+- 'uv.lock'
\ No newline at end of file
diff --git a/README.md b/README.md
index 7f38c00..aee68d5 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,22 @@
+
 # OpenServerless Admin API
 
 ## Project description



(openserverless-admin-api) branch main updated: chore: renamed nuvolaris module

2025-07-26 Thread bsalzano
This is an automated email from the ASF dual-hosted git repository.

bsalzano pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/openserverless-admin-api.git


The following commit(s) were added to refs/heads/main by this push:
 new 6c93d1f  chore: renamed nuvolaris module
6c93d1f is described below

commit 6c93d1f275753cd72d87816f35709faf4453450e
Author: Bruno Salzano 
AuthorDate: Sat Jul 26 23:19:02 2025 +0200

chore: renamed nuvolaris module

renamed nuvolaris module to openserverless
---
 .vscode/launch.json  |  5 +
 README.md| 16 +++-
 olaris-api/env.tpl   |  8 
 {nuvolaris => openserverless}/__init__.py|  6 +++---
 {nuvolaris => openserverless}/common/kube_api_client.py  |  4 ++--
 .../common/openwhisk_authorize.py|  4 ++--
 {nuvolaris => openserverless}/common/response_builder.py |  0
 {nuvolaris => openserverless}/common/validation.py   |  0
 {nuvolaris => openserverless}/common/whisk_user_data.py  |  0
 .../common/whisk_user_generator.py   |  0
 {nuvolaris => openserverless}/config/app_config.py   |  0
 {nuvolaris => openserverless}/couchdb/bcrypt_util.py |  0
 {nuvolaris => openserverless}/couchdb/couchdb_util.py|  2 +-
 {nuvolaris => openserverless}/error/api_error.py |  0
 {nuvolaris => openserverless}/error/config_exception.py  |  0
 {nuvolaris => openserverless}/impl/auth/auth_service.py  |  8 
 .../impl/onboard/user_validation.py  |  6 +++---
 {nuvolaris => openserverless}/rest/api.py|  4 ++--
 {nuvolaris => openserverless}/rest/auth.py   |  8 
 {nuvolaris => openserverless}/security/ow_authorize.py   |  4 ++--
 .../security/validate_ow_auth.py |  4 ++--
 pyproject.toml   |  2 +-
 run.sh   |  2 +-
 23 files changed, 43 insertions(+), 40 deletions(-)

diff --git a/.vscode/launch.json b/.vscode/launch.json
index 7c2664b..4821d3d 100644
--- a/.vscode/launch.json
+++ b/.vscode/launch.json
@@ -1,14 +1,11 @@
 {
-// Usare IntelliSense per informazioni sui possibili attributi.
-// Al passaggio del mouse vengono visualizzate le descrizioni degli 
attributi esistenti.
-// Per altre informazioni, visitare: 
https://go.microsoft.com/fwlink/?linkid=830387
 "version": "0.2.0",
 "configurations": [
 {
 "name": "Debug OpenServerless Admin API",
 "type": "debugpy",
 "request": "launch",
-"module": "nuvolaris"
+"module": "openserverless"
 }
 
 ]
diff --git a/README.md b/README.md
index 4f33f0e..7f38c00 100644
--- a/README.md
+++ b/README.md
@@ -1,7 +1,21 @@
 # OpenServerless Admin API
 
+## Project description
+
 Lighweight OpenServerless Admin REST API Layer.
 
+Available APIs at the moment:
+
+### Authentication API
+
+`POST /system/api/v1/auth` - Perform the user Authentication relying on wsku 
metadata stored into internal CouchDB.
+
+`PATCH /system/api/v1/auth/{login}` - Update the user password patching the 
corresponding wsku/\ entry.
+
+### Info API
+
+`GET /system/info` - Info endpoint
+
 
 ## Developer instructions
 
@@ -14,6 +28,6 @@ Give the command task `setup-developer` will:
 - install dependencies
 
 After that, you can use VSCode debugger to start the application.
-Otherwise you can give an `uv run -m nuvolaris` to start.
+Otherwise you can give an `uv run -m openserverless` to start.
 
 Open http://localhost:5002/system/apidocs/ to see the API documentation.
diff --git a/olaris-api/env.tpl b/olaris-api/env.tpl
deleted file mode 100644
index 01b2298..000
--- a/olaris-api/env.tpl
+++ /dev/null
@@ -1,8 +0,0 @@
-AUTHO_CLIENT=
-AUTH0_SECRET=
-AUTH0_DOMAIN=
-AUTH0_ENABLED=true
-
-RECAPTCHA_SECRET=
-RECAPTCHA_VALIDATE=false
-RECAPTCHA_VALID_DOMAINS=register.nuvolaris.dev;nuvolaris.dev;nuvolaris.io;localhost
\ No newline at end of file
diff --git a/nuvolaris/__init__.py b/openserverless/__init__.py
similarity index 93%
rename from nuvolaris/__init__.py
rename to openserverless/__init__.py
index 85ed16a..e313bc1 100644
--- a/nuvolaris/__init__.py
+++ b/openserverless/__init__.py
@@ -64,9 +64,9 @@ swagger = Swagger(app=app,config=swagger_config,merge=True)
 
 listen_port = os.environ.get("LISTEN_PORT", "5000")
 
-import nuvolaris.rest.api
-import nuvolaris.rest.auth
+import openserverless.rest.api
+import openserverless.rest.auth
 
-if __name__ == "nuvolaris":
+if __name__ == "openserverless":
 from waitress import serve
 serve(app, host="0.0.0.0", port=listen_port)
\ No newline at end of file
diff --git a/nuvolaris/common/kube_api_client.py 
b/openserverless/common/kube_api_client.py
similarity index 98%
rename from nuvolaris/com

(openserverless-admin-api) branch main created (now 2ce2289)

2025-07-26 Thread bsalzano
This is an automated email from the ASF dual-hosted git repository.

bsalzano pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/openserverless-admin-api.git


  at 2ce2289  First commit

This branch includes the following new commits:

 new 2ce2289  First commit

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.