table of contents
DCUT(1) | General Commands Manual | DCUT(1) |
NAME¶
dcut - Debian command upload tool for the archive upload queue
SYNOPSIS¶
dcut |
[-Pds] [-c CONFIGFILE] [-k KEYID] [-m MAINTAINER] [-O COMMANDFILE] [ [--host] HOSTNAME] COMMAND [, COMMAND] ... |
dcut |
[-Pds] [-c CONFIGFILE] [-k KEYID] [-m MAINTAINER] [-O COMMANDFILE] [ [--host] HOSTNAME] -i CHANGESFILE |
dcut |
[-Pds] [-c CONFIGFILE] [ [--host] HOSTNAME] -U COMMANDFILE |
dcut |
-h |
dcut |
-v |
DESCRIPTION¶
dcut creates and / or uploads Debian queue commands files for a Debian repository upload queue. It is a companion for dput(1) and uses dput configuration files (see FILES, below).
The normal workflow is:
- •
- Determine the queue control commands.
- •
- Compose the batch of commands to upload.
- •
- Determine the hostname of the queue host.
- •
- Upload the commands to the queue host.
Determine queue control commands¶
In the default command-line syntax, parse each command-line argument COMMAND, in the format needed by a Debian archive queue manager. Multiple queue commands must be separated by a comma (,) as a separate word between each command.
See COMMANDS below for valid queue commands.
When the CHANGESFILE parameter is specified, instead parse that file and compose a rm command for each file specified in CHANGESFILE.
If the --upload (-U) option is specified, instead read the queue control commands from the file COMMANDFILE.
Compose the batch of commands¶
The Uploader field in the batch is set to the package maintainer specification MAINTAINER. If not specified, the value of MAINTAINER is derived from environment variables (see ENVIRONMENT, below).
The Commands field in the batch is set to the sequence of queue control commands determined.
If the --output (-O) option is specified, write the batch to the file named by its COMMANDFILE argument. Otherwise, write the batch to a temporary file and remove it after upload.
After writing the batch of commands to a file, sign the file with debsign(1). The MAINTAINER and KEYID parameters, if specified, are passed to the debsign command.
If the --upload (-U) option is specified, do not compose the batch of commands; instead use the content of its COMMANDFILE argument as the name of the command file to upload to the queue host.
Determine the queue host¶
The HOSTNAME must match one of the named hosts in the configuration (see dput.cf(5)). The value is determined as follows:
- •
- If the --host option is specified, use that option's HOSTNAME argument.
- •
- If the first non-option argument is not a valid queue command, that is interpreted as the HOSTNAME.
- •
- Otherwise, HOSTNAME defaults to the value of the default_host_main configuration parameter.
Upload queue commands¶
Upload the composed batch of queue commands to the queue host HOSTNAME, using the parameters in the dput.cf(5) configuration for that host.
If the --output (-O) option is specified, do not upload the commands to the queue host. Instead, leave the composed file COMMANDFILE on the filesystem.
COMMANDS¶
Presently supported commands are:
- rm
- Remove files from the UploadQueue directories. dcut generates commands that search the subdirectories automatically, but you can also specify --nosearchdirs and then target individual UploadQueue directories, i.e. either filenames without path for regular incoming or DELAYED/DAYS-day/filename. Wildcards are accepted.
- reschedule CHANGESFILE_NAME DAYS-day
- Move an upload from any DEFERRED queue to DAYS-day (use 0-day for immediate processing).
- cancel CHANGESFILE_NAME
- Cancels an upload from DEFERRED.
Both reschedule and cancel use the CHANGESFILE_NAME argument as the base filename of a changes file in the queue.
The authoritative documentation for the commands interface can be found at https://salsa.debian.org/ftp-team/dak/-/raw/master/tools/debianqueued-0.9/Queue.README.
OPTIONS¶
- -c CONFIGFILE
- --config CONFIGFILE
- Use the file CONFIGFILE for configuration. See dput.cf(5) for the specification of this file format.
- -d
- --debug
- Display debugging messages.
- -h
- --help
- Display help information, then exit.
- --host HOSTNAME
- Specify the HOSTNAME unambiguously. This allows naming a host that may be ambiguous with a queue command.
- -m MAINTAINER
- --maintaineraddress MAINTAINER
- Use MAINTAINER for the Uploader field and GnuPG key selection. This has no effect when --upload is used.
- -k KEYID
- --keyid KEYID
- Specify the GnuPG key id KEYID to pass to the debsign(1) command. This has no effect when --upload is used.
- -O COMMANDFILE
- --output COMMANDFILE
- Write commands file to COMMANDFILE instead of uploading. You should not specify a HOSTNAME when using this option. Also, this option should not be used with --upload.
- -P
- --passive
- Use passive mode for FTP. If not specified, default for FTP is active mode.
- -s
- --simulate
- Do not actually upload to the queue host.
- -U COMMANDFILE
- --upload COMMANDFILE
- Instead of composing a new queue command file, upload the existing file COMMANDFILE. Note: No checks (syntax or presence/validity of signature) are currently performed.
- -i CHANGESFILE
- --input CHANGESFILE
- Do not parse queue commands from the command line. Instead, read the package changes file CHANGESFILE and compose a rm command for each file specified in CHANGESFILE. This has no effect when --upload is used.
- -v
- --version
- Display version information, then exit.
ENVIRONMENT¶
- DEBEMAIL
- If MAINTAINER is not specified, use the first of these which has a value to determine the email address portion of MAINTAINER.
- DEBFULLNAME
- If MAINTAINER is not specified, use this value to determine the full name portion of MAINTAINER.
- USER
- If no username is specified for authenticating to the remote host, use the value of this variable.
FILES¶
- Configuration
- See dput.cf(5) for the files to configure dcut.
EXAMPLES¶
To upload a GPG signed commands file that removes dput_0.9.2.33_all.deb file from the queue, one would have to do:
$ dcut rm dput_0.9.2.33_all.deb
This creates and uploads a commands file that looks like the following:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Uploader: Foo Bar <foo@bar.org> Commands:
rm dput_0.9.2.33_all.deb -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (GNU/Linux) iEYEARECAAYKAkisYx0ACgkQ4eu+pS04mIfwLQCg85XVpae/LHLrbvzywcQNt9PS ztsAoMgw6HjcI9flfmwjgMiapcu379Pu =fjp0 -----END PGP SIGNATURE-----
To upload a GPG signed commands file that removes files named in dput_0.9.4_i386.changes from the queue, one would have to do:
$ dcut --input dput_0.9.4_i386.changes
This creates and uploads a commands file that looks like the following:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Uploader: Foo Bar <foo@bar.org> Commands:
rm --searchdirs dput_0.9.4.dsc
rm --searchdirs dput_0.9.4.tar.gz
rm --searchdirs dput_0.9.4_all.deb -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (GNU/Linux) iEYEARECAAYKAkisYx0ACgkQ4eu+pS04mIfwLQCg85XVpae/LHLrbvzywcQNt9PS ztsAoMgw6HjcI9flfmwjgMiapcu379Pu =fjp0 -----END PGP SIGNATURE-----
If you've uploaded packages with the --delayed option (uploaded to DEFERRED queue), then use the cancel command with a .changes file:
$ dcut cancel dput_0.9.4_i386.changes
This creates and uploads a commands file just like the other commands.
SEE ALSO¶
2017-01-09 | Debian |