reqKick
is the Shippable agent that needs to run on the build node to
orchestrate the build. Once the build steps are generated by reqProc,
reqKick
takes over the build execution to do the following:
- execute the build step(s) in the specified order
- execute the build step(s) on either the host or inside a Docker container
- publish build logs at each stage
- cancel the build if the user has done so
- timeout the build if it has reached max allowed time
- aggregate the status across all build steps and pass it back to reqProc.
It is one of the three components that are installed on the host when users initialize the host to act as a build node on Shippable. The other two components that are installed upon node initialization are reqProc and reqExec.
Unlike reqProc or reqExec, that run
as Docker containers on the node, reqKick
runs as a nodejs
application on the build node.
This enables reqKick
to run build steps both on the build node as well as in
a container. Because of this, Shippable supports running jobs directly on the
nodes
which is really helpful for running native macOS and WindowsServer workloads.
Any merged change in the project triggers Shippable assembly lines to run tests on this project and update the status. All downstream dependencies are also built and pushed once this is complete.
Supported platforms:
ARCHITECTURE | OS |
---|---|
x86_64 | Ubuntu_16.04 |
x86_64 | macOS_10.12 |
aarch64 | Ubuntu_16.04 |
x86_64 | WindowsServer_2016 |
reqKick
is updated with every Shippable release. The list of all Shippable releases can be found here.