All Projects → Azure → Azure Functions Powershell Worker

Azure / Azure Functions Powershell Worker

Licence: mit
PowerShell language worker for Azure Functions.

Programming Languages

powershell
5483 projects

Projects that are alternatives of or similar to Azure Functions Powershell Worker

Azure Functions Billing
Azure Functions v2 with .NET Core - billing in serverless architecture.
Stars: ✭ 49 (-64.75%)
Mutual labels:  azure-functions
Azure Iot Developer Kit
A curated list of awesome Azure IoT Developer Kit projects and resources.
Stars: ✭ 73 (-47.48%)
Mutual labels:  azure-functions
Serverlesslibrary
Source code for the Azure Serverless Community Library
Stars: ✭ 119 (-14.39%)
Mutual labels:  azure-functions
Aggregator Cli
A new version of Aggregator aiming at Azure DevOps (ex Visual Studio Team Services)
Stars: ✭ 54 (-61.15%)
Mutual labels:  azure-functions
Serverless Graphql Workshop
GraphQL and Serverless workshop
Stars: ✭ 70 (-49.64%)
Mutual labels:  azure-functions
Serverless
⚡ Serverless Framework – Build web, mobile and IoT applications with serverless architectures using AWS Lambda, Azure Functions, Google CloudFunctions & more! –
Stars: ✭ 41,584 (+29816.55%)
Mutual labels:  azure-functions
Azure For Developers Workshop
The Azure cloud is huge and the vast service catalog may appear daunting at first, but it doesn’t have to be!
Stars: ✭ 38 (-72.66%)
Mutual labels:  azure-functions
Saga Orchestration Serverless
An orchestration-based saga implementation reference in a serverless architecture
Stars: ✭ 136 (-2.16%)
Mutual labels:  azure-functions
Shopathome
Choose from Angular, React, Svelte, and Vue applications with an Azure Functions API, that deploys to Azure Static Web Apps
Stars: ✭ 73 (-47.48%)
Mutual labels:  azure-functions
Heroes Angular Serverless
TypeScript Node/Express 👉TypeScript Serverless ➕Angular
Stars: ✭ 119 (-14.39%)
Mutual labels:  azure-functions
Developing Solutions Azure Exam
This repository contains resources for the Exam AZ-203: Developing Solutions for Microsoft Azure. You can find direct links to resources and and practice resources to test yourself ☁️🎓📚
Stars: ✭ 59 (-57.55%)
Mutual labels:  azure-functions
Hunt
Hunt is a virtual scavenger hunt app where players can join a game, select a team and solve hints to acquire treasure. The team with the most points wins.
Stars: ✭ 65 (-53.24%)
Mutual labels:  azure-functions
Serverless Url Shortener
Azure Function for a URL shortening website. Uses serverless functions, Azure Table Storage and Application Insights.
Stars: ✭ 113 (-18.71%)
Mutual labels:  azure-functions
Azure Functions Openapi Extension
This extension provides an Azure Functions app with Open API capability for better discoverability to consuming parties
Stars: ✭ 54 (-61.15%)
Mutual labels:  azure-functions
Azure Functions Host
The host/runtime that powers Azure Functions
Stars: ✭ 1,650 (+1087.05%)
Mutual labels:  azure-functions
Azure Functions Eventgrid Extension
EventGrid extension for Azure Functions
Stars: ✭ 41 (-70.5%)
Mutual labels:  azure-functions
Azurefunctionsintroduction
Sample Code for Azure Functions
Stars: ✭ 88 (-36.69%)
Mutual labels:  azure-functions
Durablefunctionsmonitor
A monitoring/debugging UI tool for Azure Durable Functions
Stars: ✭ 136 (-2.16%)
Mutual labels:  azure-functions
Linemessagingapi
LINE Messaging API for .Net
Stars: ✭ 128 (-7.91%)
Mutual labels:  azure-functions
Azure Functions Rs
Create Azure Functions with Rust!
Stars: ✭ 117 (-15.83%)
Mutual labels:  azure-functions

azure-functions-logo

Branch Status
dev Build Status
v3.x/ps7 Build Status
v3.x/ps6 Build Status
v2.x Build Status

Azure Functions PowerShell Language Worker

