Pipeline SDK
Run a pipeline on push or pull request.
Pass triggers=[...] when you register a pipeline to control when Harmont runs
it on a connected repository.
Push
push(branch=None, tag=None) -> PushTrigger| Parameter | Type | Default | Description |
|---|---|---|---|
branch | str | list[str] | tuple[str, ...] | None | None | — |
tag | str | list[str] | tuple[str, ...] | None | None | — |
Pull request
pull_request(branches=None, types=None) -> PullRequestTrigger| Parameter | Type | Default | Description |
|---|---|---|---|
branches | str | list[str] | tuple[str, ...] | None | None | — |
types | list[str] | tuple[str, ...] | None | None | — |
import harmont as hm
@hm.pipeline(
"ci",
triggers=[hm.push(branch="main"), hm.pull_request(branches=["main"])],
)
def ci() -> hm.Step:
return hm.sh("make test")import { pipeline, push, pullRequest, sh, type PipelineDefinition } from "@harmont/hm";
const pipelines: PipelineDefinition[] = [
{
slug: "ci",
triggers: [push({ branch: "main" }), pullRequest({ branches: ["main"] })],
pipeline: pipeline([sh("make test")]),
},
];
export default pipelines;Full options are in the triggers reference.