ctl.plugins.release
Plugin interface for plugins that handle software releases
Classes
ReleasePlugin
ReleasePlugin(ctl.plugins.command.CommandPlugin)
base plugin interface for releasing / packaging software
Class Attributes
- ConfigSchema (
ConfigSchema Class): Base plugin config schema
Methods
_release
def _release(self, **kwargs)
should run release logic
_validate
def _validate(self, **kwargs)
should run build and validation logic
execute
def execute(self, **kwargs)
execute the command(s) specified in the plugin
config command list
overrides and calls ExecutablePlugin.execute
Exposed to CLI
namespace: ctl.{plugin_name}
release
def release(self, **kwargs)
Build, validate and release the package
Exposed to CLI
namespace: ctl.{plugin_name}.release
set_repository
def set_repository(self, repository)
Set release repository. Distributions will be built from that repository.
Currently only supports git type repositories
Attributes
- repository (
str): can either be the name of agittype plugin instance or the path to git repository checkout
validate
def validate(self, **kwargs)
Build and validate the package
Exposed to CLI
namespace: ctl.{plugin_name}.validate
ReleasePluginConfig
ReleasePluginConfig(confu.schema.core.Schema)
Configuration schema for ReleasePlugin
Class Attributes
- repository (
Str): repository target for release - should be a path to a source checkout or the name of a repository type plugin