Pypi plugin doesn't support different directory layouts

drone-pypi plugin allows you to specify the setup.py location, but the working directory is still the root (workspace directory). My repo is structured like:

root/
root/otherstuff
root/pythonpkg/setup.py
root/pythonpkg/dist/normal build output

I have 2 scenarios:

  1. I’ve already built the whl’s in previous build steps. I’d like to skip_build: true and maybe specify where the output directory is. The plugin assumes workspace/dist/*.

  2. I want the default build behavior, and need to specify the working directory. The plugin executes, from the workspace, python3 pythonpkg/setup.py ... which breaks all the relative paths in setup.py.

I recommend coordinating with the plugin owner [1] to see if they would be willing to support different directory layouts. You may also consider either forking the plugin or creating your own to meet your individual needs.

Plugins are similar in concept to pypi packages. Anyone can create a plugin and add to the Drone plugin registry, any plugin can be forked and modified as needed, and there can be multiple plugins for the same thing (e.g. pypi) that behave slightly differently or satisfy different use cases.

[1] https://github.com/gjtempleton/drone-pypi