Compartilhar via


.NET Aspire Community Toolkit Deno integração de hospedagem

Inclui:integração de hospedagem não Client integração

Nota

Essa integração faz parte do .NET.NET Aspire Community Toolkit e não é oficialmente suportada pela equipe de .NET.NET Aspire.

Neste artigo, você aprenderá sobre o pacote do Kit de Ferramentas da Comunidade .NET AspireDeno. O pacote de extensões traz os seguintes recursos:

  • Executando aplicativos Deno
  • Executando aplicativos Node.js por meio de tarefas Deno
  • Garantindo que os pacotes sejam instalados antes de executar o aplicativo por meio de Deno instalador

Integração de hospedagem

Para começar a usar as extensões do .NET Aspire do Kit de Ferramentas da Comunidade Deno, instale o pacote NuGet 📦 CommunityToolkit.AspireDeno.Hosting no projeto AppHost.

dotnet add package CommunityToolkit.Aspire.Hosting.Deno

Para obter mais informações, consulte dotnet add package ou Gerenciar dependências de pacotes em .NET applications.

Exemplo de uso

As seções a seguir detalham vários usos, desde a execução de aplicativos do Vite até o uso de gerenciadores de pacotes específicos.

Execute aplicativos Deno

Essa extensão de integração adiciona suporte para executar um aplicativo Deno definido em um script. Como Deno é seguro por padrão, os sinalizadores de permissão devem ser especificados no argumento permissionFlags de AddDenoApp.

var builder = DistributedApplication.CreateBuilder(args);

builder.AddDenoApp("oak-demo", "main.ts", permissionFlags: ["--allow-env", "--allow-net"])
    .WithHttpEndpoint(env: "PORT")
    .WithEndpoint();

builder.Build().Run();

O código anterior usa os switches totalmente qualificados. Como alternativa, você também pode usar o alias equivalente. Para obter mais informações, consulte Deno documentos: segurança e permissões.

Executar tarefas de Deno

Essa extensão de integração adiciona suporte para executar tarefas especificadas em um pacote .json ou deno.json.

var builder = DistributedApplication.CreateBuilder(args);

builder.AddDenoTask("vite-demo", taskName: "dev")
    .WithHttpEndpoint(env: "PORT")
    .WithEndpoint();

builder.Build().Run();

instalação do pacote Deno

Essa extensão de integração adiciona suporte para instalar dependências que utilizam deno install nos bastidores simplesmente usando WithDenoPackageInstallation.

Nota

Essa API só funciona quando um arquivo de deno.lock está presente.

var builder = DistributedApplication.CreateBuilder(args);

builder.AddDenoTask("vite-demo", taskName: "dev")
    .WithDenoPackageInstallation()
    .WithHttpEndpoint(env: "PORT")
    .WithEndpoint();

Consulte também