0

Is there a framework for automating tasks on a development environment (which involves interacting with cloud services).

For example, lets say I use rsync and to automate backups and various things using my various cloud accounts, how free am I to customize and automate everything?

For example, lets say I use a password manager like keepassx, can I integrate this so rsync can extract things (like usernames/passwords, SSH keys, codes, files etc.) that are stored in there? What about encryption tools like truecrypt?

Am I free to run any custom bash script or python script for example at any time? Can I use this tool to automate things like vagrant, docker, Amazon EC2, Amazon AWS?

The biggest concern I have is making this too cross platform. I switch between Windows and Linux and unfortunately writing batch scripts is a pain in the ass with cygwin, so I would much prefer to write scripts in a cross platform language. Sorry if this post is loaded with questions, I just see how incredibly useful this would be if it works.

The tool will have features that enable 2-way communications between cloud and local development environment. For eample, there may be situations where new SSH certificates where added, or data file containing parameters which instructs the cloud system to add some new environment variables to the linux development environment (or update the registry for Windows)

For web development side of this tool, I need this tool to do things like:

  • git pushes and pulls
  • backup MySQL databases

Additionally, I need the tool to be able to help in provisioning VMs. So for example, I create a LAMP server VM with vagrant and need to transfer my SSH keys tothe Vagrant VM or docker container, the tool could get the SSH keys from the secure password manager, then use the passwords and instructions to share files between the host and the VM.

I realise theres a whole lot to this, I know I can do this by myself but I don't want to spend God knows how long reinventing the wheel (I made that mistake way too many times). I'm hoping some people here can fill me in on tools that can be integrated as modules into this program.

EDIT: I found a really good starting point, its a program called MultiCloud:

https://www.multcloud.com/

I read about it here. Sounds very promising. Its got the storage sync side of things covered thats for sure. It has WebDAV support. I only came across the term today but from what I read, this might be useful for situations where the cloud storage system needs to make changes to the development environment, i.e. add new environment paramters?

1

You have too wide question to have one magic pill so you should use different tools and scripts that suits for you better.

Is there a framework for automating tasks on a development environment (which involves interacting with cloud services). For example, lets say I use rsync and to automate backups and various things using my various cloud accounts, how free am I to customize and automate everything?

In my case I prefer to use p2p https://syncthing.net/ for backup whole laptop to home pc.

Dropbox for storing documents.

AWS S3 custom-written scripts that make backup of accounting system database and storing (tar + upload).

For example, lets say I use a password manager like keepassx, can I integrate this so rsync can extract things (like usernames/passwords, SSH keys, codes, files etc.) that are stored in there? What about encryption tools like truecrypt?

I am using keepass on dropbox and sync it between laptop and android phone. In your case you can use synkthing.

Am I free to run any custom bash script or python script for example at any time? Can I use this tool to automate things like vagrant, docker, Amazon EC2, Amazon AWS?

In my case I have some .bat files on Windows PC, and Bash and Python on Ubuntu computers and servers.

I think that you can freely use any tool you want. We live in no-ideal world so just automate boring and critical tasks.

The biggest concern I have is making this too cross platform. I switch between Windows and Linux and unfortunately writing batch scripts is a pain in the ass with cygwin, so I would much prefer to write scripts in a cross platform language. Sorry if this post is loaded with questions, I just see how incredibly useful this would be if it works.

in my case different platforms - different tools.

For web development side of this tool, I need this tool to do things like: git pushes and pulls backup MySQL databases

Git Bash for windows, Bash scripts that use git for Ubuntu in my case.

Additionally, I need the tool to be able to help in provisioning VMs. So for example, I create a LAMP server VM with vagrant and need to transfer my SSH keys tothe Vagrant VM or docker container, the tool could get the SSH keys from the secure password manager, then use the passwords and instructions to share files between the host and the VM.

I think that is very specific task so just start writing your own scripts and then refactoring many times ))

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.