270d46c4f3 | ||
---|---|---|
.azure-pipelines | ||
.github | ||
.vscode | ||
resources | ||
src | ||
test | ||
tools/JsonCli | ||
.gitignore | ||
.vscodeignore | ||
CHANGELOG.md | ||
LICENSE.md | ||
NOTICE.html | ||
README.md | ||
extension.bundle.ts | ||
gulpfile.ts | ||
main.js | ||
package-lock.json | ||
package.json | ||
package.nls.json | ||
tsconfig.json | ||
tslint.json | ||
webpack.config.js |
README.md
Azure Functions for Visual Studio Code (Preview)
Create, debug, manage, and deploy Azure Functions directly from VS Code. Check out this deployment tutorial to get started with the Azure Functions extension and check out the Azure serverless community library to view sample projects.
Visit the wiki for additional information about the extension.
Sign up today for your free Azure account and receive 12 months of free popular services, $200 free credit and 25+ always free services 👉 Start Free.
Prerequisites
Follow the OS-specific instructions to install the Azure Functions Core Tools:
Install the prerequisites for your desired language:
Features
- Create new function projects
- Create new functions from a template
- Debug function projects locally
- Deploy to Azure
- View, create, delete, start, stop, and restart Azure Function Apps
- View, edit, upload, and download application settings
- JSON Intellisense for
function.json
,host.json
, andproxies.json
- Stream logs from your Azure Function Apps
- View and manage deployment slots
- Debug Node.js function project in Azure (experimental)
NOTE: To enable, set
azureFunctions.enableRemoteDebugging
to true. - Debug Java function project in Azure (experimental)
NOTE: To enable, set
azureFunctions.enableJavaRemoteDebugging
to true.
Create New Project
Debug Function Project Locally
Deploy to Azure
OS-Specific Prerequisites
NOTE: npm can be used on all platforms. On unix platforms, you may need to specify
--unsafe-perm
if you are running npm with sudo. That's due to npm behavior of post install script.
Windows
To install runtime with npm:
v2
npm i -g azure-functions-core-tools@2 --unsafe-perm true
v3
npm i -g azure-functions-core-tools@3 --unsafe-perm true
To install with chocolatey:
choco install azure-functions-core-tools
Mac
To install with homebrew:
v2
brew tap azure/functions
brew install azure-functions-core-tools@2
v3
brew tap azure/functions
brew install azure-functions-core-tools@3
Linux
-
Set up package feed
-
Ubuntu 19.04
wget -q https://packages.microsoft.com/config/ubuntu/19.04/packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb
-
Ubuntu 18.10
wget -q https://packages.microsoft.com/config/ubuntu/18.10/packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb
-
Ubuntu 18.04
wget -q https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb
-
Ubuntu 16.04 / Linux Mint 18
wget -q https://packages.microsoft.com/config/ubuntu/16.04/packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.deb
-
Debian 9
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > microsoft.asc.gpg sudo mv microsoft.asc.gpg /etc/apt/trusted.gpg.d/ wget -q https://packages.microsoft.com/config/debian/9/prod.list sudo mv prod.list /etc/apt/sources.list.d/microsoft-prod.list sudo chown root:root /etc/apt/trusted.gpg.d/microsoft.asc.gpg sudo chown root:root /etc/apt/sources.list.d/microsoft-prod.list
-
-
Install
sudo apt-get update sudo apt-get install azure-functions-core-tools
See here for more installation options and the latest instructions.
Language-Specific Prerequisites
Node
- Node.js 8.x, 10.x, or 12.x
.NET
- VS Code Debugger for C#
- .NET Core Sdk 2.x or 3.x
NOTE: The default experience for C# uses class libraries (*.cs files), which provide superior performance, scalability, and versatility over C# Scripts (*.csx files). If you want to use C# Scripts, you may change your
azureFunctions.projectLanguage
user setting toC#Script
.
Java
- VS Code Debugger for Java
- JDK 1.8
- Maven 3.0+
NOTE: Once Maven is downloaded, you must ensure that Maven is in your PATH environment variable. You can check this by running:
mvn -v
.
Python
-
Python 3.6.x or 3.7.x
NOTE: Python 3.6.8 is the last release of Python 3.6.x with installable binaries for Windows.
PowerShell
NOTE: Debugging PowerShell functions and placing breakpoints works differently than other languages for now. Take a look at the official guide for locally debugging PowerShell functions for complete steps.
Managing Azure Subscriptions
If you are not signed in to Azure, you will see a "Sign in to Azure..." link. Alternatively, you can select "View->Command Palette" in the VS Code menu, and search for "Azure: Sign In".
If you don't have an Azure Account, you can sign up for one today for free and receive $200 in credits by selecting "Create a Free Azure Account..." or selecting "View->Command Palette" and searching for "Azure: Create an Account".
You may sign out of Azure by selecting "View->Command Palette" and searching for "Azure: Sign Out".
To select which subscriptions show up in the extension's explorer, click on the "Select Subscriptions..." button on any subscription node (indicated by a "filter" icon when you hover over it), or select "View->Command Palette" and search for "Azure: Select Subscriptions". Note that this selection affects all VS Code extensions that support the Azure Account and Sign-In extension.
Contributing
There are a couple of ways you can contribute to this repo:
- Ideas, feature requests and bugs: We are open to all ideas and we want to get rid of bugs! Use the Issues section to either report a new issue, provide your ideas or contribute to existing threads.
- Documentation: Found a typo or strangely worded sentences? Submit a PR!
- Code: Contribute bug fixes, features or design changes:
- Clone the repository locally and open in VS Code.
- Install TSLint for Visual Studio Code.
- Open the terminal (press
CTRL+
`) and runnpm install
. - To build, press
F1
and type inTasks: Run Build Task
. - Debug: press
F5
to start debugging the extension.
Legal
Before we can accept your pull request you will need to sign a Contribution License Agreement. All you need to do is to submit a pull request, then the PR will get appropriately labelled (e.g. cla-required
, cla-norequired
, cla-signed
, cla-already-signed
). If you already signed the agreement we will continue with reviewing the PR, otherwise system will tell you how you can sign the CLA. Once you sign the CLA all future PR's will be labeled as cla-signed
.
Code of Conduct
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
Telemetry
VS Code collects usage data and sends it to Microsoft to help improve our products and services. Read our privacy statement to learn more. If you don’t wish to send usage data to Microsoft, you can set the telemetry.enableTelemetry
setting to false
. Learn more in our FAQ.