For the rare occasions I need something like this, I’m glad Fabric exists. I find Ansible to be almost unusably obtuse, it does not gel with how I think about networked systems at all.
Fabric uses Paramiko, which is GNU, which means the lawyers at my company said that I couldn't use it, since I would be distributing it to some extent (for use at vendor site).
Is it a dirty industry secret that most people/companies who use these open source libraries are violating their licenses, especially around the distribution? I always see great libraries posted on HN, but I don't see how anyone can actually use them, in a professional setting.
If I understand right, it's fine for commercial use as long as you don't modify it. If you do, you have to publish the modified version under GPL. Your lawyers are probably right to be so paranoid though, it's very hard to track and if found it can cost millions...
> which is GNU, which means the lawyers at my company said that I couldn't use it
Then either your company is doing something evil or those lawyers are idiots. Nothing in the GPL treats commercial use any differently than non-commercial use, and you're allowed to distribute GPL'd software as long as you make the GPL'd source available to whoever you make the binaries available to.
The recipient of an on prem installation of proprietary Python software may have visibility of the source but they don’t have permission to distribute it to others, as GPL would require.
IANAL, and I didn't ask for an explanation, but I suspect the problem was that I was making a library, which, from my uneducated reading, would qualify as a derived work.
I know our company is especially strict since, from my understanding, significant enough money has already been spent on legal fees.
Fabric can be a replacement for adhoc shell scripts for chore/CI tasks in a project e.g., it can be `make docs` replacement. It is the best of both worlds: shell one-liners glued together using Python.
It doesn't replace ansible--it invokes it (it plays the role of the vagrant utility in this case).
19 comments
[ 2.9 ms ] story [ 43.1 ms ] threadYou focus mainly on the tasks that you need with Ansible instead of the scripts.
Also you have a whole community of Ansible plugins that you can reuse for your own.
Fabric was good at one point, but it missed the migration period to Python 3, hence pushing everyone away.
I'm not even sure Fabric is on the safest Python 3.8 yet.
Fabric was fun though.
Is it a dirty industry secret that most people/companies who use these open source libraries are violating their licenses, especially around the distribution? I always see great libraries posted on HN, but I don't see how anyone can actually use them, in a professional setting.
GPL still allows commercial use in any case, it just requires you release your code under GPL.
Then either your company is doing something evil or those lawyers are idiots. Nothing in the GPL treats commercial use any differently than non-commercial use, and you're allowed to distribute GPL'd software as long as you make the GPL'd source available to whoever you make the binaries available to.
Or, perhaps compliance for this is their exact concern.
For GPL software, yes.
https://www.gnu.org/software/software.en.html#allgnupkgs
https://github.com/paramiko/paramiko/blob/main/LICENSE
IANAL, and I didn't ask for an explanation, but I suspect the problem was that I was making a library, which, from my uneducated reading, would qualify as a derived work.
I know our company is especially strict since, from my understanding, significant enough money has already been spent on legal fees.
It doesn't replace ansible--it invokes it (it plays the role of the vagrant utility in this case).