cifs: Externalize common code to base_publish_over.

The various Publish Over... plugins offer a similar configuration
structure.

Externalizing that knowledge will allow reuse between modules.

Change-Id: I8dd7f62713da013354c656e9437522210e2c39f9
Reviewed-on: https://review.openstack.org/23862
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: Khai Do <zaro0508@gmail.com>
Approved: James E. Blair <corvus@inaugust.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
ftp: Refactor using base_publish_over.

The subtlety is that Publish Over FTP offers additional options compared
to the CIFS variant. This is done by customizing the XML tree created by
base_publish_over.

Change-Id: I5ff3614781cb52a47bf9816c2326d3fe9a96a47f
Reviewed-on: https://review.openstack.org/23863
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Reviewed-by: Khai Do <zaro0508@gmail.com>
Approved: James E. Blair <corvus@inaugust.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
ftp, cifs: Make optional prefixes really optionals.

Excludes and remove were marker optional, but weren't in practice.
Provides defaults values so that they are really optional.

Change-Id: I6bd6f5183d888b0716bdf5690fc19bcd91bfc856
Reviewed-on: https://review.openstack.org/23864
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Reviewed-by: Clark Boylan <clark.boylan@gmail.com>
Approved: James E. Blair <corvus@inaugust.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
Document current-params option for trigger-build

There was some documentation missing, so I had to find this option when I was
trying to add it myself, in the source code. Nasty!

Added documentation so nobody else has to do that.

Change-Id: I9b6a0227479b600fed213d926f5cd22981db612e
Reviewed-on: https://review.openstack.org/23963
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Reviewed-by: Khai Do <zaro0508@gmail.com>
Reviewed-by: Antoine Musso <hashar@free.fr>
Approved: James E. Blair <corvus@inaugust.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins
Fix checkstyle documentation

This is following the style of the artifact-resolver builder, which
has other nested dictionaries also.

Change-Id: I26b909e18239df03c123e07791fa7a3549be7701
Reviewed-on: https://review.openstack.org/23977
Reviewed-by: Monty Taylor <mordred@inaugust.com>
Reviewed-by: Khai Do <zaro0508@gmail.com>
Reviewed-by: Antoine Musso <hashar@free.fr>
Approved: James E. Blair <corvus@inaugust.com>
Reviewed-by: James E. Blair <corvus@inaugust.com>
Tested-by: Jenkins