Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug] Random failures in build-docker-arm64 CI #5165

Open
syeopite opened this issue Jan 30, 2025 · 3 comments
Open

[Bug] Random failures in build-docker-arm64 CI #5165

syeopite opened this issue Jan 30, 2025 · 3 comments

Comments

@syeopite
Copy link
Member

The build-docker-arm64 job will randomly fail when compiling Invidious with the following error:

Trace
Which expanded to:

> 1 |     
> 2 | 
> 3 |     
> 4 |       ECR.embed("src/invidious/views/components/feed_menu.ecr", "__kilt_io__", )
> 5 |     
> 6 |   
Error: expanding macro
 

 There was a problem expanding macro 'embed'

Called macro defined in /usr/lib/crystal/core/ecr/macros.cr:69:3

 69 | macro embed(filename, io_name)
 
 Which expanded to:
 
 > 1 |     {{ run("ecr/process", "src/invidious/views/components/feed_menu.ecr", "__kilt_io__") }}
 > 2 |   
Error: expanding macro


There was a problem expanding macro 'embed'

Called macro defined in lib/kilt/src/kilt.cr:12:3

12 | macro embed(filename, io_name = "__kilt_io__", *args)

Which expanded to:

> 1 |     
> 2 | 
> 3 |     
> 4 |       ECR.embed("src/invidious/views/components/feed_menu.ecr", "__kilt_io__", )
> 5 |     
> 6 |   
Error: expanding macro


There was a problem expanding macro 'embed'

Called macro defined in /usr/lib/crystal/core/ecr/macros.cr:69:3

69 | macro embed(filename, io_name)

Which expanded to:

> 1 |     {{ run("ecr/process", "src/invidious/views/components/feed_menu.ecr", "__kilt_io__") }}

The __kilt_io__ seen above is a red herring and the error still persists without it just with the standard Crystal io instead of Kilt's.

I was able to replicate this fairly consistently through act with almost all runs failing with the same error. Only two runs were successful out of the dozens I've conducted with varying changes in the dockerfile and job workflow.

@unixfox
Copy link
Member

unixfox commented Feb 4, 2025

@syeopite
Copy link
Member Author

syeopite commented Feb 4, 2025

Doesn't look like it unfortunately

Here's a run with ubuntu-24.04-arm https://github.com/syeopite/invidious/actions/runs/13042002535/job/36385704924

Dockerfile
Workflow

Note: this was done with Kilt removed, dependencies bumped, and an adjusted dockerfile for debugging. The end result is the exact same though.

@syeopite
Copy link
Member Author

syeopite commented Feb 6, 2025

Build failure with a different error

 > [builder 13/13] RUN if [[ "0" == 1 ]] ; then         crystal build ./src/invidious.cr         --release         --static --warnings all         --link-flags "-lxml2 -llzma";     else         crystal build ./src/invidious.cr         --static --warnings all         --link-flags "-lxml2 -llzma";     fi:
8.072 Segmentation fault (core dumped)
8.079 Showing last frame. Use --error-trace for full trace.
8.080 
8.084 In /usr/lib/crystal/core/openssl/lib_crypto.cr:18:27
8.084 
8.084  18 | (`printf "#include <openssl/opensslv.h>\nLIBRESSL_VERSION_NUMBER" | ${CC:-cc} $(pkg-config --cflags --silence-errors libcrypto || true) -E -`.chomp.split('\n').last != "LIBRESSL_VERSION_NUMBER") %}
8.084        ^
8.084 Error: error executing command: printf "#include <openssl/opensslv.h>
8.084 
8.084 LIBRESSL_VERSION_NUMBER" | ${CC:-cc} $(pkg-config --cflags --silence-errors libcrypto || true) -E -, got exit status 139

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants