Skip to content
This repository has been archived by the owner on Oct 11, 2023. It is now read-only.

Build time customization

Denise edited this page Mar 1, 2016 · 3 revisions

You can customize RancherOS before building your own binary distribution of the OS. This gives you the ability to call it <my>OS and provide your own versioning.

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.

Example with v0.4.4-dev:

  • 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, which is used 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, which is used if none was provided by DHCP or configured by cloud-config
  • OS_IMAGES_ROOT=rancher - system services docker images' name prefix (e.g. 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 (e.g. 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 (e.g. 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