Skip to content

Instantly share code, notes, and snippets.

Avatar

Rad W radzhome

  • Postmedia
  • Ottawa
View GitHub Profile
@radzhome
radzhome / phone.py
Created Feb 25, 2020
format_phone_number
View phone.py
import re
import logging
def phone_format(phone_number, raise_exception=False):
"""
Cleans up formatting for a phone number
format_phone_number
:param raise_exception: bool, throw an exception or return original value
:param phone_number: inputted raw phone
:return: str formatted_phone_number
View pubsub.py
"""
Pub/sub is a pattern used in scaling software its important to understand what sort of
scaling it helps with. An important distinction is between pub/sub and message queueing.
In the queueing pattern, a queue (or list in Redis) buffers the messages to be processed while
a pool of workers pops items off the list and handles them. In this model, scaling the size of
your pool of workers scales the speed with which you process your queue, because each message
is passed to only one worker. All of the workers handle any given message in the exact same way.
In pub/sub on the other hand, the system attempts to deliver all of a channels messages to all
@radzhome
radzhome / s3.py
Created Jan 18, 2019
s3 and sqs boto3 client
View s3.py
from __future__ import unicode_literals
"""
S3 bucket CRUD operations core module
"""
import logging
import time
import boto3
import botocore
from botocore.client import Config
@radzhome
radzhome / ecs_deploy.py
Created Aug 24, 2018
ecs creation and deployment with python
View ecs_deploy.py
# -*- coding: utf-8 -*-
# #!/usr/bin/env python
"""
Deploy docker image to ecs, upload repo to ecr
Pass the repository url, the tag and the service family
Also checks cluster is there or creates it
Sets up necessary ELB and TG
"""
import os
import sys
@radzhome
radzhome / read_env.py
Last active Aug 17, 2018
python read env file
View read_env.py
env_file='/path/to/env/file'
env_vars = []
with open(env_file) as f:
for line in f:
if line.startswith('#'):
continue
# if 'export' not in line:
# continue
# Remove leading `export `
# then, split name / value pair
View cloudFormation template
AWSTemplateFormatVersion: '2010-09-09'
Description: >
AWS CloudFormation template to create a new VPC
or use an existing VPC for ECS deployment
in Create Cluster Wizard. Requires exactly 1
Instance Types for a Spot Request.
Parameters:
EcsClusterName:
Type: String
Description: >
@radzhome
radzhome / json_schema_to_django_model.py
Last active Jul 28, 2022
Converts json schema to django models.py
View json_schema_to_django_model.py
"""
Json Schema to Django Model
"""
import json
import argparse
import logging
import os
def determine_model_name(model_id=None, filename=None):
View tickets.py
class TicketMachine(object):
def __init__(self, route1_name, route1_child, route1_adult, route2_name, route2_child, route2_adult):
self.routes = [
{'name': route1_name, 'child_fare': route1_child, 'adult_fare': route1_adult},
{'name': route2_name, 'child_fare': route2_child, 'adult_fare': route2_adult}
]
self.selected_route = None
View european_venues2.sql
and
(metadata like "%Camp Nou%" or
metadata like "%Wembley%" or
metadata like "%Croke Park%" or
metadata like "%Twickenham%" or
metadata like "%Signal Iduna Park%" or
metadata like "%Stade de France%" or
metadata like "%Santiago Bernabéu%" or
metadata like "%Luzhniki%" or
View european_venues.sql
(metadata like "%Camp Nou%" or
metadata like "%Wembley%" or
metadata like "%Croke Park%" or
metadata like "%Twickenham%" or
metadata like "%Signal Iduna Park%" or
metadata like "%Stade de France%" or
metadata like "%Santiago Bernabéu%" or
metadata like "%Luzhniki%" or
metadata like "%San Siro%" or
metadata like "%Atatürk Olympic%" or