Back to modules
v0.1.207

tinysystems/http-module

View Source

Container Image

europe-west2-docker.pkg.dev/tinyplatform/tinysystems/http-module-v0:0.1.207

Components 3 available

H

http_auth_parse

Extracts Basic Auth credentials from HTTP headers. In port receives: context + headers array. Out port always emits: {context, found, user, password}. If Authorization header with 'Basic' scheme found, decodes base64 and sets found=true with user/password. Otherwise found=false.

H

http_request

Outbound HTTP request maker. Request port receives: context, method, timeout, URL, headers, contentType, body. Blocks until HTTP response received. On success (status < 400): emits context + response on Response port. On failure or status >= 400: returns error, or if enableErrorPort=true in settings, emits on Error port instead.

H

http_server

HTTP request handler. Start port receives configuration and starts the server (blocks until stopped). Each incoming HTTP request emits on Request port. Wire Request to processing logic, then wire result to Response port with statusCode, contentType, headers, body.

Release Notes

Tiny Systems HTTP Module

HTTP server and client components for building web-facing automations.

Components

Component Description
HTTP Server Embedded HTTP server with configurable routes and TLS support
HTTP Client Make outbound HTTP requests with full header and body control
Basic Auth Parser Parse and validate HTTP Basic Authentication headers
OpenAPI Request Make HTTP calls driven by an OpenAPI/Swagger specification

Installation

helm repo add tinysystems https://tiny-systems.github.io/module/
helm install http-module tinysystems/tinysystems-operator \
  --set controllerManager.manager.image.repository=ghcr.io/tiny-systems/http-module

Run locally

go run cmd/main.go run --name=http-module --namespace=tinysystems --version=1.0.0

Part of Tiny Systems

This module is part of the Tiny Systems platform -- a visual flow-based automation engine running on Kubernetes.

License

This module's source code is MIT-licensed. It depends on the Tiny Systems Module SDK (BSL 1.1). See LICENSE for details.

Required Permissions

This module requires elevated Kubernetes RBAC permissions.

API GroupResourcesVerbs
core
pods
get
core
services
getlistupdate
networking.k8s.io
ingresses
getlistupdate