awslabs / aws-sdk-swift

Apache License 2.0
369 stars 71 forks source link

Missing folder during dependency install on build system #1683

Closed jbelkins closed 2 weeks ago

jbelkins commented 3 weeks ago

Describe the bug

Preview builds have intermittent build failures when building AWSSDKSwiftCLI due to missing folders, i.e.:

warning: 'swift-llbuild': ignoring broken symlink /codebuild/output/src3290271464/src/aws-sdk-swift/AWSSDKSwiftCLI/.build/checkouts/swift-llbuild/lib/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm/Demangle/include/llvm
error: 'swift-llbuild': The folder “ADT” doesn’t exist.

[Container] 2024/08/15 23:13:18.317969 Phase context status code: COMMAND_EXECUTION_ERROR Message: Error while executing command: swift run AWSSDKSwiftCLI test-aws-sdk ../ --batches 10. Reason: exit status 1

It is noted that the swift-llbuild dependency version in use does some weird stuff with symlinks, which are corrected in later versions.

Expected Behavior

AWSSDKSwiftCLI tools should build & run every time and on all platforms.

Current Behavior

AWSSDKSwiftCLI fails intermittently as described.

Reproduction Steps

Look at build logs from previous preview builds.

Possible Solution

swift-llbuild seems to be linked only because it is a dependency of AWSSDKSwiftCLI dependency SwiftPM. SwiftPM seems to be used only for the Version type, which should be easily reproducible in the AWSSDKSwiftCLI project.

So, investigate removing SwiftPM entirely as a dependency of the CLI tools.

Additional Information/Context

No response

AWS SWIFT SDK version used

main

Compiler and Version used

Xcode 15.4

Operating System and version

macOS 14

jbelkins commented 3 weeks ago

Moving to Blocked while we wait to see if build failures due to this issue stop occurring.

sichanyoo commented 2 weeks ago

Closing the ticket as no new preview build was observed with this cause the week of 8/19/24.