Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature Request: AppService Environments (ASE) Support #438

Closed
mjyeaney opened this issue Oct 18, 2017 · 34 comments · Fixed by #5508
Closed

Feature Request: AppService Environments (ASE) Support #438

mjyeaney opened this issue Oct 18, 2017 · 34 comments · Fixed by #5508

Comments

@mjyeaney
Copy link

Not an issue; rather, looking for support of ASE deployments. Any pointers / timelines on status would be awesome.

@rcarun rcarun added the M2 label Oct 27, 2017
@tombuildsstuff tombuildsstuff changed the title AppService Environments (ASE) Support Feature Request: AppService Environments (ASE) Support Oct 31, 2017
@tombuildsstuff tombuildsstuff self-assigned this Feb 21, 2018
@tombuildsstuff tombuildsstuff added this to the 1.1.4 milestone Feb 21, 2018
@tombuildsstuff
Copy link
Contributor

hey @mjyeaney

Thanks for opening this issue - apologies for the delayed response here!

I've been taking a look into how we'd support App Service Environments this afternoon and have opened #869 which is a WIP PR adding support for App Service Environments into Terraform. In order to validate the Schema is correct (and not missing any commonly used fields), would it be possible to find out which features of App Service Environments you're using?

Thanks!

@mjyeaney
Copy link
Author

mjyeaney commented Mar 1, 2018

No problem - the basic customer scenarios for deploying ASE's are essentially the following:

Definitely appreciate the effort here - let me know if you need additional clarification.

Thanks!

@tombuildsstuff tombuildsstuff modified the milestones: 1.3.0, 1.4.0 Mar 14, 2018
@tombuildsstuff tombuildsstuff removed the M2 label Mar 15, 2018
@tombuildsstuff tombuildsstuff modified the milestones: 1.4.0, Future Apr 3, 2018
@achandmsft achandmsft added the M3 label Apr 26, 2018
@achandmsft
Copy link
Contributor

@tombuildsstuff does this still have an upstream dependency?

@pietro
Copy link
Contributor

pietro commented Jul 3, 2018

@achandmsft #917 is IMHO an upstream dependency.

@tombuildsstuff tombuildsstuff removed the M3 label Jul 9, 2018
@tombuildsstuff tombuildsstuff removed their assignment Jul 11, 2018
@rifaterdemsahin
Copy link

what is the state on this one ?

@tombuildsstuff
Copy link
Contributor

Unfortunately the App Service Environment API is still broken - as such this is on hold until that's fixed (which is why
#869 is currently closed).

@tombuildsstuff tombuildsstuff removed this from the Future milestone Jul 27, 2018
@pietro
Copy link
Contributor

pietro commented Aug 30, 2018

@achandmsft @tombuildsstuff I filled Azure/azure-rest-api-specs#3648 and created Azure/azure-rest-api-specs#3774 so hopefully this can get fixed at the Azure API swagger and then pushed to the go SDK which help with the progress on this issue.

@tombuildsstuff
Copy link
Contributor

@pietro thanks, unfortunately this blocking issue at this time is where App Service Environment doesn't finish provisioning (we stopped checking after 30 hours) for both an ASEv1 and an ASEv2 - which we couldn't find a way around - there's a thread tracking that (but I don't recall if it's on the Rest API Specs repo or through an internal channel); let me push for an update :)

@MMollyy
Copy link

MMollyy commented Oct 24, 2018

Hi @tombuildsstuff , did you get an update on that push?
I'm quite curious on the status as our company has put ASEv2 on the roadmap as a possibility for landing SaaS applications. :)

@liamfoneill
Copy link

liamfoneill commented Jan 24, 2019 via email

@pricoppd
Copy link

I use ARM templates and Terraform to deploy ASE, but if you a have a pipeline that starts with an ASE deployment the rest of the steps will fail (deploying on top - app service plans, webapps, function apps etc) because of the timeout.
i can add a step to wait ~40 minutes to make sure the ASE is deployed but i don't really like this...

@geglne
Copy link

geglne commented Feb 28, 2019

Any updates on this? I have deployed 6-10 of these over the last 3-4 months. As we all know, this takes a long time and therefore I can't use Terraform to deploy these :(.

I have also provided feedback to MSFT.

@KevinDMack
Copy link

ARM is a path forward but am working with several groups on this that would prefer it be included within Terraform proper. The problem with the ARM Templates is that the graph is not incorporated into the deployment which complicates the end deployment.

@logachev
Copy link
Contributor

@tombuildsstuff I saw your issues filed on the github for ASE provisioning.

