Skip to content

Instantly share code, notes, and snippets.

Ryan Punt rpunt

Block or report user

Report or block rpunt

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@rpunt
rpunt / newrelic_post.pl
Created Apr 29, 2014
Post deployment info the NewRelic
View newrelic_post.pl
# New Relic deployment events
my $ua = LWP::UserAgent->new;
$response = $ua->request(POST 'https://api.newrelic.com/deployments.xml',
Content => [
'deployment[application_id]' => $APPID,
'deployment[description]' => 'deployment message',
'deployment[revision]' => $RELEASE_VERSION,
'deployment[user]' => 'Jenkins'
],
'x-api-key' => $APIKEY
@rpunt
rpunt / phoh.ps1
Created Apr 7, 2014
Powershell hash of hashes
View phoh.ps1
$entries = @{}
import-csv $csv | % {
$entries.add(($adpentry.EEfile_Number),(@{
fname = $_."First Name"
lname = $_."Last Name"
department = $_.Department
location = $_.Location
manager = $_.Manager
title = $_."Job Title"
}))
@rpunt
rpunt / retrieve_rooms_from_roomlists.mm
Created Mar 16, 2013
A SOAP message that will retrieve a list of rooms in a roomlist from Exchange 2010.
View retrieve_rooms_from_roomlists.mm
// given the e-mail address of a roomlist, this SOAP message will retrieve the member rooms.
NSString *roomlist = @"roomlist1@domain.tld" // this is the e-mail address of the room list you're querying
NSLog(@"querying roomlist %@", roomlist);
NSString *soapMessage = [NSString stringWithFormat:@""
@"<?xml version=\"1.0\" encoding=\"utf-8\"?>"
@"<soap:Envelope xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:t=\"http://schemas.microsoft.com/exchange/services/2006/types\" xmlns:m=\"http://schemas.microsoft.com/exchange/services/2006/messages\">"
@"<soap:Header>"
@"<t:RequestServerVersion Version =\"Exchange2010_SP2\"/>"
@"</soap:Header>"
@rpunt
rpunt / conferenceroom_schedule_SOAP_message.mm
Created Mar 16, 2013
A SOAP message that will retrieve a conference room's schedule for the day in Exchange 2010.
View conferenceroom_schedule_SOAP_message.mm
// for some reason, Exchange Web Services seems to ignore the DST-specific bias settings, and only refer to the
// master bias.
// set the master bias here.
int bias = abs([[NSTimeZone systemTimeZone] secondsFromGMT] / 60);
NSString *soapMessage = [NSString stringWithFormat:@""
@"<?xml version=\"1.0\" encoding=\"utf-8\"?>"
@"<soap:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:t=\"http://schemas.microsoft.com/exchange/services/2006/types\">"
@"<soap:Body>"
@"<GetUserAvailabilityRequest xmlns=\"http://schemas.microsoft.com/exchange/services/2006/messages\" xmlns:t=\"http://schemas.microsoft.com/exchange/services/2006/types\">"
@rpunt
rpunt / retrieve_exchange_room_lists.mm
Last active Dec 15, 2015
Retrieve a list of roomlists from Exchange 2010 via SOAP.
View retrieve_exchange_room_lists.mm
// Retrieve a list of roomlists from Exchange 2010 via SOAP.
// This method then uses SMXMLDocument to retrieve the e-mail addresses for those roomlists,
// which can be used to query the individual rooms
// DEPENDENCIES: AFNetworking v1 (https://github.com/AFNetworking/AFNetworking)
// SMXMLDocument (https://github.com/nfarina/xmldocument)
//
// NOTE: I used AFHTTPRequestOperation instead of AFXMLRequestOperation because I wanted the XML, not an XML parser
// (which is what AFXMLRequestOperation returns)
- (void) readRoomLists {
@rpunt
rpunt / 01-preseed-LVM-on-software-RAID.sh
Last active Dec 14, 2015
# This is a preseed partman recipe that will later allow the created on # LVM-on-software-RAID, somethat that wasn't possible directly in the # preseed at the time (~2003)
View 01-preseed-LVM-on-software-RAID.sh
# This is a preseed partman recipe that will later allow the created on
# LVM-on-software-RAID, somethat that wasn't possible directly in the
# preseed at the time (~2003)
d-i lvmcfg/activevg boolean false
d-i lvmcfg/vgdelete_names select vg00
d-i lvmcfg/vgcreate_name string vg00
d-i lvmcfg/vgdelete_confirm boolean true
d-i partman-auto/method string lvm
d-i partman-lvm/device_remove_lvm boolean true
@rpunt
rpunt / Verify User Credentials.ps1
Last active Dec 14, 2015
Verify the user running the script is a local admin before proceeding
View Verify User Credentials.ps1
[CmdletBinding()]
param (
[parameter(Mandatory=$true)][string]$adminuser,
[parameter(Mandatory=$true)][string]$adminpassword
)
$computer = gc env:computername
# did you enter valid credentials for a local user?
[Reflection.Assembly]::LoadFile('C:\Windows\assembly\GAC_MSIL\System.DirectoryServices\2.0.0.0__b03f5f7f11d50a3a\System.DirectoryServices.dll')
@rpunt
rpunt / PowerShell Console Transcript.ps1
Last active Dec 14, 2015
Writes a log of the console output from a powershell script to $PWD. Very useful for unattended scripts.
View PowerShell Console Transcript.ps1
$log=Join-Path (Get-ChildItem $MyInvocation.MyCommand.Definition).Directory (Get-ChildItem $MyInvocation.MyCommand.Definition).Basename
Start-Transcript "$log.log"
@rpunt
rpunt / 01-install-xenapp-6.ps1
Last active Jun 21, 2017
A fully-automated, silent install for XenApp 6 Enterprise on Server 2008 R2.
View 01-install-xenapp-6.ps1
# This install assumes a couple things:
#
# 1. You're logged in as a local admin, per Citrix recommendations
# 2. These script files are store in d:\software\citrix6
# 3. The installation media for XenApp 6 has been unpacked in d:\software\citrix6\citrix6
# 4. The MSIs for Hotfix Rollup 2 and Profile Manager are located in d:\software\citrix6\citrix6\addons
# (these can be excluded by skipping "04-01-install-patches.bat"
#
# This install occurs across four reboots, and is complete unattended; you can kick it off
# when logged in via RDP or at the console, and let it run to completion. Run time is
You can’t perform that action at this time.