当软件包名称更改时,请升级 YUM

当软件包名称更改时,请升级 YUM

API 网关 Kong 决定更改其 Centos 包的名称。

对于 1.1 之前的版本,其名称为“kong-community-edition”,之后的包名称仅为“kong”。

kong-community-edition.noarch            1.0.2-1                bintray--kong-kong-rpm
kong-community-edition.noarch            1.0.3-1                bintray--kong-kong-rpm
kong-community-edition.noarch            1.1.0rc1-1             bintray--kong-kong-rpm
kong.noarch                              1.2.1-1                bintray--kong-kong-rpm
kong.noarch                              1.2.2-1                bintray--kong-kong-rpm
kong.x86_64                              1.3.0-1                bintray--kong-kong-rpm

我能否以某种方式告诉 YUM 将当前安装的 kong-community-edition 1.1 升级到 kong 1.3 包?

我尝试升级当前安装的版本(1.1.0rc1-1)

yum upgrade kong-community-edition

但报告称没有可用的升级。

我也尝试过专门升级到新版本

yum upgrade kong-1.3.0-1

但报告称 Kong 尚未安装。

我也尝试过使用 install 来安装新版本。

yum install kong-1.3.0-1

但该报告与 kong-community-edition 创建的文件冲突。

有什么方法可以告诉 yum,kong-community-edition-1.1.0rc1-1 之后的版本实际上是 kong-1.2.1-1,以便我可以使用 yum 升级。

目前我唯一的选择似乎是删除 kong-community-edition 包并添加新的 kong 包

yum remove kong-community-edition
yum install kong

但我希望进行就地升级。

回答:

作为软件包的用户,这是无法做到的。kong 软件包需要正确标识它已淘汰 kong-community-edition 软件包,而这需要由软件包维护者来完成。

解决方法:删除 kong-community-edition,安装 kong

答案1

如果您获取 kong rpm 并运行,rpm -q --obsoletes kong-1.3.0.rhel7.amd64.rpm您将看到“kong-community-edition”不存在。因此,yum install kong不知道如何删除“kong-community-edition”。您必须执行删除和安装。

如果你看看仓库https://github.com/Kong/kong-build-tools.git您可以看到在第 38 行左右使用了 fpm 来构建 rpm fpm-entrypoint.sh,并且调用fpmdoes not include --replaces,这在 rpm 术语中意味着已过时。

相关内容