Skip to content

Instantly share code, notes, and snippets.


Daniel Macuare danielmacuare

View GitHub Profile
danielmacuare /
Last active September 14, 2020 14:52
AWS Lambda Function to Post an alert to a Slack channel every time Cloudwatch triggers the SNS-Backed Lambda
import logging
from json import dumps
from os import environ
from urllib3 import PoolManager
def post_to_slack(event, context):
slack_channel = environ.get("SLACK_NET_CHANNEL")
danielmacuare /
Last active April 19, 2020 08:19
Bolierplate to render an output file from a YAML (Vars) + Jinja (Template)
#!/usr/bin/env python3
import yaml
from jinja2 import Environment, FileSystemLoader, PackageLoader, StrictUndefined
# Docs:
# Functions
def render_yaml_template(yaml_file, jinja_template, output="files/sshd_config"):
This takes a yam file with all yor vars, a Jinja template and renders an output file
danielmacuare / python_logging.MD
Last active March 7, 2020 18:41
Python Logging Boilerplate
View python_logging.MD

Method 1 - With basicCofig() (Logging to a file)

#!/usr/bin/env python3
import logging

def conf_logging(log_sev='WARNING'):
    log_format = "[%(name)s]-[%(levelname)s]-%(asctime)s-[%(funcName)s]-%(message)s"
danielmacuare /
Last active July 5, 2021 05:38
To Install ANY python version on Linux boxes
danielmacuare /
Last active July 31, 2023 23:42
Simple tutorial to use nornir for network automation solutions. The tutorial explain some basics to start with.
View napalm_to_nornir.MD

Napalm get_facts to Nornir

The purpose of this gist is to gather facts from a network device with Napalm and Nornir alike.
This will help us understand how to use tasks in Nornir.


  • We will be using Telnet to connect to our devices. By default, Napalm uses SSH to connect (See Napalm optional args) to the IOS devices. For this reason, we will need to pass optional_arguments when instantiating the Napalm driver object.
  • r2 can be replaced with the device ip. In my case, I was working with host files in my OS.

Napalm Script



The following commands have been tested on Ubuntu 16.04
uname -a
Linux ubuntu 4.4.0-145-generic #171-Ubuntu SMP Tue Mar 26 12:43:40 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux


0 - Install the tool sudo apt-get install isc-dhcp-server

danielmacuare / git
Last active June 28, 2018 06:44
Git Workflow
View git
Git fetch origin # Origin is the place from where you cloned your repository.
Git merge origin/master # Merge origin/master into your current branch.
git pull # Same
git add
git commit -m "Commit message"
Git fetch origin # In case the remote could be ahead of you. Origin is the place from where you cloned your repository.