Currently, there is some difficulty getting https://doc.wikimedia.org/mw-tools-scap/ to publish from differential/phab (T117431).
The main roadblock seems that $ZUUL_UUID is used as a sort of shared random number from the {name}-tox-doc-publish job template.
$ZUUL_UUID is used in the docs-publish job (in publish.yaml):
set -u
echo "Making sure that destination does not contain unset variables (like DOC_SUBPATH, see zuul/doc_functions.py): {docdest}"
[ $ZUUL_UUID ]
rsync --recursive "{docsrc}/" "rsync://10.68.16.255/doc/$ZUUL_UUID"
echo
echo "Publishing to https://doc.wikimedia.org/{docdest}/The $ZUUL_UUID is then passed and used by the publish-on-gallium job that does the actual publishing of docs:
set -u
echo "Publishing $ZUUL_PROJECT from labs to prod"
echo "Zuul UUID: $ZUUL_UUID"
echo "..."
[ $ZUUL_UUID ]
LOCAL_DOCROOT="/srv/$WMF_CI_PUB_DOCROOT"
if [ ! -d $LOCAL_DOCROOT ]; then
echo "Error: Invalid docroot. Directory $LOCAL_DOCROOT must exist, aborting."
exit 1
fi
LOCAL_DEST="$LOCAL_DOCROOT/$WMF_CI_PUB_DEST"
mkdir -p "$LOCAL_DEST"
rsync --recursive --delete-after "rsync://10.68.16.255/doc/$ZUUL_UUID"/ "$LOCAL_DEST"
LOCAL_VHOST=$(echo $WMF_CI_PUB_DOCROOOT | awk -F'/' '{ print $3"."$2"."$1 }')
echo
echo "Published to https://$LOCAL_VHOST/$WMF_CI_PUB_DEST/"The $ZUUL_UUID (and to a more trivial extent $ZUUL_PROJECT [just an echo]) are the only dependencies that the *-tox-doc-publish jobs have on zuul. By removing the $ZUUL_UUID dependency and replacing it with something ($RANDOM or uuidgen (from uuid-runtime?)) we could trivially generate docs from any scm.