[I’m new to Travis-CI. Please forgive any mistakes in terms.]
(I think) I want to build and test on {py2,py3} x {Linux,Windows,Mac} – so I’ve created a 5-item matrix that seems to be working. Here is my current .travis.yml. (I left off py2 Mac, but that is OK).
If the files are deployed to the same place (by whatever mechanism you choose), they will be. The files from different architectures/OSes etc. should not go to the same place, but maybe your deployment target enforces this rule. Sometimes the file names may be identical, but the path may not be; e.g., https://example.com/:os/:release/:arch/pysnptools-0.4.11.tar.gz. You’ll have to check with your deployment target’s documentation.
You are looking for:
Roughly speaking, you’d have a “Build” stage that builds these binary files, then a “Deploy” stage, the sole purpose of which is to gather the build artifacts from the jobs in the previous stage and deploy them.