Skip to content

Bundle templates infrastructure

Naren Soni edited this page Mar 20, 2020 · 1 revision

These templates are consumed by the development tools via Extension bundles. They are either downloaded as part of bundle or are fetched directly from the CDN. The flow chart shows how the template artifacts flow through the build and deployment infrastructure via extension bundles

bundle

Bundle Template release

  1. Template devOps pipeline generates zip file that contains the templates for the related extension bundle.
  2. The template version needs to be manually updated in the extension bundle build project.
  3. Template devOps release deploys the templates to the cdn.
  4. The extension bundle build process fetches the templates and includes it in the extension bundle as a part of the bundle release.

Core Tools:

Core tools utilize runtime API to manage extension bundles and related templates.

  1. The function host api's used by core tools download the latest bundle automatically when a new matching the host configuration is available.

  2. Core tools uses the template from the extension bundle instead of the pre-packaged templates when bundles is configured

     

VS Code:

Like Core tools, VS Code supports both dotnet (pre-compiled) and non-dotnet templates. The steps below explain how the templates are used by VS Code.  

  1. VS Code download the templates from latest extension bundle automatically when a new extension bundle matching the host configuration is available.
  2. VS Code uses the template from the extension bundle instead of the pre-packaged templates when bundles is configured.  

Portal:

Portal only support non-precompiled and C# script templates. It gets all of the required templates through ARM APIs. It does not support extension installation anymore. For v2/v3 portal only supports template via extension bundles as supporting templates outside of extension bundles would require extension installation.

  1. When portal calls the ARM API's to request the templates for a particular function app, If extension bundle is configured for the function app, Geo Master would fetches the templates from the CDN based on host configuration and several other configuration settings from the functions.