Skip to content

ci: fix workflows permission and xargs errors#52308

Merged
vvoland merged 2 commits intomoby:masterfrom
thaJeztah:fix_workflows
Apr 16, 2026
Merged

ci: fix workflows permission and xargs errors#52308
vvoland merged 2 commits intomoby:masterfrom
thaJeztah:fix_workflows

Conversation

@thaJeztah
Copy link
Copy Markdown
Member

@thaJeztah thaJeztah commented Apr 4, 2026

ci: fix workflow permission errors

Fix the exclusion / prune options to prevent trying to search for files
within test-daemon data-directories;

find: ‘bundles/test-integration/TestInspectGraphDriverAPIBC/v1.51/containerd/d6bc175e4a6c2/root’: Permission denied
find: ‘bundles/test-integration/TestInspectGraphDriverAPIBC/vCurrent/graphdriver/dd9fc09e8b137/root’: Permission denied
find: ‘bundles/test-integration/TestInspectGraphDriverAPIBC/vCurrent/containerd/df3728c6d8381/root’: Permission denied
find: ‘bundles/test-integration/TestSecretCreateResolve/df7a41973ce2d/root’: Permission denied
find: ‘bundles/test-integration/TestRestartUserlandProxyUnder2MSL/d6d5230a763ad/root’: Permission denied
find: ‘bundles/test-integration/TestServiceWithPredefinedNetwork/de313d0ffd62f/root’: Permission denied
[...]

ci: skip using xargs

It's failing; possibly due to files containing special chars or quotes,
which get mis-interpreted by xargs;

find: ‘bundles/test-integration/TestInspectGraphDriverAPIBC/v1.51/containerd/d6bc175e4a6c2/root’: Permission denied
find: ‘bundles/test-integration/TestInspectGraphDriverAPIBC/vCurrent/graphdriver/dd9fc09e8b137/root’: Permission denied
find: ‘bundles/test-integration/TestInspectGraphDriverAPIBC/vCurrent/containerd/df3728c6d8381/root’: Permission denied
find: ‘bundles/test-integration/TestSecretCreateResolve/df7a41973ce2d/root’: Permission denied
find: ‘bundles/test-integration/TestRestartUserlandProxyUnder2MSL/d6d5230a763ad/root’: Permission denied
find: ‘bundles/test-integration/TestServiceWithPredefinedNetwork/de313d0ffd62f/root’: Permission denied
[...]
xargs: unmatched single quote; by default quotes are special to xargs unless you use the -0 option

Even when fixing, it's possible that xargs may call tar multiple times if the
list of files is too long.

  • use -print0 to produce a null-terminated list
  • skip xargs, and let tar itself handle the files to add

- Human readable description for the release notes

- A picture of a cute animal (not mandatory but encouraged)

@thaJeztah thaJeztah force-pushed the fix_workflows branch 2 times, most recently from 92c4d53 to 73db0e2 Compare April 4, 2026 17:56
@thaJeztah thaJeztah changed the title Fix workflows ci: fix workflows Apr 4, 2026
@thaJeztah
Copy link
Copy Markdown
Member Author

Looks like GitHub's actions also need to be updated; depending on a deprecated Node function?

Run actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c
Found 5 artifact(s)
Filtering artifacts by pattern 'test-reports-unit-arm64-*'
Preparing to download the following artifacts:
- test-reports-unit-arm64-graphdriver (ID: 6272996576, Size: [1128029](tel:1128029), Expected Digest: sha256:9cb057dcef456ec932f6804ee56f4556fc72881431ece8b54dd83f51c8ece62a)
Redirecting to blob download url: https://productionresultssa15.blob.core.windows.net/actions-results/d5a940b6-09c8-4fd8-84bb-4f65b7c4c415/workflow-job-run-61f99edd-7985-5bf5-bd2f-b529e1786830/artifacts/2f98545b7aa470f5a4ea836f2318ef9c05c8389df614d6c5a710bc70ea9662d7.zip
Starting download of artifact to: /tmp/reports
(node:2247) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
(Use `node --trace-deprecation ...` to show where the warning was created)
SHA256 digest of downloaded artifact is 9cb057dcef456ec932f6804ee56f4556fc72881431ece8b54dd83f51c8ece62a
Artifact download completed successfully.
Total of 1 artifact(s) downloaded
Download artifact has finished successfully

