Update NIC naming and Readme file
Update systemd NIC naming scheme to match previous behavior. Various updates made to README.md. Change-Id: Iba5e6d845794e555ccd6ce8f0a84118461380330
This commit is contained in:
parent
821aa1aa7a
commit
7af9d957f0
@ -26,10 +26,14 @@ DISTRO ?= ubuntu_focal
|
|||||||
WORKDIR ?= ./config
|
WORKDIR ?= ./config
|
||||||
# Specify if you want to specify qcow config directories manually instead of using default naming conventions
|
# Specify if you want to specify qcow config directories manually instead of using default naming conventions
|
||||||
QCOW_CONF_DIRS ?=
|
QCOW_CONF_DIRS ?=
|
||||||
# Set to true if you want to skip multistrap build step for testing
|
# Set to true to skip multistrap.sh script. Useful for testing
|
||||||
SKIP_MULTISTRAP ?=
|
SKIP_MULTISTRAP ?=
|
||||||
# Set to true if you want to skip the other playsbooks except osconfig for osconfig playbook testing
|
# Set to true to skip multistrap playbook. Useful for testing
|
||||||
OSCONFIG_TEST ?=
|
SKIP_MULTI_ROLE ?=
|
||||||
|
# Set to true to skip osconfig playbook. Useful for testing
|
||||||
|
SKIP_OSCONFIG_ROLE ?=
|
||||||
|
# Set to true to skip livecdcontent playbook. Useful for testing
|
||||||
|
SKIP_LIVECDCONTENT_ROLE ?=
|
||||||
IMAGE ?= ${DOCKER_REGISTRY}/${IMAGE_PREFIX}/${IMAGE_NAME}:${IMAGE_TAG}-${DISTRO}
|
IMAGE ?= ${DOCKER_REGISTRY}/${IMAGE_PREFIX}/${IMAGE_NAME}:${IMAGE_TAG}-${DISTRO}
|
||||||
QCOW_IMAGE ?= ${DOCKER_REGISTRY}/${IMAGE_PREFIX}/${QCOW_IMAGE_NAME}:${IMAGE_TAG}-${DISTRO}
|
QCOW_IMAGE ?= ${DOCKER_REGISTRY}/${IMAGE_PREFIX}/${QCOW_IMAGE_NAME}:${IMAGE_TAG}-${DISTRO}
|
||||||
PROXY ?=
|
PROXY ?=
|
||||||
|
@ -45,7 +45,7 @@ sudo make IMAGE_TYPE=qcow cut_image
|
|||||||
|
|
||||||
In the above example, set ``IMAGE_TYPE`` to ``iso`` or ``qcow`` as appropriate. This will be passed into the container to instruct it which type of image to build. Also include ``DOCKER_REGISTRY`` override if you wish to use a local docker image as described in the previous section.
|
In the above example, set ``IMAGE_TYPE`` to ``iso`` or ``qcow`` as appropriate. This will be passed into the container to instruct it which type of image to build. Also include ``DOCKER_REGISTRY`` override if you wish to use a local docker image as described in the previous section.
|
||||||
|
|
||||||
This makefile target uses config files provided in the images/image-builder/config directory. Modify these files as needed in order to customize your iso and qcow generation.
|
This makefile target uses config files provided in the `images/image-builder/config` directory. **Modify these files as needed in order to customize your iso and qcow generation.** This provides a good place for adding and testing customizations to build parameters, without needing to modify the ansible playbooks themselves.
|
||||||
|
|
||||||
# Building behind a proxy
|
# Building behind a proxy
|
||||||
|
|
||||||
@ -63,6 +63,16 @@ sudo make DOCKER_REGISTRY=mylocalreg PROXY=http://proxy.example.com:8080 IMAGE_T
|
|||||||
sudo make DOCKER_REGISTRY=mylocalreg PROXY=http://proxy.example.com:8080 IMAGE_TYPE=qcow cut_image
|
sudo make DOCKER_REGISTRY=mylocalreg PROXY=http://proxy.example.com:8080 IMAGE_TYPE=qcow cut_image
|
||||||
```
|
```
|
||||||
|
|
||||||
|
# Useful testing flags
|
||||||
|
|
||||||
|
The `SKIP_MULTI_ROLE` build flag is useful if you would like to test local updates to the `osconfig` playbook, or updates to custom configs for this playbook. This saves time since you do not need to rebuild the target filesystem. For example:
|
||||||
|
|
||||||
|
```
|
||||||
|
sudo make SKIP_MULTI_ROLE=true build
|
||||||
|
```
|
||||||
|
|
||||||
|
Similiarly, osconfig and livecdcontent roles can be skipped using `SKIP_OSCONFIG_ROLE` and `SKIP_LIVECDCONTENT_ROLE` respectively. `SKIP_LIVECDCONTENT_ROLE` may be useful in combination with `SKIP_MULTI_ROLE` if you want to test out playbook changes to `osconfig` (however, it won't show up in the final bootable ISO image unless you don't skip `SKIP_LIVECDCONTENT_ROLE`).
|
||||||
|
|
||||||
# Division of Configuration Management responsibilities
|
# Division of Configuration Management responsibilities
|
||||||
|
|
||||||
Configuration management of the base OS is divided into several realms, each with their own focus:
|
Configuration management of the base OS is divided into several realms, each with their own focus:
|
||||||
@ -87,3 +97,8 @@ Configuration management of the base OS is divided into several realms, each wit
|
|||||||
# Supported OSes
|
# Supported OSes
|
||||||
|
|
||||||
- Ubuntu 20.04 LTS
|
- Ubuntu 20.04 LTS
|
||||||
|
|
||||||
|
# FAQ
|
||||||
|
|
||||||
|
Q: Why is the build target slow?
|
||||||
|
A: There is a `mksquashfs` command which runs as part of the build target, and performs slowly if your build environment lacks certain CPU flags which accelerate compression. Use "host-passthrough" or equivalent in your build environment to pass through these CPU flags. In libvirt domain XML, you would change your `cpu` mode element as follows: `<cpu mode='host-passthrough' check='none'/>`
|
||||||
|
@ -3,7 +3,7 @@ rootfs_arch: amd64
|
|||||||
k8s_version: 1.18.6-00
|
k8s_version: 1.18.6-00
|
||||||
kernel_base_pkg: linux-image-generic
|
kernel_base_pkg: linux-image-generic
|
||||||
kernel_headers_pkg: linux-headers-generic
|
kernel_headers_pkg: linux-headers-generic
|
||||||
systemd_nic_names_policy: keep kernel database onboard path slot
|
systemd_nic_names_policy: kernel database onboard path slot
|
||||||
systemd_nic_alternative_names_policy: database onboard path slot
|
systemd_nic_alternative_names_policy: database onboard path slot
|
||||||
ubuntu_packages:
|
ubuntu_packages:
|
||||||
- apparmor
|
- apparmor
|
||||||
|
@ -113,7 +113,7 @@ cp assets/playbooks/inventory.yaml $build_dir/opt/assets/playbooks/inventory.yam
|
|||||||
cp assets/playbooks/base-chroot.yaml $build_dir/opt/assets/playbooks/base-chroot.yaml
|
cp assets/playbooks/base-chroot.yaml $build_dir/opt/assets/playbooks/base-chroot.yaml
|
||||||
cp -r assets/playbooks/roles/multistrap $build_dir/opt/assets/playbooks/roles
|
cp -r assets/playbooks/roles/multistrap $build_dir/opt/assets/playbooks/roles
|
||||||
# Run multistrap
|
# Run multistrap
|
||||||
if [ -z $OSCONFIG_TEST ]; then
|
if [ -z $SKIP_MULTI_ROLE ]; then
|
||||||
sudo -E ansible-playbook -i assets/playbooks/inventory.yaml assets/playbooks/base-chroot.yaml -vv
|
sudo -E ansible-playbook -i assets/playbooks/inventory.yaml assets/playbooks/base-chroot.yaml -vv
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -126,13 +126,15 @@ else
|
|||||||
mkdir -p $build_dir/config
|
mkdir -p $build_dir/config
|
||||||
fi
|
fi
|
||||||
cp -r $workdir/scripts $build_dir/config/
|
cp -r $workdir/scripts $build_dir/config/
|
||||||
sudo -E ansible-playbook -i assets/playbooks/inventory.yaml assets/playbooks/base-osconfig.yaml --extra-vars "run_context=common" -vv
|
if [ -z "$SKIP_OSCONFIG_ROLE" ]; then
|
||||||
|
sudo -E ansible-playbook -i assets/playbooks/inventory.yaml assets/playbooks/base-osconfig.yaml --extra-vars "run_context=common" -vv
|
||||||
|
fi
|
||||||
|
|
||||||
umount_chroot
|
umount_chroot
|
||||||
|
|
||||||
cp assets/playbooks/base-livecdcontent.yaml $build_dir/opt/assets/playbooks/base-livecdcontent.yaml
|
cp assets/playbooks/base-livecdcontent.yaml $build_dir/opt/assets/playbooks/base-livecdcontent.yaml
|
||||||
cp -r assets/playbooks/roles/livecdcontent $build_dir/opt/assets/playbooks/roles
|
cp -r assets/playbooks/roles/livecdcontent $build_dir/opt/assets/playbooks/roles
|
||||||
if [ -z $OSCONFIG_TEST ]; then
|
if [ -z "$SKIP_LIVECDCONTENT_ROLE" ]; then
|
||||||
sudo -E ansible-playbook -i assets/playbooks/inventory.yaml assets/playbooks/base-livecdcontent.yaml -vv
|
sudo -E ansible-playbook -i assets/playbooks/inventory.yaml assets/playbooks/base-livecdcontent.yaml -vv
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user