Skip to content

Instantly share code, notes, and snippets.

View artschwagerb's full-sized avatar

Brian Artschwager artschwagerb

View GitHub Profile
@artschwagerb
artschwagerb / routers.py
Created November 14, 2013 19:20
Django Database Routers Master-Slave
import random
class MasterSlaveRouter(object):
def db_for_read(self, model, **hints):
"""
Reads go to a randomly-chosen slave.
"""
return random.choice(['master','slave1', 'slave2'])
def db_for_write(self, model, **hints):
@artschwagerb
artschwagerb / gist:35130c93b276d6aa2b05
Created January 28, 2015 18:25
Python LDAP - Change Password
def changePassword(user_dn, old_password, new_password):
ldap.set_option(ldap.OPT_X_TLS_REQUIRE_CERT, ldap.OPT_X_TLS_NEVER)
l = ldap.initialize("LDAPS://DOMAIN.COM")
l.set_option(ldap.OPT_REFERRALS,0)
l.set_option(ldap.OPT_PROTOCOL_VERSION,3)
l.set_option(ldap.OPT_X_TLS,ldap.OPT_X_TLS_DEMAND)
l.set_option(ldap.OPT_X_TLS_DEMAND,True)
l.set_option(ldap.OPT_DEBUG_LEVEL,255)
l.simple_bind_s("ACCOUNTWITHRIGHTS@DOMAIN.COM", "PASSWORD")
@artschwagerb
artschwagerb / forms.py
Last active August 12, 2021 14:25
Django Forms Example
from django import forms
from inventory.models import Computer
class ComputerForm(forms.ModelForm):
class Meta:
model = Computer
class ChromebookForm(forms.ModelForm):
@artschwagerb
artschwagerb / settings.py
Last active July 22, 2020 13:07
Django Logging to Syslog
from logging.handlers import SysLogHandler
LOGGING = {
'version': 1,
'disable_existing_loggers': True,
'formatters': {
'standard': {
'format' : "[YOUR PROJECT NAME] [%(asctime)s] %(levelname)s [%(name)s:%(lineno)s] %(message)s",
'datefmt' : "%d/%b/%Y %H:%M:%S"
},
'verbose': {
@artschwagerb
artschwagerb / gist:7703525af730f3349348
Created July 15, 2015 16:37
Duplicate Django Object - Admin Action
from django.contrib import admin
#other imports removed
def copy_course(modeladmin, request, queryset):
import copy
for course in queryset:
# multiple could be selected
course_copy = copy.copy(course) # django copy object

Keybase proof

I hereby claim:

  • I am artschwagerb on github.
  • I am artschwagerb (https://keybase.io/artschwagerb) on keybase.
  • I have a public key ASAkoWhW5kPQRIhRGS1m6bKMSolDCk13wC_Bh9Ss9hKk3Qo

To claim this, I am signing this object:

@artschwagerb
artschwagerb / WMF5Latest.ps1
Created February 15, 2018 15:16 — forked from mgreenegit/WMF5Latest.ps1
Get latest WMF5 and quietly install, reboot suppressed
# Use shortcode to find latest TechNet download site
$confirmationPage = 'http://www.microsoft.com/en-us/download/' + $((invoke-webrequest 'http://aka.ms/wmf5latest' -UseBasicParsing).links | ? Class -eq 'mscom-link download-button dl' | % href)
# Parse confirmation page and look for URL to file
$directURL = (invoke-webrequest $confirmationPage -UseBasicParsing).Links | ? Class -eq 'mscom-link' | ? href -match 'Win8.1AndW2K12R2-KB3134758-x64.msu' | % href | select -first 1
# Download file to local
$download = invoke-webrequest $directURL -OutFile $env:Temp\wmf5latest.msu
# Install quietly with no reboot
if (test-path $env:Temp\wmf5latest.msu) {
start -wait $env:Temp\wmf5latest.msu -argumentlist '/quiet /norestart'
}
@artschwagerb
artschwagerb / install_scollector.sh
Last active December 13, 2016 15:49
bosun scollector install
apt-get -y install git
wget https://storage.googleapis.com/golang/go1.3.3.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.3.3.linux-amd64.tar.gz
export PATH=$PATH:/usr/local/go/bin
export GOPATH=/home/linuxadmin/go
go get github.com/bosun-monitor/scollector
@artschwagerb
artschwagerb / logging_example.py
Last active July 20, 2016 18:35
Python Logging
import logging
# Standard instance of a logger with __name__
logger = logging.getLogger(__name__)
# choose your own adventure
logger.info('message goes here')
logger.debug('message goes here')
logger.warning('message goes here')
logger.exception('message goes here')
@artschwagerb
artschwagerb / not_securly.html
Last active May 6, 2016 15:55
Not Securly iFrame
<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title>JS Bin</title>
</head>
<body>
<form>
Enter URL to load: <input type="text" id="url" />
<input type="button" value="Load URL" onclick="loadUrl()" />