From 431c1ed04a0ee50d8912eb69a7b8509d2dc2998a Mon Sep 17 00:00:00 2001 From: Yusuke Kuoka Date: Tue, 26 Oct 2021 12:53:19 +0900 Subject: [PATCH] Add how-to for testing controller built from PR (#908) We occasionally ask you to help testing actions-runner-controller built from a pull requested branch, like in https://github.com/actions-runner-controller/actions-runner-controller/issues/829#issuecomment-950252645 and https://github.com/actions-runner-controller/actions-runner-controller/issues/892#issuecomment-950113578. To make the process more streamlined, I'd like to add some guide for that, so that we can just point to the guide when asking for help and we can improve the guide in a more sustainable manner. Co-authored-by: Callum Tait <15716903+toast-gear@users.noreply.github.com> --- CONTRIBUTING.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 4f6210bc..ceabc038 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,5 +1,20 @@ ## Contributing +### Testing Controller Built from a Pull Request + +We always appreciate your help in testing open pull requests by deploying custom builds of actions-runner-controller onto your own environment, so that we are extra sure we didn't break anything. + +It is especially true when the pull request is about GitHub Enterprise, both GHEC and GHES, as [maintainers don't have GitHub Enterprise environments for testing](/README.md#github-enterprise-support). + +The process would look like the below: + +- Clone this repository locally +- Checkout the branch. If you use the `gh` command, run `gh pr checkout $PR_NUMBER` +- Run `NAME=$DOCKER_USER/actions-runner-controller VERSION=canary make docker-build docker-push` for a custom container image build +- Update your actions-runner-controller's controller-manager deployment to use the new image, `$DOCKER_USER/actions-runner-controller:canary` + +Please also note that you need to replace `$DOCKER_USER` with your own DockerHub account name. + ### How to Contribute a Patch Depending on what you are patching depends on how you should go about it. Below are some guides on how to test patches locally as well as develop the controller and runners.