diff --git a/Build-time-customization.md b/Build-time-customization.md new file mode 100644 index 0000000..eb3120f --- /dev/null +++ b/Build-time-customization.md @@ -0,0 +1,38 @@ +# Build-time Customization + +You can customize RancherOS before building your own binary distribution of the OS. That means, you can call RancherOS OS and use your own version and other stuff. + +## os + +https://github.com/rancher/os + +In the root of the project you can find these files: `build.conf`, `build.conf.amd64`, `build.conf.arm`. They set the customizable options for the build. + +`build.conf` sets architecture independent options and all of them are **required**, that means the values should be set and below are the current defaults for these options: + +- IMAGE_NAME=rancher/os - installer docker image name +- VERSION=v0.4.4-dev - version +- DFS_IMAGE=rancher/docker:v1.10.2 - docker-from-scratch image (for the skeleton root filesystem) +- SELINUX_POLICY_URL=https://github.com/rancher/refpolicy/releases/download/v0.0.1/policy.29 - the default compiled SELinux policy +- HOSTNAME_DEFAULT=rancher - default hostname (if non was provided by DHCP or configured by cloud-config) +- OS_IMAGES_ROOT=rancher - system services docker images' name prefix (like in `rancher/os-console`) +- OS_SERVICES_REPO=https://raw.githubusercontent.com/rancher/os-services - URL where to find an `index.yml` file listing the "external" system services (like `debian-console`) +- OS_RELEASES_YML=https://releases.rancher.com/os/releases.yml - URL to release index for upgrades and rollbacks + +`build.conf.{arch}` set the options for that particular architecture, only +- COMPILED_KERNEL_URL=https://github.com/rancher/os-kernel/releases/download/Ubuntu-4.2.0-28.33-rancher/linux-4.2.8-ckt3-rancher-x86.tar.gz (**optional**) - compiled and packaged Linux kernel with modules and firmware +- DOCKER_BINARY_URL=https://get.docker.com/builds/Linux/x86_64/docker-1.10.2 (**required**) -, URL where to get the docker binary built for that particular architecture + + +## os-images + +https://github.com/rancher/os-images + +In os-images, `build.conf` sets the following options: + +- VERSION=v0.4.4-dev - OS version for which we're building the system service images +- OS_IMAGES_ROOT=rancher - system services docker images' name prefix (like in `rancher/os-console`) +- OS_BASE_URL_amd64=https://github.com/rancher/os-base/releases/download/v2015.11.1-1/os-base_amd64.tar.xz - os-base for amd64 tarball download URL +- OS_BASE_SHA1_amd64=098a64ddb42381fc62ba515870aa8dc6ce19002f - os-base for amd64 tarball sha1 hash +- OS_BASE_URL_arm=https://github.com/rancher/os-base/releases/download/v2015.11.1-1/os-base_arm.tar.xz - os-base for arm tarball download URL +- OS_BASE_SHA1_arm=1da38279861aee631a5d41a7ac9835e4f996d843 - os-base for arm tarball sha1 hash