chef / omnibus

Easily create full-stack installers for your project across a variety of platforms.
Apache License 2.0
1.29k stars 294 forks source link

Current Chef RPM packages conflict with chef-workstation #1037

Open bmhughes opened 2 years ago

bmhughes commented 2 years ago

Description

Since circa 17.4 trying to upgrade chef on a host with workstation also instaleld will fail with a file conflict.

Error: Transaction test error:
  file /usr/lib/.build-id/ff/ed13d7b76a61d3dbc3744d5f4557d1dfca2ed3 from install of chef-17.4.38-1.el8.x86_64 conflicts with file from package chef-workstation-21.9.613-1.el8.x86_64

Omnibus Version

Tell us which version of Omnibus you are using

Platform Version

lamont-granquist commented 2 years ago

It might be possible to clean up that dotfile from the build, but somewhat more importantly we shouldn't be shipping anything at all in /usr/lib and the fact that gets picked up seems horribly wrong and smells like other bugs have crept into omnibus.

jeremiahsnapp commented 2 years ago

Chef Infra Client's 17.1.35 (2021-05-11) and Chef Workstation's 21.8.555 (2021-08-03) were the first stable versions of the products to get built on RHEL 8. RHEL 8 systems store a package's build-id files in /usr/lib/.build-id. Omnibus was packaging the build-id files into the rpm package. Chef Infra Client and Chef Workstation happen to have some identiacl build-ids which created the conflict. These files are only beneficial for debugging purposes so we don't need to include them in the rpm package. Once this omnibus PR gets merged and new versions of Chef Infra and Chef Workstation use it to build packages those build-id files won't be included in the rpm package so we shouldn't see this problem again.