diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 9f1ab7baf144858c03103531c66575de0f26d13e..097bbd3a829c4fbb7188e702ac12a6023b82b127 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -5,6 +5,29 @@ email, or any other method with the owners of this repository before making a ch Please note we have a code of conduct, please follow it in all your interactions with the project. +## Creating a new runner + +To create a new runner you must create a folder named after it that contains a `Dockerfile` and a `docker_init.sh` file. You can use the `r_dev` folder as an example. + +Once your container, with all the necessary tools, is built with the `docker_init.sh` script`s (with executable rights). You need to register an account on the [Docker store](https://store.docker.com). + +You can now execute the following command to upload your image to the [Docker store](https://store.docker.com). Where `<image_name>` is the name of the image you just built from your `Dockerfile` and `<docker_login>` is the login of your account on the [Docker store](https://store.docker.com). + +```sh +docker login +docker tag <image_name> <docker_login>/<image_name> +docker push <docker_login>/<image_name> +``` + +You then need to create a `\*_runner_register.sh` script similar to the `r_dev_runner_register.sh` script with executable rights. You will need to edit the following arguments: + +- `--docker-image <docker_login>/<image_name>` +- `--description "docker runner for <image_name>"` +- `--tag-list "docker, <some other tag identifying your runner>"` + +You can now register your runner and test it. + + ## Pull Request Process 1. Ensure any install or build dependencies are removed before the end of the layer when doing a