holos

package module
v0.86.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 2, 2024 License: Apache-2.0 Imports: 2 Imported by: 0

README

Holos - A Holostic Development Platform

Building and maintaining a software development platform is a complex and time consuming endeavour. Organizations often dedicate a team of 3-4 who need 6-12 months to build the platform.

Holos is a tool and a reference platform to reduce the compexity and speed up the process of building a modern, cloud native software development platform.

  • Accelerate new projects - Reduce time to market and operational complexity by starting your new project on top of the Holos reference platform.
  • Modernize existing projects - Incrementally incorporate your existing platform services into Holos for simpler integration.
  • Unified configuration model - Increase safety and reduce the risk of config changes with CUE.
  • First class Helm and Kustomize support - Leverage and reuse your existing investment in existing configuration tools such as Helm and Kustomize.
  • Modern Authentication and Authorization - Holos seamlessly integrates platform identity and access mangement with zero-trust beyond corp style authorization policy.

Quick Installation

go install github.com/holos-run/holos/cmd/holos@latest

Docs and Support

The documentation for developing and using Holos is avaialble at: https://holos.run

For discussion and support, open a discussion.

License

Holos is licensed under Apache 2.0 as found in the LICENSE file.

Documentation

Overview

Package holos defines types for the rest of the system.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type InstancePath

type InstancePath string

A InstancePath is a string representing the absolute filesystem path of a holos instance. It is given a unique type so the API is clear.

type PathCueMod

type PathCueMod string

A PathCueMod is a string representing the absolute filesystem path of a cue module. It is given a unique type so the API is clear.

Directories

Path Synopsis
api
core/v1alpha2
Package v1alpha2 contains the core API contract between the holos cli and CUE configuration code.
Package v1alpha2 contains the core API contract between the holos cli and CUE configuration code.
v1alpha1
Package v1alpha1 defines the api boundary between CUE and Holos.
Package v1alpha1 defines the api boundary between CUE and Holos.
cmd
doc
website
Package website embeds the docs website for the server subcommand.
Package website embeds the docs website for the server subcommand.
internal
builder
Package builder is responsible for building fully rendered kubernetes api objects from various input directories.
Package builder is responsible for building fully rendered kubernetes api objects from various input directories.
cli
cli/controller
Package controller integrates Choria Machine Room into Holos for cluster management.
Package controller integrates Choria Machine Room into Holos for cluster management.
cli/pull
Package pull pulls resources from the PlatformService and caches them in the local filesystem.
Package pull pulls resources from the PlatformService and caches them in the local filesystem.
cli/push
Package push pushes resources to the holos api server.
Package push pushes resources to the holos api server.
cli/register
Package register provides user registration via the command line.
Package register provides user registration via the command line.
client
Package client provides configuration and convenience methods for making API calls to the holos server.
Package client provides configuration and convenience methods for making API calls to the holos server.
ent
errors
Package errors provides error wrapping with location information
Package errors provides error wrapping with location information
logger
Package logger provides logging configuration and helpers to pass a logger instance through the context.
Package logger provides logging configuration and helpers to pass a logger instance through the context.
push
Package push pushes resources to the holos api server.
Package push pushes resources to the holos api server.
server/db
Package db manages database client and schema migrations to interact with entities.
Package db manages database client and schema migrations to interact with entities.
server/handler
Package handler implements service handlers.
Package handler implements service handlers.
server/middleware/authn
Package authn provides the middleware handler responsible for authenticating requests and adding the Identity to the request context.
Package authn provides the middleware handler responsible for authenticating requests and adding the Identity to the request context.
server/middleware/logger
Package logger logs http responses See: https://github.com/elithrar/admission-control/blob/v0.6.7/request_logger.go#L40
Package logger logs http responses See: https://github.com/elithrar/admission-control/blob/v0.6.7/request_logger.go#L40
server/website
Package website serves the holos website with a http server.
Package website serves the holos website with a http server.
strings
Package strings implements simple functions to manipulate UTF-8 encoded strings that are not included in the standard library package.
Package strings implements simple functions to manipulate UTF-8 encoded strings that are not included in the standard library package.
tint
Package tint copied from https://github.com/lmittmann/tint/tree/v1.0.4 to adjust the colors
Package tint copied from https://github.com/lmittmann/tint/tree/v1.0.4 to adjust the colors
token
Package token obtains, caches, and provides an ID token to authenticate to the holos api server.
Package token obtains, caches, and provides an ID token to authenticate to the holos api server.
service

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL