Automatisation help needed


I landed a new job and got good powershell skills, but I don’t have much knowlegde of 3rd party software or other/better tools that can be used for automatisation.

Company developed software is currently upgraded manually on each client/customer server (off-site/vpn). The manual process includes copying files to destination server, stopping/starting apache db service, retrieving values from config files, etc.
Doing this manually for each customer takes a lot of time as you can imagine.

I was thinking about creating a database with all customer specific information in regards to updates (remote crendentials, paths, etc.) and doing all the automatisation in powershell.

I’m an not sure though if this is the best method as don’t know any devops tools yet. The automatisation must work 100%, or better yet; if something fails all steps can be reversed.

Hope this makes sense. Any input, help or tips would be greatly apreciated. Thanks