Skip to content
This repository has been archived by the owner on Jun 11, 2019. It is now read-only.

Get Azure Blobs example working #2

Merged
merged 4 commits into from
Jul 25, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions examples/blob/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
/bin/
/node_modules/
3 changes: 3 additions & 0 deletions examples/blob/Pulumi.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
name: azure-blob
runtime: nodejs
description: Work with Azure Blobs
34 changes: 34 additions & 0 deletions examples/blob/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
// Copyright 2016-2017, Pulumi Corporation. All rights reserved.

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
import * as serverless from "@pulumi/azure-serverless";


const resourceGroup = new azure.core.ResourceGroup("resourcegroup", {
location: "West US 2",
});
// Create a storage account for our images
const storageAccount = new azure.storage.Account("storage", {
resourceGroupName: resourceGroup.name,
location: resourceGroup.location,
accountReplicationType: "LRS",
accountTier: "Standard",
});

// And a container to use to upload images into
const storageContainer = new azure.storage.Container("images-container", {
resourceGroupName: resourceGroup.name,
storageAccountName: storageAccount.name,
name: "images",
});

// When a new PNG image is added, fire an event
serverless.blob.onEvent("newImage", storageAccount, "images/{name}.png", (context, blob) => {
context.log!(context);
context.log!(blob);
context.done();
}, {resourceGroup: resourceGroup});

// The storage account where images should be uploaded
export let storageAccountName = storageAccount.name;
22 changes: 22 additions & 0 deletions examples/blob/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"name": "azure-blob",
"version": "0.1",
"main": "bin/index.js",
"typings": "bin/index.d.ts",
"scripts": {
"build": "tsc"
},
"dependencies": {
"@pulumi/pulumi": "^0.14.0-rc1"
},
"devDependencies": {
"@types/node": "^8.0.26",
"typescript": "^2.5.3",
"azure-functions-ts-essentials": "^1.3.2"
},
"peerDependencies": {
"@pulumi/azure": "latest",
"@pulumi/azure-serverless": "latest"
},
"license": "Apache 2.0"
}
19 changes: 19 additions & 0 deletions examples/blob/tsconfig.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
{
"compilerOptions": {
"outDir": "bin",
"target": "es6",
"module": "commonjs",
"moduleResolution": "node",
"sourceMap": true,
"experimentalDecorators": true,
"pretty": true,
"noFallthroughCasesInSwitch": true,
"noImplicitAny": true,
"noImplicitReturns": true,
"forceConsistentCasingInFileNames": true,
"strictNullChecks": true
},
"files": [
"index.ts"
]
}
Loading