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
def publish(self, dir_path: str, version: str, ctx) -> None#build_assets
def build_assets(self, dir_path: str, version: str, dist_dir: str, ctx) -> list[str]#template_dir
def template_dir(self) -> str | None#template_mappings
def template_mappings(self, ctx) -> list[dict[str, str]]#build_custom_assets
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
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
def publish(self, dir_path: str, version: str, ctx) -> None#required_env_vars
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
def publish(self, dir_path: str, version: str, ctx) -> None#required_env_vars
def required_env_vars(self) -> list[str]