tinkerbell/hook

Running `make dev-dist` w/ linuxkit v0.8 and docker-ce v5.20.x; returns errors about unknown flags of the respective tools

Closed this issue · 3 comments

Expected Behaviour

make generates the expected files vmlinuz-x86_64 and initramfs-x86_64

Current Behaviour

The build stops with errors describing that -docker is an unknown flag; similar for -load

Possible Solution

sed -e 's/ -docker//g' -i hook/Makefile and sed -e 's/ -load/ --load/g' -i hook Makefile ;)

Steps to Reproduce (for bugs)

  1. Clone repo
  2. make dev-dist

Context

Your Environment

  • Operating System and version (e.g. Linux, Windows, MacOS):
    Ubuntu Server 20.04.x w/ linuxkit v0.8 and docker-ce v5.20.x
  • How are you running Tinkerbell? Using Vagrant & VirtualBox, Vagrant & Libvirt, on Packet using Terraform, or give details:
    N/A; this issue occurs during generation of Hook
  • Link to your project or a code example to reproduce issue:

Hey @djpbessems - Do you mind sharing the output of:

  • linuxkit version
  • linuxkit build -h

An macOS, linuxkit v0.8 provides a --docker option:

  -docker
    	Check for images in docker before linuxkit cache

I would not be at all surprised if this option is omitted on Linux. If it looks this way, we can update the Makefile rule to pass the flag only when available.

This is almost certainly happening because the version of linuxkit you're using is different than the one in the shell.nix.

Would you, by chance, be able to try the steps here: Nix for CI/CD?

I'm afraid that I'm limited in what I can run, since I am forced to use my organization's Bamboo build environment. For now, we are still using the default Hook release, so it's not an issue anymore/yet.

I know that LinuxKit itself is also working on a PR to include LVM2, so it might not even be necessary for us to build Hook ourselves.

I guess what I'm saying is, this issue can be closed.