Overview
bisos.capability is the python package for BISOS Capability Bundles. A BISOS capability is a complete piece of functionality (a systemd service + its packages + its DNS entry + its nginx vhost, or a non-service software induction like LaTeX+LCNT) declared once and materialized in one shot on a target host.
The package covers a three-way triad of abstractions — CBA at the bottom (the framework, this pip package), CBS in the middle (one -cbs.pcs executable per capability), CBM at the top (one cbmProc.spcs planted per capability leaf). CBM subprocess-invokes CBS at materialization time and does not duplicate CBS content.
Each of the three tiers in detail:
CBA — Capability Bundle Abstraction. The framework layer. Provides cba_seed.py (base CBS singleton), cba_sysd_seed.py (flavor extension for systemd services), cba_csu.py (the cbs_* verb family: cbs_load, cbs_sbom, cbs_assemble, cbs_materialize, cbs_reMaterialize, cbs_unMaterialize, cbs_deMaterialize, cbs_type, cbs_isMaterialized).
CBS — Capability Bundle Specification. A standalone executable -cbs.pcs file that declares one capability’s contents. Uses cba_seed.setup(seedType…, sbom=…, …)= and (for services) cba_sysd_seed.setup(sysdUnitsList[…])=. Invocable as ./foo-cbs.pcs -i cbs_materialize to install / configure / start the whole capability. Example: /bisos/asc/web/bin/airflow-cbs.pcs.
CBM — Capability Bundle Materialization. A cbmProc.spcs planted at a leaf of the CBM tree (sys/cbm/<realm>/<capabilityType>/<capability>/), gated by a sibling cbmProc.control file. Points to a CBS via cbsSpec; does NOT duplicate CBS content. When materialized, subprocess-invokes the CBS. Provides the cbm_* verb family:
cbm_control / cbm_status / cbm_isEnabled — read state
cbm_enable / cbm_disable / cbm_available — write state (gate manipulation; never gated themselves)
cbm_materialize / cbm_reMaterialize / cbm_unMaterialize / cbm_sbom — gated; subprocess-invoke <cbsSpec> -i cbs_<verb>
Load-bearing principle: CBM sits on top of CBS. It does not duplicate CBS content. A cbmProc.spcs is a ~10-line pointer file (capabilityName + cbsSpec); the actual CBS content lives in the referenced -cbs.pcs executable and stays put.
Files in this package
Framework (existing; ship as-is, don’t edit):
cba_seed.py — CbaSeedInfo singleton + setup()
cba_sysd_seed.py — SysdUnit, SysdSeedInfo, sysd flavor
cba_csu.py — cbs_* verb classes
cba_sysd_csu.py — sysdUnitsProc
cbm_csu.py — cbmBase, processCbs
CBM machinery (additive, non-invasive to the above):
cbmProc_seedInfo.py — CbmProcSeedInfo singleton, ControlState enum (available=/=enabled=/=disabled), paramsFromPlantPath(), controlRead/Write, statusRead/Write, resolveCbsSpec(), leafProcessorNames(), walkExamples()
cbmProc_seed.py — atexit registrar for cbmProc-seed.cs
cbmProc_csu.py — cbm_* Cmnd classes + _dispatchCbs() helper
bin/cbmProc-seed.cs — the CBM-aware seed CSXU
Canonical exemplar
Airflow at /bisos/git/auth/bxRepos/bxObjects/bro_rawBisos/bro_rawBisosPlatform/sys/cbm/collective/hereWeb/airflow/ — three-file CBM leaf pointing to airflow-cbs.pcs. See brorawBisosPlatform/README.org for the realm/capabilityType layering.
Tests
py3/tests/verify.sh — 54-assertion smoke suite covering the singleton, Cmnd class presence, control/status roundtrips, paramsFromPlantPath, walkExamples coverage, and cbsSpec resolution across absolute-path/slash-path/basename forms.
Package Documentation At Github
The information below is a subset of the full of documentation for this bisos-pip package. More complete documentation is available at: https://github.com/bisos-pip/capability-cs
Realted Resources
bisos Capabilities Panel |
file:/panels/capabili ties/_nodeBase_/fullUsagePanel-en.org |
CBM airflow exemplar |
/bisos/git/auth/bxRe pos/bxObjects/brorawBisos/br orawBisosPlatform/README.org |
Legacy airflow CBS |
/bisos/asc/web/bin/airflow-cbs.pcs |
FTO walker (planted leaves) |
biso s/git/auth/bxRepos/bisos-pip/fileObj |
Table of Contents TOC
Installation
The sources for the bisos.capability pip package is maintained at: https://github.com/bisos-pip/capability.
The bisos.capability pip package is available at PYPI as https://pypi.org/project/bisos.capability
You can install bisos.capability with pip or pipx.
Installation With pip
If you need access to bisos.capability as a python module, you can install it with pip:
pip install bisos.capability
Installation With pipx
If you only need access to bisos.capability as a command on command-line, you can install it with pipx:
pipx install bisos.capability
The following commands are made available:
seedCapability.cs
exmpl-capability.cs
Part of BISOS and ByStar — ByStar Internet Services Operating System
bisos.capability is part of BISOS.
bisos.capability as a Standalone Piece of BISOS
bisos.capability is a standalone piece of BISOS. It can be used as a self-contained Python package separate from BISOS. Follow the installation and usage instructions below for your own use.
Documentation and Blee-Panels
bisos.capability is part of ByStar Digital Ecosystem http://www.by-star.net.
This module’s primary documentation is in the form of Blee-Panels. Additional information is also available in: http://www.by-star.net/PLPC/180047
bisos.capability Blee-Panels
bisos.capability Blee-Panels are in ./panels directory. From within Blee and BISOS these panels are accessible under the Blee “Panels” menu.
Support
Metadata
Release files for bisos.capability 0.25
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| bisos_capability-0.25.tar.gz | 45.4 kB | Details |
Release files / bisos_capability-0.25.tar.gz
| Download URL | bisos_capability-0.25.tar.gz |
|---|---|
| Size | 45.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
01d2798acaa14da6afbf71c4ccd46c322aecb4855ac1ee55db556fdab21a8c9f
|
|
BLAKE2b-256 checksum How to use checksums |
220baf0def72527c5a74e4961dcbde56a1727042e66a65e2cd5e4dd06bada835
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.11.2
|