1RBM-TAR(1) RBM-TAR(1)
2
3
4
6 rbm-tar - Create a tarball file
7
9 rbm tar <project> [options]
10
12 Create a tarball file for the selected project.
13
15 The output directory can be selected with the output_dir option.
16
17 The output filename will be :
18
19 <name>-<version>.tar
20
21 If the compress_tar, the filename will be :
22
23 <name>-<version>.tar.<ext>
24
25 With <name> the project’s name, <version> the version of the software,
26 and <ext> the compression type selected in the compress_tar option.
27
28 The version of the software used to create the tarball and the packages
29 should be set with the version option.
30
32 The following options are related to tarball creation :
33
34 git_url
35 The URL of a git repository that will be cloned and used to create
36 the tarball. If this option is set, git_hash should be set to
37 select the commit to use.
38
39 hg_url
40 The URL of a mercurial repository that will be cloned and used to
41 create the tarball. If this option is set, hg_hash should be set to
42 select the commit to use.
43
44 git_hash
45 A git hash, branch name or tag. This is what is used to create the
46 tarball.
47
48 hg_hash
49 A mercurial changeset hash. This is what is used to create the
50 tarball.
51
52 git_submodule
53 If this option is enabled, git submodules are fetched and included
54 in the tarball. This option is disabled by default.
55
56 compress_tar
57 If set, the tarball created will be compressed in the select
58 format. Possible values: xz, gz, bz2. The default is gz but it can
59 stay empty to disable compression.
60
61 commit_gpg_id
62 If set, the commit selected with git_hash will have its signature
63 checked. The tarball will not be created if there is no valid
64 signature, and if the key used to sign it does not match the key ID
65 from commit_gpg_id. The option can be set to a single gpg ID, or to
66 a list of gpg IDs. The IDs can be short or long IDs, or full
67 fingerprint (with no spaces). For this to work, the GPG keys should
68 be present in the selected keyring (see keyring option). If the
69 option is set to 1 or an array containing 1 then any key from the
70 selected keyring is accepted. On command line, the --commit-gpg-id
71 option can be listed multiple times to define a list of keys.
72
73 tag_gpg_id
74 If set, the commit selected with git_hash should be a tag and will
75 have its signature checked. The tarball will not be created if the
76 tag doesn’t have a valid signature, and if the key used to sign it
77 does not match the key ID from tag_gpg_id. The option can be set to
78 a single gpg ID, or to a list of gpg IDs. The IDs can be short or
79 long IDs, or full fingerprint (with no spaces). For this to work,
80 the GPG keys should be present in the selected keyring (see keyring
81 option). If the option is set to 1 or an array containing 1 then
82 any key from the selected keyring is accepted. On command line, the
83 --tag-gpg-id option can be listed multiple times to define a list
84 of keys.
85
86 gpg_wrapper
87 This is a template for a gpg wrapper script. The default wrapper
88 will call gpg with the keyring specified by option gpg_keyring if
89 defined.
90
91 gpg_keyring
92 The filename of the gpg keyring to use. Path is relative to the
93 keyring directory. This can also be an absolute path.
94
95 gpg_bin
96 The gpg command to be used. The default is gpg.
97
98 gpg_args
99 Optional gpg arguments. The default is empty.
100
101 gpg_allow_expired_keys
102 Allowing expired keys to successfully verify e.g. signed git tags.
103 By default this is not allowed.
104
105 See rbm_config(7) for all other options.
106
108 The command line options related to tar :
109
110 --git-hash=<hash>
111 The git hash of the commit / tag to use.
112
113 --hg-hash=<hash>
114 The mercurial hash of the commit / tag to use.
115
116 --commit-gpg-id=<GPG ID>
117 Check the commit to be signed by this GPG key ID.
118
119 --tag-gpg-id=<GPG ID>
120 Check if the selected git hash is a tag and is signed by select GPG
121 key ID.
122
123 --gpg-keyring=<file>
124 GPG keyring filename.
125
126 --gpg-keyring-dir=<directory>
127 Directory containing GPG keyring files
128
129 --gpg-args=<args>
130 Optional gpg arguments.
131
132 --gpg-bin=<path>
133 Path to gpg binary.
134
135 See rbm_cli(7) for all other options.
136
138 If you are going to use gpg signed commits, it is recommended to use
139 git >= 1.8.3.
140
141 • git < 1.7.9 does not support signed commits. It only supports
142 signed tags.
143
144 • git < 1.8.3 does not use the git-config option gpg.program in git
145 log --show-signature and git show --show-signatures commands used
146 to check commits signatures. This means you won’t be able to use
147 the gpg_keyring option for commits signature verification (but it
148 will work for tag signature verification). This was fixed in git
149 commit 6005dbb9, included in version 1.8.3.
150
152 rbm(1)
153
154
155
156 07/25/2022 RBM-TAR(1)