TT Bigdata TT Bigdata
首页
  • 部署专题

    • 常规安装
    • 一键部署
  • 组件安装

    • 常规&高可用
  • 版本专题

    • 更新说明
  • Ambari-Env

    • 环境准备
    • 开始使用
  • 组件编译

    • 专区—Ambari
    • 专区—Bigtop-官方组件
    • 专区—Bigtop-扩展组件
  • 报错解决

    • 专区—Ambari
    • 专区—Bigtop
  • 其他技巧

    • Maven镜像加速
    • Gradle镜像加速
    • Bower镜像加速
    • 虚拟环境思路
    • R环境安装+一键安装脚本
    • Ivy配置私有镜像仓库
    • Node.js 多版本共存方案
    • Ambari Web本地启动
    • Npm镜像加速
    • PostgreSQL快速安装
    • Temurin JDK 23快速安装
  • 成神之路

    • 专区—Ambari
    • 专区—Bigtop
  • 集成案例

    • Redis集成教学
    • Dolphin集成教学
    • Doris集成教学
    • 持续整理...
  • 核心代码

    • 各组件代码
    • 通用代码模板
  • 国产化&其他系统

    • Rocky系列
    • Ubuntu系列
  • 生产调优

    • 组件调优指南
    • 1v1指导调优
  • 支持&共建

    • 蓝图愿景
    • 技术支持
    • 合作共建
登陆
GitHub (opens new window)

JaneTTR

数据酿造智慧,每一滴都是沉淀!
首页
  • 部署专题

    • 常规安装
    • 一键部署
  • 组件安装

    • 常规&高可用
  • 版本专题

    • 更新说明
  • Ambari-Env

    • 环境准备
    • 开始使用
  • 组件编译

    • 专区—Ambari
    • 专区—Bigtop-官方组件
    • 专区—Bigtop-扩展组件
  • 报错解决

    • 专区—Ambari
    • 专区—Bigtop
  • 其他技巧

    • Maven镜像加速
    • Gradle镜像加速
    • Bower镜像加速
    • 虚拟环境思路
    • R环境安装+一键安装脚本
    • Ivy配置私有镜像仓库
    • Node.js 多版本共存方案
    • Ambari Web本地启动
    • Npm镜像加速
    • PostgreSQL快速安装
    • Temurin JDK 23快速安装
  • 成神之路

    • 专区—Ambari
    • 专区—Bigtop
  • 集成案例

    • Redis集成教学
    • Dolphin集成教学
    • Doris集成教学
    • 持续整理...
  • 核心代码

    • 各组件代码
    • 通用代码模板
  • 国产化&其他系统

    • Rocky系列
    • Ubuntu系列
  • 生产调优

    • 组件调优指南
    • 1v1指导调优
  • 支持&共建

    • 蓝图愿景
    • 技术支持
    • 合作共建
登陆
GitHub (opens new window)
  • Bigtop通用组件代码

    • bigtop.bom
    • do-component-build
    • install_通用组件.sh
    • 通用组件.spec
      • 通用组件.spec 文件说明与标准模板
        • 1. 存放位置规范
        • 2. 官方 spec 文件案例
        • 3. 推荐 spec 文件通用模板
  • J-Template-F
  • Bigtop通用组件代码
JaneTTR
2025-07-05
目录

通用组件.spec

# 通用组件.spec 文件说明与标准模板

在 Bigtop 项目中,.spec 文件用于定义组件 RPM 包的打包规则和元信息,是实现自动化构建和标准发布的核心配置。 无论你是要集成 bigtop-select,还是任意新组件,只要想要自动打成 rpm 包,都需要为其准备一份规范的 spec 文件。

# 1. 存放位置规范

每个组件的 spec 文件应放置于如下目录:

bigtop-packages/src/rpm/{component}/SPECS/{component}.spec
1

以 bigtop-select 为例,其 spec 文件路径为:

bigtop-packages/src/rpm/bigtop-select/SPECS/bigtop-select.spec
1

如下图所示:

spec文件结构示意

# 2. 官方 spec 文件案例

以官方 bigtop-select 组件为例,其 .spec 文件内容如下(仅节选,实际内容请参见源码仓库):

Name: bigtop-select
Version: %{bigtop_select_version}
Release: %{bigtop_select_release}
Summary: Collection of useful tools for Bigtop
...
%description
This includes a collection of useful tools and files for Bigtop and Ambari

%prep
%setup -q -T -c
install -p -m 755 %{SOURCE0} .
...
%install
bash %{SOURCE0} \
  --distro-dir=${RPM_SOURCE_DIR} \
  --build-dir=${PWD} \
  --prefix=${RPM_BUILD_ROOT} \
  --parent-dir=%{default_parent_dir} \
  --bigtop-base-version=%{bigtop_base_version}
...
%files
%defattr(-,root,root,-)
%doc LICENSE
%{lib_dir}
%{default_parent_dir}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

# 3. 推荐 spec 文件通用模板

下面是经过实战总结的通用 spec 文件模板,建议所有新组件均以此为基础,按需替换相关参数:

#bigtop#bom#通用模板#组件集成
install_通用组件.sh

← install_通用组件.sh

最近更新
01
bigtop-select 打包缺 compat 报错修复 deb
07-16
02
bigtop-select 打包缺 control 文件报错修复 deb
07-16
03
首次编译-环境初始化 必装
07-16
更多文章>
Theme by Vdoing | Copyright © 2017-2025 JaneTTR | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式