1RBM-TAR(1)                                                          RBM-TAR(1)
2
3
4

NAME

6       rbm-tar - Create a tarball file
7

SYNOPSIS

9       rbm tar <project> [options]
10

DESCRIPTION

12       Create a tarball file for the selected project.
13

OUTPUT FILE

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       can be set with the version option. If the version is not explicitely
30       set, then it is determined automatically in the following way :
31
32       ·   If the version_command option is set, then the value of this option
33           is run in the checked out source tree, and the output is used as
34           the version.
35
36       ·   If the version_command is not set, or if running the command
37           failed, then the most recent tag (as returned by git-describe) is
38           used as version.
39

CONFIGURATION OPTIONS

41       The following options are related to tarball creation :
42
43       git_url
44           The URL of a git repository that will be cloned and used to create
45           the tarball. If this option is set, git_hash should be set to
46           select the commit to use.
47
48       hg_url
49           The URL of a mercurial repository that will be cloned and used to
50           create the tarball. If this option is set, hg_hash should be set to
51           select the commit to use.
52
53       git_hash
54           A git hash, branch name or tag. This is what is used to create the
55           tarball.
56
57       hg_hash
58           A mercurial changeset hash. This is what is used to create the
59           tarball.
60
61       git_submodule
62           If this option is enabled, git submodules are fetched and included
63           in the tarball. This option is disabled by default.
64
65       compress_tar
66           If set, the tarball created will be compressed in the select
67           format. Possible values: xz, gz, bz2.
68
69       commit_gpg_id
70           If set, the commit selected with git_hash will have its signature
71           checked. The tarball will not be created if there is no valid
72           signature, and if the key used to sign it does not match the key ID
73           from commit_gpg_id. The option can be set to a single gpg ID, or to
74           a list of gpg IDs. The IDs can be short or long IDs, or full
75           fingerprint (with no spaces). For this to work, the GPG keys should
76           be present in the selected keyring (see keyring option). If the
77           option is set to 1 or an array containing 1 then any key from the
78           selected keyring is accepted. On command line, the --commit-gpg-id
79           option can be listed multiple times to define a list of keys.
80
81       tag_gpg_id
82           If set, the commit selected with git_hash should be a tag and will
83           have its signature checked. The tarball will not be created if the
84           tag doesn’t have a valid signature, and if the key used to sign it
85           does not match the key ID from tag_gpg_id. The option can be set to
86           a single gpg ID, or to a list of gpg IDs. The IDs can be short or
87           long IDs, or full fingerprint (with no spaces). For this to work,
88           the GPG keys should be present in the selected keyring (see keyring
89           option). If the option is set to 1 or an array containing 1 then
90           any key from the selected keyring is accepted. On command line, the
91           --tag-gpg-id option can be listed multiple times to define a list
92           of keys.
93
94       gpg_wrapper
95           This is a template for a gpg wrapper script. The default wrapper
96           will call gpg with the keyring specified by option gpg_keyring if
97           defined.
98
99       gpg_keyring
100           The filename of the gpg keyring to use. Path is relative to the
101           gpg_keyring_dir directory. This can also be an absolute path.
102
103       gpg_keyring_dir
104           The directory containing gpg keyring files. The default is
105           $basedir/keyring (with $basedir the directory where the main config
106           file is located).
107
108       gpg_bin
109           The gpg command to be used. The default is gpg.
110
111       gpg_args
112           Optional gpg arguments. The default is empty.
113
114       See rbm_config(7) for all other options.
115

COMMAND LINE OPTIONS

117       The command line options related to tar :
118
119       --git-hash=<hash>
120           The git hash of the commit / tag to use.
121
122       --hg-hash=<hash>
123           The mercurial hash of the commit / tag to use.
124
125       --commit-gpg-id=<GPG ID>
126           Check the commit to be signed by this GPG key ID.
127
128       --tag-gpg-id=<GPG ID>
129           Check if the selected git hash is a tag and is signed by select GPG
130           key ID.
131
132       --gpg-keyring=<file>
133           GPG keyring filename.
134
135       --gpg-keyring-dir=<directory>
136           Directory containing GPG keyring files
137
138       --gpg-args=<args>
139           Optional gpg arguments.
140
141       --gpg-bin=<path>
142           Path to gpg binary.
143
144       See rbm_cli(7) for all other options.
145

GIT VERSION

147       If you are going to use gpg signed commits, it is recommended to use
148       git >= 1.8.3.
149
150       ·   git < 1.7.9 does not support signed commits. It only supports
151           signed tags.
152
153       ·   git < 1.8.3 does not use the git-config option gpg.program in git
154           log --show-signature and git show --show-signatures commands used
155           to check commits signatures. This means you won’t be able to use
156           the gpg_keyring option for commits signature verification (but it
157           will work for tag signature verification). This was fixed in git
158           commit 6005dbb9, included in version 1.8.3.
159

SEE ALSO

161       rbm(1)
162
163
164
165                                  07/29/2020                        RBM-TAR(1)
Impressum