You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This command looks for anything that matches that 'LICENSE*' pattern and tries to copy it into the licenses directory inside the snap package.
The issues is that there also seem to be directories that match that pattern, specifically ./3rd-party/vcpkg/buildtrees/c-ares/src/res-1_26_0-bc94026839.clean/LICENSES, and the install command does not work with directories. This is evident from the error message install: omitting directory './vcpkg/buildtrees/c-ares/src/res-1_26_0-bc94026839.clean/LICENSES' which is what we get when we try to run install on a directory.
The 123 error code is a standard xargs error code that is returned when the command it runs fails.
One quick solution to make this problem go away is to add -type f to the find command, so only files are taken into account. But then the licenses inside the LICENSES directory above will not be copied over. So a more complete solution would be to have a more complex finding mechanism that finds both files that match that pattern and files inside directories that match that pattern, and then pass those over to install.
What could also be done is to investigate why doesn't this issue happen deterministically in CI and why it only started happening after a recent vcpkg update.
The text was updated successfully, but these errors were encountered:
The CI fails non-deterministically to build the Snap package, exiting with error code 123. For example: https://github.com/canonical/multipass/actions/runs/12768902319/job/35590266180#step:13:28363
From my preliminary research, it seems that the issue is caused by the following command in our snapcraft.yaml:
This command looks for anything that matches that
'LICENSE*'
pattern and tries to copy it into thelicenses
directory inside the snap package.The issues is that there also seem to be directories that match that pattern, specifically
./3rd-party/vcpkg/buildtrees/c-ares/src/res-1_26_0-bc94026839.clean/LICENSES
, and theinstall
command does not work with directories. This is evident from the error messageinstall: omitting directory './vcpkg/buildtrees/c-ares/src/res-1_26_0-bc94026839.clean/LICENSES'
which is what we get when we try to runinstall
on a directory.The 123 error code is a standard xargs error code that is returned when the command it runs fails.
One quick solution to make this problem go away is to add
-type f
to thefind
command, so only files are taken into account. But then the licenses inside theLICENSES
directory above will not be copied over. So a more complete solution would be to have a more complex finding mechanism that finds both files that match that pattern and files inside directories that match that pattern, and then pass those over toinstall
.What could also be done is to investigate why doesn't this issue happen deterministically in CI and why it only started happening after a recent vcpkg update.
The text was updated successfully, but these errors were encountered: