balena-io-modules / balena-preload

Script for preloading containers onto balena device images
https://www.balena.io/
Apache License 2.0
35 stars 8 forks source link

preload doesn't work with new images after changes to balena service file #248

Closed rcooke-warwick closed 3 years ago

rcooke-warwick commented 3 years ago

preloading with recent images fails with the following error:

[debug] new argv=[/home/ryan/Documents/balena-cli/balena,/snapshot/versioned-source/bin/balena,preload,balena.img,--app,kfvggwc8] length=6
Building Docker preloader image. [===                     ] 12%
Step 1/7 : FROM docker:17.12.0-ce-dind
Building Docker preloader image. [======                  ] 25%
Step 2/7 : RUN apk update && apk add --no-cache python3 parted btrfs-progs util-linux sfdisk file coreutils sgdisk
 ---> Using cache
Building Docker preloader image. [=========               ] 37%
Step 3/7 : COPY ./requirements.txt /tmp/
 ---> Using cache
Building Docker preloader image. [============            ] 50%
Step 4/7 : RUN pip3 install -r /tmp/requirements.txt
 ---> Using cache
Building Docker preloader image. [===============         ] 62%
Step 5/7 : COPY ./src /usr/src/app
 ---> Using cache
Building Docker preloader image. [==================      ] 75%
Step 6/7 : WORKDIR /usr/src/app
 ---> Using cache
Building Docker preloader image. [=====================   ] 87%
Step 7/7 : CMD ["python3", "/usr/src/app/preload.py"]
 ---> Using cache
 ---> 127ad23ac2f1
Successfully built 127ad23ac2f1
Building Docker preloader image. [========================] 100%
| Checking that the image is a writable file
| Finding a free tcp port and getting balena settings
| Checking if the image is an edison zip archive
| Creating preloader container
/ Starting preloader container
/ Fetching application gh_rcooke_warwick/kfvggwc8
\ Reading image informationTraceback (most recent call last):
  File "/usr/src/app/preload.py", line 954, in <module>
    result = method(**data.get("parameters", {}))
  File "/usr/src/app/preload.py", line 910, in get_image_info
    get_images_and_supervisor_version()
  File "/usr/src/app/preload.py", line 776, in get_images_and_supervisor_version
    return _get_images_and_supervisor_version()
  File "/usr/src/app/preload.py", line 732, in _get_images_and_supervisor_version
    rootA_file_contents.get("docker_service", ""),
  File "/usr/src/app/preload.py", line 875, in get_docker_storage_driver
    position = find_one_of(words, "-s", "--storage-driver")
  File "/usr/src/app/preload.py", line 865, in find_one_of
    index = lst.index(elem)
ValueError: '-s' is not in list

discuessed here in fd: https://www.flowdock.com/app/rulemotion/p-testbot/threads/fsdypCCB26VorkBxBuY_MTZMqAp

klutchell commented 3 years ago

Related to changes in https://github.com/balena-os/meta-balena/pull/2175