1RBM_LAYOUT(7) RBM_LAYOUT(7)
2
3
4
6 rbm_layout - The layout of a rbm workspace
7
9 An rbm workspace is a set of packaging projects, with a common
10 configuration, and projects' specific configuration files.
11
12 An rbm workspace can be located anywhere on your filesystem, as long as
13 your are running rbm from this directory or one of its subdirectories.
14
15 A typical rbm workspace that contains two projects named project_1 and
16 project_2 will look like this :
17
18 (rbm-workspace)
19 |
20 |-- rbm.conf
21 |
22 |-- out
23 | |
24 | |-- project_1
25 | | |
26 | | |-- project_1-0.1.tar.gz
27 | | |
28 | | +-- project_1-0.1-1.x86_64.rpm
29 | |
30 | +-- project_2
31 | |
32 | |-- project_2-7.3.tar.bz2
33 | |
34 | +-- project_2-7.1-1.x86_64.rpm
35 |
36 |-- git_clones
37 | |
38 | |-- project_1
39 | | +-- source files
40 | |
41 | +-- project_2
42 | +-- source files
43 |
44 |-- keyring
45 | |
46 | |-- keyring-1
47 | |
48 | +-- keyring-2
49 |
50 +-- projects
51 |
52 |-- project_1
53 | |
54 | |-- config
55 | |
56 | |-- project_1.spec
57 | |
58 | |-- bugfix.patch
59 | |
60 | +-- debian_rules
61 |
62 +-- project_2
63 |
64 |-- config
65 |
66 |-- project_2.spec
67 |
68 +-- debian_rules
69
70 You will file the following files and directories :
71
72 rbm.conf
73 This is the main configuration file, containing generic
74 configuration for all projects. This file is mandatory.
75
76 out
77 This is the directory where output files are written. Each project
78 has its own subdirectory. The output directory path can be changed
79 with the output_dir option.
80
81 git_clones
82 This is the directory where git clones used to create the tarballs
83 are stored. Normally you wouldn’t have to do anything inside this
84 directory. The path of this directory can be changed with the
85 git_clone_dir option.
86
87 hg_clones
88 This is the same as git_clones, but for projects that use mercurial
89 rather than git. The path of this directory can be changed with the
90 hg_clone_dir option.
91
92 keyring
93 This is the directory where you can store gpg keyring files. Those
94 keyrings contains the keys that are used to check signed commits
95 and tags. The path of this directory can be changed with the
96 gpg_keyring_dir option.
97
98 projects
99 This is the directory containing projects definitions. The path of
100 this directory can be changed with the projects_dir option.
101
102 projects/project_1/config
103 This is the configuration file for the project_1 project. To create
104 a new project, you need to create a new directory with a config
105 file inside.
106
107 projects/project_1/project_1.spec
108 This is an rpm package template file for project_1. The rpm package
109 template could also be defined inside the config file, in which
110 case this file does not exist.
111
112 projects/project_1/bugfix.patch
113 This is an example patch file, used in the rpm package.
114
115 projects/project_1/debian_rules
116 This is an example path for a debian/rules file to be used in the
117 debian packaging for the project_1 project. All the debian
118 packaging can be defined entirely inside the config file, but it is
119 usually convenient to split some of it in separate files.
120
122 rbm(1), rbm_config(1)
123
124
125
126 07/29/2020 RBM_LAYOUT(7)