Add '-runner-image' and '-docker-image' flags
This commit is contained in:
parent
ffdbe5cee9
commit
e6952f5ca1
|
|
@ -36,7 +36,6 @@ import (
|
|||
)
|
||||
|
||||
const (
|
||||
defaultImage = "summerwind/actions-runner:latest"
|
||||
containerName = "runner"
|
||||
)
|
||||
|
||||
|
|
@ -51,6 +50,8 @@ type RunnerReconciler struct {
|
|||
Log logr.Logger
|
||||
Scheme *runtime.Scheme
|
||||
GitHubClient *github.Client
|
||||
RunnerImage string
|
||||
DockerImage string
|
||||
}
|
||||
|
||||
// +kubebuilder:rbac:groups=actions.summerwind.dev,resources=runners,verbs=get;list;watch;create;update;patch;delete
|
||||
|
|
@ -196,9 +197,9 @@ func (r *RunnerReconciler) newPod(runner v1alpha1.Runner) (corev1.Pod, error) {
|
|||
group int64 = 0
|
||||
)
|
||||
|
||||
image := runner.Spec.Image
|
||||
if image == "" {
|
||||
image = defaultImage
|
||||
runnerImage := runner.Spec.Image
|
||||
if runnerImage == "" {
|
||||
runnerImage = r.RunnerImage
|
||||
}
|
||||
|
||||
pod := corev1.Pod{
|
||||
|
|
@ -211,7 +212,7 @@ func (r *RunnerReconciler) newPod(runner v1alpha1.Runner) (corev1.Pod, error) {
|
|||
Containers: []corev1.Container{
|
||||
{
|
||||
Name: containerName,
|
||||
Image: image,
|
||||
Image: runnerImage,
|
||||
ImagePullPolicy: "Always",
|
||||
Env: []corev1.EnvVar{
|
||||
{
|
||||
|
|
@ -239,7 +240,7 @@ func (r *RunnerReconciler) newPod(runner v1alpha1.Runner) (corev1.Pod, error) {
|
|||
},
|
||||
{
|
||||
Name: "docker",
|
||||
Image: "docker:19.03.5-dind",
|
||||
Image: r.DockerImage,
|
||||
VolumeMounts: []corev1.VolumeMount{
|
||||
{
|
||||
Name: "docker",
|
||||
|
|
|
|||
19
main.go
19
main.go
|
|
@ -34,6 +34,11 @@ import (
|
|||
// +kubebuilder:scaffold:imports
|
||||
)
|
||||
|
||||
const (
|
||||
defaultRunnerImage = "summerwind/actions-runner:v2.165.1"
|
||||
defaultDockerImage = "docker:19.03.5-dind"
|
||||
)
|
||||
|
||||
var (
|
||||
scheme = runtime.NewScheme()
|
||||
setupLog = ctrl.Log.WithName("setup")
|
||||
|
|
@ -47,11 +52,19 @@ func init() {
|
|||
}
|
||||
|
||||
func main() {
|
||||
var metricsAddr string
|
||||
var enableLeaderElection bool
|
||||
var (
|
||||
metricsAddr string
|
||||
enableLeaderElection bool
|
||||
|
||||
runnerImage string
|
||||
dockerImage string
|
||||
)
|
||||
|
||||
flag.StringVar(&metricsAddr, "metrics-addr", ":8080", "The address the metric endpoint binds to.")
|
||||
flag.BoolVar(&enableLeaderElection, "enable-leader-election", false,
|
||||
"Enable leader election for controller manager. Enabling this will ensure there is only one active controller manager.")
|
||||
flag.StringVar(&runnerImage, "runner-image", defaultRunnerImage, "The image name of self-hosted runner container.")
|
||||
flag.StringVar(&dockerImage, "docker-image", defaultDockerImage, "The image name of docker sidecar container.")
|
||||
flag.Parse()
|
||||
|
||||
ghToken := os.Getenv("GITHUB_TOKEN")
|
||||
|
|
@ -85,6 +98,8 @@ func main() {
|
|||
Log: ctrl.Log.WithName("controllers").WithName("Runner"),
|
||||
Scheme: mgr.GetScheme(),
|
||||
GitHubClient: ghClient,
|
||||
RunnerImage: runnerImage,
|
||||
DockerImage: dockerImage,
|
||||
}
|
||||
|
||||
if err = runnerReconciler.SetupWithManager(mgr); err != nil {
|
||||
|
|
|
|||
Loading…
Reference in New Issue