This repository will host the PowerShell language worker implementation for Azure Functions. We'll also be using it to track work items related to PowerShell support. Please feel free to leave comments about any of the features and design patterns.

Overview

PowerShell support for Functions is based on PowerShell Core 7, Functions on Linux, and the Azure Functions runtime V3.

What's available?

Triggers / Bindings

  • HTTP Trigger (Webhook)
  • Timer Trigger
  • Blob Trigger
  • Queue Trigger

What's coming?

  • More triggers and bindings
  • Tooling integration
  • A bunch of other good things

Contributing

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

Building from source

Prereqs

Build

  1. Clone this repository
  2. cd azure-functions-powershell-worker
  3. ./build.ps1

NOTE: If you're missing a dependency, you will be asked to run ./build.ps1 -Bootstrap

Run & Debug

The PowerShell worker alone is not enough to establish the functions app, we also need the support from Azure Functions Host. You may either use a published host CLI or use the in-development host. But both of the methods require you to attach to the .NET process if you want a step-by-step debugging experience.

Published Host

First, follow the instructions to install the Azure Functions Core Tools. Then locate the azure-functions-core-tools\bin\workers\ folder. Here are a few hints on where it could be located:

On Windows if you installed via npm

~\AppData\Roaming\npm\node_modules\azure-functions-core-tools\bin\workers\

On macOS if you installed via brew

/usr/local/Cellar/azure-functions-core-tools/<version>/workers/

Under the workers/powershell folder, create a folder with the name 7 if it does not exist yet. Copy the result of the publish directory into the workers/powershell/7 folder, and copy the publish/worker.config.json file into the workers/powershell folder:

Copy-Item -Recurse -Force ./src/bin/Debug/netcoreapp3.1/publish/ "/usr/local/Cellar/azure-functions-core-tools/$(func --version)/workers/powershell/7"
Copy-Item -Recurse -Force ./src/bin/Debug/netcoreapp3.1/publish/worker.config.json "/usr/local/Cellar/azure-functions-core-tools/$(func --version)/workers/powershell"

NOTE: if the powershell folder already exists, you should delete it or debugging won't work.

Then cd into a Function App with PowerShell as the worker runtime (NOTE: There's an example PowerShell Function App in the examples folder).

Set the environment variable FUNCTIONS_WORKER_RUNTIME_VERSION to 7, or add this as an app setting to the local.settings.json file.

Lastly, run:

func start

NOTE: If you would like to see more out of the logs, see the logging section in the Azure Functions Host repo.

Latest Host

A developer may also use the latest host code by cloning the git repository Azure Functions Host. Now you need to navigate to the root folder of the host project and build it through:

dotnet restore WebJobs.Script.sln
dotnet build WebJobs.Script.sln

After the build succeeded, set the environment variable "AzureWebJobsScriptRoot" to the root folder path (the folder which contains the host.json) of your test functions app.

Under the workers/powershell folder, create a folder with the name 7 if it does not exist yet. Then copy the publish directory to workers/powershell/7, and the publish/worker.config.json to workers/powershell:

Copy-Item -Recurse -Force ./src/bin/Debug/netcoreapp3.1/publish/ "<Azure Functions Host Root>/src/WebJobs.Script.WebHost/bin/Debug/netcoreapp3.1/workers/powershell/7"
Copy-Item -Force ./src/bin/Debug/netcoreapp3.1/publish/worker.config.json "<Azure Functions Host Root>/src/WebJobs.Script.WebHost/bin/Debug/netcoreapp3.1/workers/powershell"

Then you can start the host by running:

dotnet ./src/WebJobs.Script.WebHost/bin/Debug/netcoreapp3.1/Microsoft.Azure.WebJobs.Script.WebHost.dll

Note: Remember to remove "AzureWebJobsScriptRoot" environment variable after you have finished debugging, because it will also influence the func CLI tool.

Packaging

To package the PowerShell Language Worker as a nupkg, do the following:

  • cd azure-functions-powershell-worker
  • dotnet publish
  • cd package
  • dotnet pack

That will place a Microsoft.Azure.Functions.PowerShellWorker.*.nupkg in:

azure-functions-powershell-worker/package/bin/Debug

It pulls the contents of the publish folder in:

azure-functions-powershell-worker/src/bin/Debug/netcoreapp3.1/publish

if you specify a different Configuration or TargetFramework that will be honored.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].