Skip to content

Add libffi-devel to system packages to be pre-installed#1937

Merged
evgeni merged 1 commit intotheforeman:masterfrom
ogajduse:add-libffi-devel-to-reqs
Mar 2, 2026
Merged

Add libffi-devel to system packages to be pre-installed#1937
evgeni merged 1 commit intotheforeman:masterfrom
ogajduse:add-libffi-devel-to-reqs

Conversation

@ogajduse
Copy link
Copy Markdown
Member

@ogajduse ogajduse commented Mar 2, 2026

This patch adds libffi-devel to system packages to be installed before bundle install is run.

Reading from https://jenkins-foreman.apps.ocp.cloud.ci.centos.org/blue/organizations/jenkins/foreman-pipeline-candlepin-rpm-nightly/detail/foreman-pipeline-candlepin-rpm-nightly/778/pipeline/77:

[2026-03-02T02:05:37.361Z]         Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
[2026-03-02T02:05:37.361Z] 
[2026-03-02T02:05:37.361Z]             current directory: /usr/local/share/gems/gems/fiddle-1.1.8/ext/fiddle
[2026-03-02T02:05:37.361Z]         checking for --enable-debug-build option... no
[2026-03-02T02:05:37.361Z]         checking for pkg-config for libffi... not found
[2026-03-02T02:05:37.361Z]         checking for ffi.h... no
[2026-03-02T02:05:37.361Z]         checking for ffi/ffi.h... no
[2026-03-02T02:05:37.361Z]         *** extconf.rb failed ***
[2026-03-02T02:05:37.361Z]         Could not create Makefile due to some reason, probably lack of necessary
[2026-03-02T02:05:37.361Z]         libraries and/or headers.  Check the mkmf.log file for more details.  You may
[2026-03-02T02:05:37.361Z]         need configuration options.
[2026-03-02T02:05:37.362Z]         In Gemfile:
[2026-03-02T02:05:37.362Z]           voxpupuli-test was resolved to 9.2.1, which depends on
[2026-03-02T02:05:37.362Z]             rspec-puppet-utils was resolved to 3.4.0, which depends on
[2026-03-02T02:05:37.362Z]               puppetlabs_spec_helper was resolved to 8.0.0, which depends on
[2026-03-02T02:05:37.362Z]                 puppet-syntax was resolved to 4.1.1, which depends on
[2026-03-02T02:05:37.362Z]                   puppet was resolved to 8.10.0, which depends on
[2026-03-02T02:05:37.362Z]                     locale was resolved to 2.1.5, which depends on
[2026-03-02T02:05:37.362Z]                       fiddle

This is caused by ruby-gettext/locale@f2134c3 that makes fiddle a dependency. And since fiddle is alibffi wrapper for Ruby, we need libffi-devel installed on the system.

Copy link
Copy Markdown
Member

@evgeni evgeni left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is the way to fiddle

@evgeni evgeni merged commit 2eb0af4 into theforeman:master Mar 2, 2026
8 checks passed
@Odilhao
Copy link
Copy Markdown
Member

Odilhao commented Mar 2, 2026

I'm also creating ruby-gettext/locale#24 since it also affects our puppet-modules pipelines.

@ogajduse ogajduse deleted the add-libffi-devel-to-reqs branch March 2, 2026 15:03
@qcjames53
Copy link
Copy Markdown
Contributor

This fiddle libffi-devel dependency impacts provisioning of development environments. I've put out this PR to fix it.

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

Successfully merging this pull request may close these issues.

4 participants