I was trying to run your PR to investigate it a little bit more. I found multiple problems with existing REST APIs and I filed bugs for the ASE team using internal feedback channel, also I sent issue details to the PM, responsible for this service.

Create issue

Azure/azure-rest-api-specs#4915 -- this issue is not a provisioning issue, it is a REST API spec problem. The issue is that spec lists error codes as an expected responses without error details, so go SDK gets '400 Bad Request', but keeps retrying.

See logachev/azure-rest-api-specs#1 for the proposed fix I shared with ASE team.

When this issue is resolved, ASE provisioning via the Terraform works (with a few minor changes in the old PR, I can share it later). (Tested with custom generated golang SDK)

Delete issue

Delete API has 2 issues:

  • Delete request operation status URI lives under ASE resource and it leads to the racing between SDK gets 200 or 404 (because ASE resource is removed). If SDK gets 200 everything is fine, if it gets 404 it has a long running retry logic that fails after some time.
  • Delete operation returns success before all resources are actually removed. They're no longer available or visible via the portal, but you can't remove VNET because subnet is still in use.

I will post updates when I have them, but it is outside of my control :(

@ctooley21
Copy link

any update?

@logachev
Copy link
Contributor

As far as I know, Product Group was targeting July to release fixes.

@nexxai
Copy link
Contributor

nexxai commented Jul 11, 2019

@logachev Just wondering if the fixes are still on track for release this month?

@logachev
Copy link
Contributor

@nexxai sorry for the late response. I sent an email to the PG to ask for an ETA.

Around 10 days ago I was asked to help PG to verify if their fixes unblock Terraform ASE provisioning. I will try to find some time next week to update @tombuildsstuff old ASE branch with latest SDKs and check if problem goes away.

@ctooley21
Copy link

any update?

@logachev
Copy link
Contributor

@ctooley21 sorry, I didn't get any updates yet :(

@omar
Copy link

omar commented Aug 26, 2019

@logachev any luck with an update? Hate to keep pestering you, but really looking forward to this feature!

@logachev
Copy link
Contributor

Got an update from PG this morning: they will roll out fixes in the next few updates, asked to ping them for an updated status in a month.

I will try to find some time to update my old branch with ASE resource to get it ready for tests.

@omar @ctooley21 @nexxai @tombuildsstuff fyi

@egorchabala
Copy link

So what's the current status? Still nothing from PG?

@logachev
Copy link
Contributor

@egorchabala, sorry for the long delay.. I still didn't hear anything back from the PG :(

From what I can see, there was a new swagger for ASE released 7 days ago (https://github.com/Azure/azure-rest-api-specs/blob/master/specification/web/resource-manager/Microsoft.Web/stable/2019-08-01/AppServiceEnvironments.json). I haven't had a chance to try it yet, but I don't see issues I saw before.

Waiting for the Azure golang SDK publishing new version based on this swagger.

@logachev
Copy link
Contributor

@tombuildsstuff Azure GO sdk released v34.2.0 which includes latest ASE SDK. Do you have an ETA when the plugin can be updated to this version?

@katbyte
Copy link
Collaborator

katbyte commented Nov 7, 2019

@logachev, we are now on v35 of the sdk in master 🙂

@logachev
Copy link
Contributor

Finally have some good news.
I have a rough implementation working for ASE v2 (not sure what is actually the status of ASE v1 and if it is needed at all).
I didn't test a lot of edge cases, but some defaults are working.

If you can share sample configurations you're interested in I can give it a try.
It takes forever to Create, so will try to send a PR in a few days.

@schlbra
Copy link

schlbra commented Jan 3, 2020

Any updates on the feature? This would be extremely helpful to our organization.

@collinstevens
Copy link

@logachev here are some basic sample configuration templates we use for our ARM templates right now, https://github.com/Azure/azure-quickstart-templates/tree/master/201-web-app-asev2-ilb-create/ and https://github.com/Azure/azure-quickstart-templates/tree/master/201-web-app-asev2-create/. I would much rather be able to manage these through Terraform.

@ghost
Copy link

ghost commented Feb 24, 2020

This has been released in version 2.0.0 of the provider. Please see the Terraform documentation on provider versioning or reach out if you need any assistance upgrading. As an example:

provider "azurerm" {
    version = "~> 2.0.0"
}
# ... other configuration ...

@ghost
Copy link

ghost commented Mar 28, 2020

I'm going to lock this issue because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.

If you feel this issue should be reopened, we encourage creating a new issue linking back to this one for added context. If you feel I made an error 🤖 🙉 , please reach out to my human friends 👉 [email protected]. Thanks!

@ghost ghost locked and limited conversation to collaborators Mar 28, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.