This is what I see from strace:
[pid 307294] newfstatat(AT_FDCWD, "/var/cache/lxc//download/busybox/1.34.1/amd64//default/config", 0x7ffd747b6dd0, 0) = -1 ENOENT (No such file or directory)
ERROR: meta tarball is missing the configuration file
Now compare alpine with busybox:
# ls -la alpine/edge/amd64/default/
total 3032
drwxr-xr-x 2 root root 4096 мар 17 14:51 .
drwxr-xr-x 3 root root 4096 мар 17 14:51 ..
-rw-r--r-- 1 root root 15 мар 17 14:51 build_id
-rw-r--r-- 1 root root 65 мар 16 14:01 config
...
-rw-r--r-- 1 root root 72 мар 16 14:01 create-message
-rw-r--r-- 1 root root 1 мар 16 14:01 excludes-user
-rw-r--r-- 1 root root 11 мар 16 14:01 expiry
-rw-r--r-- 1 root root 3029280 мар 16 14:11 rootfs.tar.xz
-rw-r--r-- 1 root root 25 мар 16 14:01 templates
# ls -la busybox/1.34.1/amd64/default/
total 1204
drwxr-xr-x 2 root root 4096 мар 17 14:51 .
drwxr-xr-x 3 root root 4096 мар 17 14:40 ..
-rw-r--r-- 1 root root 15 мар 17 14:40 build_id
-rw-r--r-- 1 root root 1 мар 17 07:03 create-message
-rw-r--r-- 1 root root 1 мар 17 07:03 excludes-user
-rw-r--r-- 1 root root 11 мар 17 07:03 expiry
-rw-r--r-- 1 root root 1205632 мар 17 07:11 rootfs.tar.xz
config
file should be created there https://github.com/lxc/distrobuilder/blob/c27495182605c5adb8491a2ed296919af9e3d8d5/image/lxc.go#L106
Most likely problem is there https://github.com/lxc/lxc-ci/blob/master/images/busybox.yaml
for some reason we don’t have targets.lxc.config
Yaml section, but for https://github.com/lxc/lxc-ci/blob/master/images/alpine.yaml we have it:
targets:
lxc:
create_message: |
You just created an {{ image.description }} container.
config:
- type: all
before: 5
content: |-
lxc.include = LXC_TEMPLATE_CONFIG/alpine.common.conf
- type: user
before: 5
content: |-
lxc.include = LXC_TEMPLATE_CONFIG/alpine.userns.conf
- type: all
after: 4
content: |-
lxc.include = LXC_TEMPLATE_CONFIG/common.conf
- type: user
after: 4
content: |-
lxc.include = LXC_TEMPLATE_CONFIG/userns.conf
- type: all
content: |-
lxc.arch = {{ image.architecture_personality }}