Skip to content

Instantly share code, notes, and snippets.

@kevinhillinger
kevinhillinger / ProcessAzureBlobStorageResultsWithPaging.ps1
Created November 3, 2017 17:52
Using ListBlobsSegmented to page through Azure Blob Storage results
# get the container
$account = Get-AzureRmStorageAccount -Name blobiterationtest0 -ResourceGroupName blob-iteration-test
$context = $account.Context
$container = Get-AzureStorageContainer -Context $context -Name test
$maxResults = 5
$segment = 0 #which segment / result set are we getting? (zero index)
@kevinhillinger
kevinhillinger / get-apim-access.ps1
Created November 29, 2017 17:19
Get SharedAccessSignature for API Management (v1 REST API) using PowerShell
$Source = @"
namespace Microsoft.Apim
{
using System;
using System.Net;
using System.Text;
using System.Globalization;
using System.Security.Cryptography;
public static class Tools
@kevinhillinger
kevinhillinger / new-java-azure-function.bash
Created February 5, 2018 13:46
How to create a new Azure Function for Java using the Maven plugin (MacOS)
#!/bin/bash
# get maven (if you don't already have it
brew update
brew install maven
# get core tools
sudo npm install -g azure-functions-core-tools@core --unsafe-perm true
import os, sys, uuid, time
from azure.storage.blob import BlockBlobService, PublicAccess
CONTAINER_NAME = '<container name>'
service = BlockBlobService(account_name='<account name', account_key='<your key>')
try:
service.create_container(container_name = CONTAINER_NAME)
@kevinhillinger
kevinhillinger / template.json
Last active November 26, 2020 09:37
Resource Manager (ARM) Template with copyIndex variable to output
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"storageSettings": {
"type": "object",
"defaultValue": {
"count": 3,
"prefix": "baa"
}
@kevinhillinger
kevinhillinger / create_vertex.js
Last active March 22, 2019 15:48
Cosmos DB Stored Procedure - Graph / Gremlin - vertex creation and replacement
// create vertex by label
// both vertex and/or edge should come in as objects. This is inline for clarity of requirements
// the vertex and the edge in this sample demonstrate the minimum required fields and the shape to conform to graph
function create_vertex(label, id) {
var context = getContext();
var collection = context.getCollection();
var selfLink = collection.getSelfLink();
var newVertex = {
@kevinhillinger
kevinhillinger / vsts_trigger_release.ps1
Created August 3, 2018 17:54
VSTS REST API Authentication & Trigger Release
Param(
[string]$vstsAccount = "<VSTS-ACCOUNT-NAME>",
[string]$projectName = "<PROJECT-NAME>",
[string]$releaseDefinitionId = "<RELEASE-ID>",
[string]$keepForever = "true",
[string]$user = "",
[string]$token = "<PERSONAL-ACCESS-TOKEN>"
)
Write-Verbose "Parameter Values"
@kevinhillinger
kevinhillinger / ServiceManifest.xml
Last active February 19, 2019 15:04
Service Fabric - UDP Service
// sourced: https://stackoverflow.com/questions/35902685/service-fabric-stateless-server-custom-udp-listener
<?xml version="1.0" encoding="utf-8"?>
<ServiceManifest Name="UdpServicePkg"
Version="1.0.0"
xmlns="http://schemas.microsoft.com/2011/01/fabric"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ServiceTypes>
<!-- This is the name of your ServiceType.
@kevinhillinger
kevinhillinger / add-log-analytics-ext-arm-tmpl.json
Last active March 28, 2019 16:12
Adding Log Analytics VM Extension to VM Scale Set with PowerShell
{
"name": "[concat(variables('vmNodeType0Name'),'OMS')]",
"properties": {
"publisher": "Microsoft.EnterpriseCloud.Monitoring",
"type": "MicrosoftMonitoringAgent",
"typeHandlerVersion": "1.0",
"autoUpgradeMinorVersion": true,
"settings": {
"workspaceId": "[reference(resourceId('Microsoft.OperationalInsights/workspaces/', parameters('omsWorkspacename')), '2015-11-01-preview').customerId]"
@kevinhillinger
kevinhillinger / create_managed_disk_from_vmss_snapshot.ps1
Created March 18, 2019 12:38
Snapshot a VM Scale Set instance and create a managed disk from it
$resourceGroupName = "myResourceGroup"
$scalesetName = "myVMScaleSet"
$vmInstanceId = 0
$location = "eastus2"
$snapshotName = "vmss_snapshot"
# create the snapshot
$vmss = Get-AzVmssVM -ResourceGroupName $resourceGroupName -VMScaleSetName $scalesetName -InstanceId $vmInstanceId