Skip to content

Instantly share code, notes, and snippets.

Avatar

Chris Woolum cwoolum

View GitHub Profile
@cwoolum
cwoolum / BootstrapAgent.ps1
Last active Oct 20, 2017
Using this you can create a brand new build agent for VSTS
View BootstrapAgent.ps1
Write-Output "Running config with subdomain $Env:VSTS_SUBDOMAIN and token $Env:VSTS_PATTOKEN"
./config.cmd --unattended --url "https://$Env:VSTS_SUBDOMAIN.visualstudio.com" --auth PAT --token $Env:VSTS_PATTOKEN --pool default
./run.cmd
@cwoolum
cwoolum / carramrod.bas
Created Apr 20, 2018
Frogger in BASIC
View carramrod.bas
1000 REM Frogger
1020 REM ------------------------
1030 CLS
1040 PRINT "=== Frogger ==="
1050 PRINT "UP: W"
1070 PRINT "LEFT: A"
1080 PRINT "RIGHT: S"
1081 LET I = 960
1082 LET X = 24
@cwoolum
cwoolum / commonbuild.yml
Last active Dec 3, 2018
YAML builds in Azure Pipelines
View commonbuild.yml
parameters:
services: []
jobs:
- job: Build
pool:
name: Hosted Ubuntu 1604
steps:
- task: Docker@1
View build.yml
resources:
repositories:
- repository: templates
type: git
name: BuildTemplates
trigger:
branches:
include:
- master
View ionic-migration.json
{
"rulesDirectory": ["@ionic/v4-migration-tslint/rules"],
"rules": {
"ion-action-sheet-method-create-parameters-renamed": true,
"ion-alert-method-create-parameters-renamed": true,
"ion-datetime-capitalization-changed": true,
"ion-item-option-method-get-sliding-percent-renamed": true,
"ion-overlay-method-create-should-use-await": true,
"ion-overlay-method-present-should-use-await": true,
"ion-back-button-not-added-by-default": { "options": [true], "severity": "warning" },
@cwoolum
cwoolum / configure.sh
Last active Jan 6, 2019
AKS-Deploy Part 1
View configure.sh
echo Enter the name of the environment you would like to create
read envName
serverApplicationSecret="$(openssl rand -base64 30)"
serverApplicationId="$(az ad app create --display-name kube-aad-server-$envName --identifier-uris "https://kube-aad-server-$envName" --end-date "2050-1-1" --password $serverApplicationSecret --query appId -o tsv)"
az ad app update --id $serverApplicationId --set groupMembershipClaims=All
az ad app permission add --id $serverApplicationId --api 00000003-0000-0000-c000-000000000000 --api-permissions e1fe6dd8-ba31-4d61-89e7-88639da4683d=Scope 06da0dbc-49e2-44d2-8312-53f166ab848a=Scope 7ab1d382-f21e-4acd-a863-ba3e13f7da61=Role
az ad app permission grant --id $serverApplicationId --api 00000003-0000-0000-c000-000000000000
@cwoolum
cwoolum / configure.sh
Last active Jan 6, 2019
AKS-Deploy Part 2
View configure.sh
resourceGroupName="rg-$envName"
echo "Creating Resource Group"
az group create -l westus -n $resourceGroupName
echo "Creating VNet"
az network vnet create \
--resource-group $resourceGroupName \
--name vnet-api-$envName \
--address-prefixes 10.0.0.0/8 \
@cwoolum
cwoolum / configure.sh
Last active Jan 6, 2019
AKS-Deploy Part 3
View configure.sh
spPass="$(openssl rand -base64 30)"
echo "Creating Service Principal"
spId="$(az ad sp create-for-rbac --name sp-kube-api-$envName --password $spPass --skip-assignment --query appId --output tsv)"
echo "Setting permissions for Service Principal on VNet"
az role assignment create --assignee $spId --scope $vNetResourceId --role Contributor
View AKS-Deploy Part 4
echo "Creating AKS Cluster"
az aks create \
--resource-group $resourceGroupName \
--name kube-api-$envName \
--node-count 2 \
--node-vm-size Standard_A2_v2 \
--enable-addons monitoring \
--network-plugin azure \
--service-cidr 10.0.0.0/16 \
--dns-service-ip 10.0.0.10 \
@cwoolum
cwoolum / helm-rbac.yaml
Last active Jan 6, 2019
AKS-Deploy Part 5
View helm-rbac.yaml
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: contoso-cluster-admins
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- apiGroup: rbac.authorization.k8s.io