My Pets

In this article, I will describe my current pets projects. These are mainly excuses to learn something new for me, or exercises to go deeper in particular technologies, but could be (I hope) useful for you too.

Don’t hesitate to issue enhancements, bugfix (PR), or just give a try to give me your thoughts.

Instance Watcher

:construction_worker: Tech: Lambda, Python, Serverless Application Model (SAM), SES

This app will scan your AWS Account against all EC2 region worldwide and notify you by email when you have some running EC2 instances. It’s useful for non-production environments that you need to monitor. Usecase: labs/training, sandbox accounts.

Lately, I’ve added whitelisting capabilities using EC2 tags, next features: Slack Notifications, More information to display like instance profile, listing running RDS Instances, Code optimizations / Refactoring.

Link: instance-watcher

Ansible Mac Install

:construction_worker: Tech: Ansible, geerlingguy modules

Tired to reinstall your brand new mac, or you just want to do a fresh new installation on your laggy macOS?

Lucky You! you can use this Ansible Playbook to bootstrap your macOS Installation, with all your preferred applications.

With this nearly one-command playbook, you will setup your macOS in few minutes (zero touch installation).

The current configuration of this repository reference all my tools used for my DevOps activities and much more.

For more comprehensive explanation, take a look at the config.yml file here

homebrew_taps:
  - homebrew/cask
  - wallix/awless
  - caskroom/fonts
  - homebrew/cask-versions
  - aws/tap
  - lucagrulla/tap

homebrew_installed_packages:
  - autoconf
  - automake
  - awless
  - aws-okta
  - aws-sam-cli
  - aws-shell
  - awscli
  - bash-completion
  - calc
  - coreutils
  - curl
  - cfn-lint
  - cw
  ...

Adapted from mac-dev-playbook & ansible-mac-install

Link: ansible-mac-install

Lena Twitter Bot

:construction_worker: Tech: Serverless Framework, Node.JS

This dead simple twitter bot was my first experience with Node.js.

I’ve used it to deploy a serverless bot to retweet, favorite, or follow twittos based on #hashtags, or Twitter accounts in specific language (French).

Actions are scheduled using CloudWatch Events. Today, my running bot has more than 800 followers :)

Link: lena-twitter-bot

Update53-pub

:construction_worker: Tech: Route53, Python

For my home automation installation, I wanted to use AWS Route53 for DynDNS to avoid crappy software.

My ISP updates my public IP at a random pace. This will enable the usage of my own DNS name space using nearly free update mechanisms.

With this simple python script, you will be able to schedule an update to your DNS A record

Link: update53-pub

s3-nobackup-notifier

:construction_worker: Tech: Lambda, SES, Python

Again, for my home automation (Jeedom), I wanted to monitor the effectiveness of backups on AWS S3.

With this simple serverless function written in python, I can be alerted by email when there is no new backup on the target bucket (one backup by day).

Behind the scene, it’s comparing the current date with the last object on an S3 prefix.

Later I will add hash comparison and file size check and Telegram notifications (using bot).

Link: s3-nobackup-notifier

That’s all folks!

zoph.