Azure Functions - v2 support and v1 lifetime - azure

As per this question - Azure functions v2 only supports .Net Core
We currently have Azure Functions v1 in production using .NET 4.6.1 which rely on 3rd party dlls which we do not have a .NET Core version yet. It could be 1-2 years before we get the 3rd party dlls to .NET Core, if ever. So some key questions I think everyone will want to know about upgrades are:
Q1 - Are there any plans to have Azure Functions v2 support the regular .NET Framework in the future to make upgrading our production system possible? If so are there any rough dates of when this might be available?
Q2 - If not then how long can we expect Microsoft to support Azure Functions v1? Is there an official mainstream & extended support schedule of dates like other Microsoft products announcing when you are going to turn off Azure Functions v1 ?
The killer issue here being if Microsoft turn off Azure Functions v1 without supporting .NET Framework on Azure Functions v2 this will cause significant problems for our production system in the future and we will need to stop migrating our code base to Azure Functions due to the lack of support.

Q1: Microsoft has not announced any plans to support the Azure Functions v2 runtime with .NET Framework. They rewrote it with .NET Core specifically to fully support the latest version of .NET, while also being cross-platform. MS has a big cross-platform push in their tools and cloud support at the moment.
Q2: I haven't seen any mention as to how long the Azure Functions v1 Runtime will be supported. I would expect it to be mentioned when the v2 Runtime becomes Generally Available (GA). They haven't stated when the v2 Runtime will be GA, but with the Microsoft //Build 2018 conference coming up next week (as I write this) we may find out more then.
Overall, I would recommend waiting to see what MS announces at //Build next week, and then contact the Azure Support team directly regarding SLA's and long term support guarantees.

Related

Can I use Azure Functions V3 Azure static web API

When creating an Azure Static Site using the Blazor settings, you get an option to configure an API. My repository has an Azure Functions V3 API, and I want to use that. After making all the definitions, the build and deploy workflow fails. When I eliminate the api_location setting, the workflow succeeds.
I am pretty sure that the workflow expects a V2 Azure Functions application.
Can I supply a custom build command to build the V3 application?
Will role management work OK with V3?
Thanks!
According to this, a managed API can only use .NET Core 3.1, while V3 is .Net 5 based, so that is probably why the build failed.
Having said that, this document is from May 2020, so this maybe changing soon, hopefully...
Update: After discussing the matter with a Microsoft employee involved with the matter, they informed me that (a) the document is indeed up to date and (b) static apps API will .NET 6 support sometime in November...

What is the most covered way of scripting Azure resources?

I know of ARM, the REST SDK and the CLI Powershell cmdlets.
What I want to know is; which of these has the most extensive support for scripting resources without having to touch the (indeed very slow) Azure Portal?
And I would also really like to know which one of these Microsoft usually ship first with regards to preview features?
Each service in Azure is exposed using a REST API. Most of those APIs are publically supported. Some aren't.
It depends on the team that builds the elements that make up Azure and often their primary customer base. The Windows IaaS and AAD teams have been mostly PowerShell first. Machine learning and AI seem to favor azure-cli, which is built in Python, a very commonly used language in big data scenarios. The Azure Devops team has recently moved from the Visual Studio to the Azure brand (formerly Visual Studio Team Services, Visual Studio Online, Team Foundation Service preview). Their tools are mostly Node and Powershell based. Not everything in Azure is a "Resource", per se. So not all things are created or updated using Azure Resource Manager Templates (ARM).
So, unfortunately, there is no golden hammer when it comes to automating Azure.
Azure REST Api is, obviously, the best way to go, but its the least convenient (there probably is a better word for this). I really like arm templates, they (basically) allow you to define REST api calls you want to do and allow to do some looping\parametrizing\etc. As arm templates are just a proxy for the rest api, they usually work really well.

Microsoft Graph API which version

