rlsbl v0.92.0 /rlsbl.pipelines.base
On this page

Base classes for release pipelines, including no-op defaults for optional methods and token/credential authentication mixins.

#rlsbl.pipelines.base

#rlsbl.pipelines.base

Base classes for release pipelines, including no-op defaults for optional methods and token/credential authentication mixins.

#BasePipeline

Concrete base providing no-op defaults for optional Pipeline methods.

Subclasses override specific methods to implement their publish mechanism.

#publish

python
def publish(self, dir_path: str, version: str, ctx) -> None

#build_assets

python
def build_assets(self, dir_path: str, version: str, dist_dir: str, ctx) -> list[str]

#template_dir

python
def template_dir(self) -> str | None

#template_mappings

python
def template_mappings(self, ctx) -> list[dict[str, str]]

#build_custom_assets

python
def build_custom_assets(self, dist_dir: str) -> list[str]

Build custom assets defined in the pipeline config.

Reads self.config["custom_assets"] (list of dicts with name and build keys), runs each build command via shell subprocess, verifies the output file exists, and checks its size against self.config["max_asset_size_mb"].

Returns a list of absolute paths to the built asset files. Returns an empty list if no custom_assets are configured.

#required_env_vars

python
def required_env_vars(self) -> list[str]

#TokenPipeline

Base for pipelines that authenticate via a single token env var.

Subclasses set _default_token_var and implement _publish_command.

#publish

python
def publish(self, dir_path: str, version: str, ctx) -> None

#required_env_vars

python
def required_env_vars(self) -> list[str]

#CredentialPipeline

Base for pipelines that authenticate via username/password env vars.

Subclasses set _default_username_var and _default_password_var and implement _publish_command.

#publish

python
def publish(self, dir_path: str, version: str, ctx) -> None

#required_env_vars

python
def required_env_vars(self) -> list[str]