Author: Joshua
-
Integration Testing Ansible Playbooks with Travis CI and Docker
The process behind performing integration tests on Ansible playbooks is almost exactly the same as the one used to test individual roles. In fact, this tutorial is based on a modified version of Continuous Testing of Ansible Roles with Docker and Travis CI by Ignacio Sánchez Ginés. This tutorial is a demonstration of how I…
-
Regular Expressions and In-Place Slice Manipulation in Go
Regular expressions are very useful for parsing strings. If you need to replace a substring or split up an array, you should consider using regular expressions. I will admit that I am not an expert in regards to using them, however, I will not dismiss their usefulness. You may find the RexEgg.com Regex Cheat Sheet…
-
Traversing Directories Recursively and Sorting Objects by Attribute Value in Go
Lets say you would like to sort all the files in a directory, as well as its sub directories by an attribute like file size. Approach: First, you need to recursively traverse or walk the specified directory, which is easy in Golang with the filepath.Walk() function from the path/filepath package. In order to use filepath.Walk()…
-
Installing Infinoted on Debian and Ubuntu
Note: This is an old post from 2016, that was recovered from the database of my old website. Overview: Gobby is a cross-platform collaborative text editor that enables Google Docs style editing. Unlike Etherpad, Gobby is more focused toward editing code with its support for syntax highlighting as demonstrated below. I have used this program…
-
Redis Caching WordPresss on CentOS 7
Caching WordPress with Nginx and Redis is quite simple if you are using Ubuntu, as you can just follow this tutorial, but what if you want to use CentOS, or even better, want to automate the setup using Ansible? First of all, you will need to install the EPEL and REMI repositories and of course,…
-
Using Golang to Generate Custom Cover Letters
Writing a cover letter for every application is quite cumbersome. So why not automate the process? That is why I wrote a simple Go application to help with the process. The logic is quite simple as all you have to do is fill out a templated Latex .tex file and then compile it. If you…
-
Brute Force Login Attacks
This simple site as well as others like it, attract more attacks than actual visitors. Just last night this site had a very friendly visitor from the Ukraine that tried to brute force the login page to the admin dashboard. See update: What surprised me was the fact that CloudFlare did not detect this attach…
-
Taking Care of Fellow Team Members
Throughout my educational career, I have gone above and beyond to provide my team members with the best resources I could acquire. I have done so to make group projects quite enjoyable. One thing I provided to multiple groups I have worked with was a Gobby / Infinoted server to enable Google Docs like pair…
-
Affordable Public Openstack Cloud Providers
While reading through the Chris Parin’s outstanding course notes, I came across a list of public OpenStack cloud providers. While going through the list, I noticed two of them that accepted USD and were quite affordable compared to RackSpace. You have to consider the fact that you get what you pay for, however, if you are…