@thaJeztah thaJeztah force-pushed the fix_workflows branch 2 times, most recently from dd30769 to 26675f3 Compare April 4, 2026 23:26
@thaJeztah thaJeztah marked this pull request as ready for review April 4, 2026 23:26
@thaJeztah thaJeztah added this to the 29.4.0 milestone Apr 4, 2026
@thaJeztah thaJeztah changed the title ci: fix workflows ci: fix workflows permission and xargs errors Apr 5, 2026
@AkihiroSuda
Copy link
Copy Markdown
Member

It's failing; possibly due to files containing special chars or quotes,
which get mis-interpreted by xargs;

Which commit caused this?

@thaJeztah
Copy link
Copy Markdown
Member Author

Haven't been able to find so far!

@thaJeztah
Copy link
Copy Markdown
Member Author

Oh! I think I may have found it; https://github.com/moby/moby/pull/52277/changes#diff-330839eedc4108104b0a7505d3b129c76ee75a739d4ab4b858f15ec9cdfaba3dR511

-	t.Run("engine restart shouldnt kill alive containers", func(t *testing.T) {
+	t.Run("engine restart shouldn't kill alive containers", func(t *testing.T) {

Which is ironic because I left a comment on another test, but mostly for easier selection; #52277 (comment)

@thaJeztah
Copy link
Copy Markdown
Member Author

Let me open a PR with that test-name changed to see if that also makes the problem go away

@thaJeztah
Copy link
Copy Markdown
Member Author

Opened a PR to rename that test to verify if I'm correct; we should still merge this PR as well to avoid the problem, and probably look if we can make the directory names avoid having these characters;

@vvoland
Copy link
Copy Markdown
Contributor

vvoland commented Apr 16, 2026

Needs a rebase

Fix the exclusion / prune options to prevent trying to search for files
within test-daemon data-directories;

    find: ‘bundles/test-integration/TestInspectGraphDriverAPIBC/v1.51/containerd/d6bc175e4a6c2/root’: Permission denied
    find: ‘bundles/test-integration/TestInspectGraphDriverAPIBC/vCurrent/graphdriver/dd9fc09e8b137/root’: Permission denied
    find: ‘bundles/test-integration/TestInspectGraphDriverAPIBC/vCurrent/containerd/df3728c6d8381/root’: Permission denied
    find: ‘bundles/test-integration/TestSecretCreateResolve/df7a41973ce2d/root’: Permission denied
    find: ‘bundles/test-integration/TestRestartUserlandProxyUnder2MSL/d6d5230a763ad/root’: Permission denied
    find: ‘bundles/test-integration/TestServiceWithPredefinedNetwork/de313d0ffd62f/root’: Permission denied
    [...]

Signed-off-by: Sebastiaan van Stijn <[email protected]>
It's failing; possibly due to files containing special chars or quotes,
which get mis-interpreted by xargs;

```
find: ‘bundles/test-integration/TestInspectGraphDriverAPIBC/v1.51/containerd/d6bc175e4a6c2/root’: Permission denied
find: ‘bundles/test-integration/TestInspectGraphDriverAPIBC/vCurrent/graphdriver/dd9fc09e8b137/root’: Permission denied
find: ‘bundles/test-integration/TestInspectGraphDriverAPIBC/vCurrent/containerd/df3728c6d8381/root’: Permission denied
find: ‘bundles/test-integration/TestSecretCreateResolve/df7a41973ce2d/root’: Permission denied
find: ‘bundles/test-integration/TestRestartUserlandProxyUnder2MSL/d6d5230a763ad/root’: Permission denied
find: ‘bundles/test-integration/TestServiceWithPredefinedNetwork/de313d0ffd62f/root’: Permission denied
[...]
xargs: unmatched single quote; by default quotes are special to xargs unless you use the -0 option
```

Even when fixing, it's possible that xargs may call tar multiple times if the
list of files is too long.

- use `-print0` to produce a null-terminated list
- skip xargs, and let tar itself handle the files to add

Signed-off-by: Sebastiaan van Stijn <[email protected]>
@thaJeztah
Copy link
Copy Markdown
Member Author

Rebased 👍

@vvoland vvoland merged commit 9f651a6 into moby:master Apr 16, 2026
286 of 290 checks passed
@thaJeztah thaJeztah deleted the fix_workflows branch April 16, 2026 19:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CI began to fail on 2026-04-03: xargs: unmatched single quote; by default quotes are special to xargs unless you use the -0 option

3 participants