When visiting the url - https://developer.microsoft.com/en-us/graph/graph-explorer
In the graph explorer it has a drop down 1.0 or beta. Is beta version 2.0 that Microsoft references in all of it's documentation?
https://learn.microsoft.com/en-us/azure/active-directory/develop/azure-ad-endpoint-comparison
This would be a great question answered because I do not see a drop down for v2.0
There are a couple of things to differentiate here. Azure active directory is the central identity service behind most of Microsoft SaaS services.
It provides two main things
a central identity database that stores users, groups and more. It can be accessed via the graph.windows.net API. Although it's recommended to use the Microsoft graph instead now.
authentication and authorization services. That live mostly under login.microsoftonline.com.
The later provides two versions of the service v1/v2 that implement different capabilities and protocols. (Second documentation link you're providing).
The Microsoft graph on the other hand is the central API for Microsoft 365 services.
The v1 is supported for production workloads, Microsoft is not going to break the API contract and keep the services behind it up and running.
The beta endpoint is where Microsoft makes new things available to get some feedback. Not meant for production workloads. When those new capabilities are ready for prime time, they'll show up under v1.
There's no v2 as of today for the graph. They'll publish a v2 once they need to publish breaking changes to existing capabilities to avoid breaking v1 and disrupting customers.

Microsoft Azure Storage Service APIs removal on december 2015

As a Microsoft Azure services client, I received earlier today the following mail: http://aka.ms/Qga48e.
I was wondering how I could migrate my Blob storage without services disruption to use the latest Azure File Storage service.
Anybody has already performed this action? Any feedbacks will be welcomed.
Thanks.
I don't think that it would be necessary. Besides Azure Blob Service and Azure File Service serve different purposes all together and the things you could do with blob service can't be done through file service.
As mentioned in the newsletter, what you should try to do is upgrade your client applications to make use of latest version of storage client library. If you're using an older version of library (< 2.0), there would be some pain in migration but migrating from 2.0 to 4.x (currently latest version) should be rather painless.
Next thing you should look into is the default service version of your storage account services. If you're using .Net storage client library, you can fetch it via GetServicePropertiesAsync method. You can update the default service version using SetServicePropertiesAsync method.
You may also find this link helpful about understanding storage service versioning: http://msdn.microsoft.com/en-us/library/azure/dd894041.aspx.
UPDATE: 13-DEC-2014
Azure Storage Team has published a blog post which talks more about this issue: http://blogs.msdn.com/b/windowsazurestorage/archive/2014/08/05/microsoft-azure-storage-service-version-removal.aspx.
The Storage Service REST API is not being removed. There are several versions of the API, from over the years. Older versions of the REST API (prior to the 2012-02-12 version) are being retired. But it's definitely not going away, and neither is the Azure Storage service.
Different versions of the SDKs (across the various language stacks) and command-line tools (PowerShell, CLI) may be using one of the older versions. If you're using the current versions of SDKs and command-line tools, this has no effect on you.
Consider how many versions there have been (all tracked here, and all listed in the page you linked to in your answer:
2014-02-14 (current)
2013-08-15
2012-02-12
2011-08-18
2009-09-19
2009-07-17
2009-04-14
If you're using an older version of an SDK or command-line tool, there's a chance that, in Dec. 2015, it won't work as expected anymore, as the underlying version will have been retired. So, essentially you have until December 2015 to update your Azure projects if needed.

Enterprise LIbrary and MS Azure Articles?

Just wondering if anyone has had any experience using MS Azure and the Enterprise Library? I can't seem to find any articles on this and hoping (really hoping) someone has some?
Enterprise Library is big... which part were you particularly interested in?
In general, you won't have any problems, since Azure now supports full trust. However, some parts won't really make sense... for example, you can't use Enterprise Logging to log to a "C:\MyLog.txt", since you won't be able to log anything to a "local drive" in the cloud. Perhaps you could write a logging provider to Azure table storage however, for example.
See this whitepaper "Using classic Enterprise Library 5.0 in Windows Azure".
Also, check out the specially designed Enterprise Library Integration Pack for Windows Azure which introduced 2 new application blocks - the Autoscaling Application Block ("Wasabi") and the Transient Fault Handling Application Block ("Topaz".

Resources