使用最新更新构建GlassFish RPM?
为了使软件部署更加可靠和容易,最好使用操作系统的包管理来分发软件。现在我想把GlassFish打包成RPM 目标: -一次构建,多次部署 -使用最新更新打包GlassFish -将定制的GlassFish与附加组件打包(对于应在该GlassFish上运行的应用程序来说是必要的)(参见注释1) 我已经构建了一个.spec fle,它将GlassFish.zip(来自Oracle)解包并打包到RPM中。 然后我尝试添加一个将运行pkg工具的%build部分。 问题在于GlassFish的更新管理:它只接受更新到最新版本,因为您无法将更新的版本传递给(或者您可以?) 有了它,就不可能从头开始一次又一次地构建特定版本的GlassFish RPM,而每次都没有不同的结果(以周/月为单位)。因此,这种方法不适用于生成RPM使用最新更新构建GlassFish RPM?,glassfish,glassfish-3,packaging,rpm,Glassfish,Glassfish 3,Packaging,Rpm,为了使软件部署更加可靠和容易,最好使用操作系统的包管理来分发软件。现在我想把GlassFish打包成RPM 目标: -一次构建,多次部署 -使用最新更新打包GlassFish -将定制的GlassFish与附加组件打包(对于应在该GlassFish上运行的应用程序来说是必要的)(参见注释1) 我已经构建了一个.spec fle,它将GlassFish.zip(来自Oracle)解包并打包到RPM中。 然后我尝试添加一个将运行pkg工具的%build部分。 问题在于GlassFish的更新管理:它
- 我怎么能这样做
- 这是将GlassFish打包为RPM的完全错误的方法吗
- 您会推荐哪种替代分销/包装方法
也许我应该把这个问题改成“分配玻璃鱼的替代方式”,到目前为止,我看不出有可能像上面所描述的那样执行I。我认为创建通用GlassFish RPM不是正确的方法,因为它需要删除包管理器,因此在安装后无法添加必要的运行时库(如果不将所有GlassFish库也打包为RPM) 使用GlassFish RPM的唯一有用方法是针对特定于应用程序的GlassFish安装,其中包含所有必要的库(可能还有配置) 我不会使用它,因为它为太小的好处增加了太多额外的努力
我继续构建检查和设置脚本,检查环境。我认为创建通用GlassFish RPM不是正确的方法,因为它需要删除包管理器,因此在安装后无法添加必要的运行时库(如果不将所有GlassFish库也打包为RPM) 使用GlassFish RPM的唯一有用方法是针对特定于应用程序的GlassFish安装,其中包含所有必要的库(可能还有配置) 我不会使用它,因为它为太小的好处增加了太多额外的努力
我继续构建检查和设置脚本,检查环境。我创建了一个GlassFish安装tar,其中包含Linux本机安装程序和应答文件以及所需的任何补丁或配置更改。然后我有一个RPM scriplet,它内置在RPM中。在scriptlet中,我有一些命令来运行本机安装程序,其中包含JDK和应答文件的位置(-a选项)。在我的例子中,我使用密码列表运行remove-weak-ciphers命令,禁用http2,然后进行任何必要的环境更改。我创建了一个GlassFish安装tar,其中包含Linux本机安装程序和应答文件以及所需的任何补丁或配置更改。然后我有一个RPM scriplet,它内置在RPM中。在scriptlet中,我有一些命令来运行本机安装程序,其中包含JDK和应答文件的位置(-a选项)。在我的例子中,我使用密码列表运行remove-weak-ciphers命令,禁用http2,然后进行任何必要的环境更改