Search code examples
c#amazon-web-servicesasp.net-core-mvcamazon-elastic-beanstalkebextensions

How to package ebextentions to Elastic Beanstalk with a .NET Core app?


I've made a really simple .NET Core app and deployed it to Elastic Beanstalk under IIS/Windows platform. This is the layout of the bundle I am uploading to AWS.

foo.zip
    aws-windows-deployment-manifest.json
    site.zip
        foo.dll
        web.config
        Microsoft.AspNetCore.Hosting.dll
        ... other dependencies

This works great. But I want to change the IdleTimeout on the app pool to 0 (the default is 20). To that end, I created an .ebextentions folder, and added file 01_Idle_Timeout.config with the following content:

commands:
 set_idle_time:
  command: c:\windows\system32\inetsrv\appcmd.exe set config /section:applicationPools "/[name='DefaultAppPool'].processModel.idleTimeout:0.00:00:00"

I've tried placing this directory under foo.zip. I've tried placing it under site.zip. It just won't take effect.

I've remoted into the Elastic Beanstalk instance and ran the command manually to make sure that it works and it does. But somehow the .ebextentions won't process it.

Am I missing something simple?


Solution

  • It should be .ebextensions not .ebextentions (note the typo).

    http://docs.aws.amazon.com/toolkit-for-visual-studio/latest/user-guide/deployment-beanstalk-custom-netcore.html

    Also in your example, the .ebextensions folder should live under foo.zip, not site.zip.