Skip to content

Instantly share code, notes, and snippets.

View grenade's full-sized avatar

rob thijssen grenade

View GitHub Profile
@grenade
grenade / logstash-nsb.conf
Last active November 9, 2015 14:17
logstash config for parsing NServiceBus log4net log files
input {
file {
path => [
"//hostname-uat.example.com/e$/LOGS/**/*.log*",
"//hostname.example.com/Logs/**/UAT/*.log*"
]
codec => multiline {
pattern => "^%{TIMESTAMP_ISO8601_WITHMILLISECONDS}"
negate => true
what => previous
@grenade
grenade / set-buildnumber.ps1
Created September 2, 2014 10:17
Set a teamcity build number to the GitHub release tag name
$release_check_response = (Invoke-WebRequest -Uri "https://api.github.com/repos/atom/atom/releases" | ConvertFrom-Json)
if ($release_check_response) {
$last_tag_name = ($release_check_response | Sort-Object id -descending | Where-Object { $_.tag_name.StartsWith("v", "OrdinalIgnoreCase") } | Select-Object -first 1).tag_name
Write-Host ("##teamcity[buildNumber '{0}']" -f $last_tag_name)
}
$.fn.vectorMap('addMap', 'world_mill_en', {
"insets": [
{
"width": 900.0,
"top": 0,
"height": 606.3398952599682,
"bbox": [
{
"y": -12666641.3633112,
"x": -20047670.118749186
This file has been truncated, but you can view the full file.
{
"insets": [
{
"width": 6000.0,
"top": 0,
"height": 4042.265968399788,
"bbox": [
{
"y": -12666641.3633112,
"x": -20047670.118749186
@grenade
grenade / tf-rollback.cmd
Last active August 29, 2015 14:06
Delete (negate) a TFS changeset
mkdir some-workspace && cd some-workspace
tf workspace /new /collection:http://tfs-host:8080/tfs/some-collection some-workspace
tf rollback /changeset:some-changeset
tf checkin
tf workspace /delete some-workspace
cd .. && rd some-workspace /S /Q
@grenade
grenade / grant-eventlogaccess.ps1
Created October 8, 2014 14:20
Allow log4net to create eventlog appenders under the user account specified by $username
param (
[string] $username = "$env:USERDOMAIN\$env:USERNAME"
)
function GrantAccess ($principle, $log, $access) {
$path = ('HKLM:\SYSTEM\CurrentControlSet\services\eventlog\{0}' -f $log)
if (Test-Path $path) {
Write-Host ('Granting {0} on {1} to {2}' -f $access, $path, $principle) -ForegroundColor Yellow
Get-Acl $path | Format-List
$acl = Get-Acl $path
@grenade
grenade / Config.cs
Last active August 29, 2015 14:15
Generate common build definition in TFS
using System.Collections.Generic;
namespace devopsutil
{
internal static class Config
{
internal const string TfsCollectionUrl = "https://tfs.example.com/tfs/some-collection";
internal const string TfsBuildController = "some-controller";
internal const string TeamProject = "SomeProject Common";
internal const string TeamProjectNamespace = "SomeProject.Common";
@grenade
grenade / update-sublime-text.sh
Created February 10, 2015 18:22
Update Sublime Text to build 3065 on Fedora
sudo mkdir /opt/sublime_text_3065
sudo tar xjvf sublime_text_3_build_3065_x64.tar.bz2 -C /opt/sublime_text_3065 --strip-components=1
sudo rm /opt/sublime_text
sudo ln -s /opt/sublime_text_3065 /opt/sublime_text
@grenade
grenade / app.config
Last active May 17, 2021 00:24
Emit log4net entries to logstash over UDP in near-realtime
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<log4net>
<appender name="UdpAppender" type="log4net.Appender.UdpAppender">
@grenade
grenade / delete-multiple-nuget-packages.sql
Last active November 12, 2018 12:46
NuGet Gallery package deletion scripts
-- Delete packages with ids that start with a specific string
DECLARE @PackageRegistrationKeys table([Key] int)
INSERT INTO @PackageRegistrationKeys
SELECT [Key] FROM [NuGetGallery].[dbo].[PackageRegistrations]
WHERE [Id] LIKE 'Example.Nasty.Package.%'
BEGIN TRANSACTION
DELETE pf
FROM [NuGetGallery].[dbo].[PackageFrameworks] pf
JOIN [NuGetGallery].[dbo].[Packages] p ON pf.[Package_Key] = p.[Key]