While I have only recently learned how to work with Ansible, I am already really enjoying the added efficiency boost I can get by automating some of my daily/recurring tasks related to website hosting.
When I first started working with Ansible, I wasn’t sure there was a big advantage to using it compared to just writing some bash scripts, but after digging in a bit, I think it is really cool and see the benefit, as it would of been incredibly time consuming for me to create a working bash script that does everything a 40 line playbook file does and it still wouldn’t of been as robust and error proof.
As some of my hello world tasks, I have been creating workbooks for managing my hosting servers and doing things like installing and configuring wordpress.
A company that I do web development and design fixes for on their Magento store uses a company called Magemojo for website hosting. When connecting to their server via SSH to make a database backup or preform other tasks, my session would always time out very quickly and it wasn’t possible to backup or restore their eccommerce store’s mysql database without getting disconnected.
The fix is a pretty quick change to either your local ~/.ssh/config file or the global /etc/ssh/ssh_config file, which tells your client to periodically send a signal to the host server to let it know you are still there.
Changing this allowed me to stay logged into their server remotely, so I could preform tasks that take a little bit of time, like backing up files and databases, as well as work a little more effectively.
While working on some website changes for a client running Magento, including adding a number of new landing pages and some mobile/responsive website design fixes, I needed a way to sync up CMS Pages and Blocks on the development site with those on the live website.
I explored a few options and found that for my needs, the easiest way was just to drop the applicable tables on the live website and then import them from the dev website database.
This may not work for all cases, especially if there are pages or blocks that you need to keep from the live website, but in my case, we had generally been careful about updating pages on the live website, as we knew we would be merging in the development changes at some point.
This week, I replaced the upper case(part number AM1JE00100) on a Lenovo Flex 4 Ideapad laptop after the client spilled some water on it and the keyboard stopped working.
Normally, a new keyboard is less than $30 and I can replace it pretty quickly, so I usually only charge half my normal service rate to replace a keyboard. However, with an Ideapad Flex-4, and I’m sure similar Lenovo models, the entire laptop basically needs to be taken apart, aside from the display assembly, to access the keyboard.
Despite finding several individual keyboards for sale online, which were much less expensive than the entire upper case, I ended up replacing the entire palm rest assembly on this laptop, as the keyboard by itself can not be easily removed without damaging the laptop.
While working on a recent web development project, I needed to do some processing to customers shipping and billing addresses, specifically stripping out the street suffix from the end of the street line of the address. In order to do this, I needed a database of common street suffix’s and their abbreviations, like Rd for […]