Modernizar seu aplicativo .NET

A modernização de código para .NET, com tecnologia dos modelos de IA generativa do Gemini, é uma ferramenta de geração de código e modernização de aplicativos. Ele ajuda a modernizar seus aplicativos do Microsoft .NET Framework dependentes do Windows refatorando os aplicativos para código .NET multiplataforma.

Os aplicativos .NET multiplataforma, ao contrário dos aplicativos .NET Framework, podem ser executados no Linux, eliminando a necessidade de licenças do Windows e ativando recursos nativos da nuvem, incluindo a conteinerização.

Neste guia, você vai conceder papéis do IAM ao seu projeto Trusted Cloud, criar um bucket do Cloud Storage, criar uma chave da API Gemini e instalar a extensão code-modernization-for-dotnet na sua máquina local para refatorar o aplicativo .NET Framework em código .NET multiplataforma.

Antes de começar

  1. Crie uma Conta do Google, caso ainda não tenha uma. É possível usar qualquer endereço de e-mail para criar uma Conta do Google, incluindo seu endereço de e-mail do trabalho.
  2. Envie o formulário de solicitação de lista de permissões da modernização de código para .NET. Não é possível seguir as etapas desta página até que a solicitação seja aprovada.
  3. In the Trusted Cloud console, on the project selector page, select or create a Trusted Cloud project.

    Go to project selector

  4. Verify that billing is enabled for your Trusted Cloud project.

  5. Enable the Cloud Build, Secret Manager, Cloud Storage JSON API, Generative Language API, Cloud Logging, and Compute Engine APIs.

    Enable the APIs

  6. Instale o VS Code, caso ainda não tenha feito isso.
  7. Conceder papéis do Identity and Access Management (IAM)

    Console

    1. Para conceder os papéis do IAM ao seu projeto Trusted Cloud , acesse a página IAM e administrador.

      Acessar IAM e administrador

    2. Adicione os seguintes papéis do IAM:

    • Permissões do usuário

      • Usuário do objeto de armazenamento (roles/storage.objectUser)
      • Editor do Cloud Build (roles/cloudbuild.builds.editor)
    • Conta de serviço do Cloud Build

      • Conta de serviço do Cloud Build (roles/cloudbuild.builds.builder)
      • Leitor do Secret Manager (roles/secretmanager.viewer)
      • Gravador de registros (roles/logging.logWriter)
      • Usuário do objeto de armazenamento (roles/storage.objectUser)

    gcloud

    Para adicionar os papéis do IAM necessários, execute os seguintes comandos gcloud:

    • Atribua o papel Usuário de objetos do Storage (roles/storage.objectUser):

      gcloud projects add-iam-policy-binding PROJECT_ID \
      --member="user:USER_ID" \
      --role="roles/storage.objectUser"
      
    • Atribua o papel de editor do Cloud Build (roles/cloudbuild.builds.editor):

      gcloud projects add-iam-policy-binding PROJECT_ID \
      --member="user:USER_ID" \
      --role="roles/cloudbuild.builds.editor"
      
    • Atribua o papel da conta de serviço do Cloud Build (roles/cloudbuild.builds.builder):

      gcloud projects add-iam-policy-binding PROJECT_ID \
        --member="serviceAccount:SERVICE_ACCOUNT" \
        --role="roles/cloudbuild.builds.builder"
      
    • Atribua o papel Acessador do Secret Manager (roles/secretmanager.secretAccessor):

      gcloud projects add-iam-policy-binding PROJECT_ID \
        --member="serviceAccount:SERVICE_ACCOUNT" \
        --role="roles/secretmanager.secretAccessor"
      
    • Atribua o papel Gravador de registros (roles/logging.logWriter):

      gcloud projects add-iam-policy-binding PROJECT_ID \
        --member="serviceAccount:SERVICE_ACCOUNT" \
        --role="roles/logging.logWriter"
      
    • Atribua o papel Usuário de objetos do Storage (roles/storage.objectUser):

      gcloud projects add-iam-policy-binding PROJECT_ID \
        --member="serviceAccount:SERVICE_ACCOUNT" \
        --role="roles/storage.objectUser"
      

    Criar um bucket do Cloud Storage

    Para criar um bucket do Cloud Storage, execute o seguinte:

    gcloud storage buckets create gs://BUCKET_NAME \
    --project=PROJECT_ID
    

    Criar chave da API Gemini e salvar no Secret Manager

    Para criar uma chave de API Gemini, execute o seguinte:

    gcloud services api-keys create --project=PROJECT_ID \
      --display-name="API Key for .Net Modernization" \
      --api-target="service=generativelanguage.googleapis.com" \
      --key-id="gemini-api-key"
    

    Para salvar a chave de API do Gemini no Secret Manager, execute o seguinte:

    echo -n "(gcloud services api-keys get-key-string gemini-api-key \
    --project=PROJECT_ID \
    --format="value(keyString)")" | \
    
    gcloud secrets create "gemini-api-key" \
    --project=PROJECT_ID \
    --data-file=- \
    --replication-policy="automatic"
    

    Instalar e configurar a extensão

    Depois que o formulário de solicitação de lista de permissões da Modernização de código para .NET for aprovado, você vai receber a extensão como um arquivo .VSIX. Para instalar a extensão na sua máquina local, siga estas etapas:

    1. No VS Code, navegue até Extensões na barra de atividades.

    2. Clique em more_horiz Visualizações e mais ações e selecione Instalar pelo VSIX.

    3. Navegue até o arquivo de pacote VSIX e selecione-o. Isso inicia a instalação da extensão Code-modernization-for-dotnet no VS Code na sua máquina local.

    4. Quando a instalação for concluída, reinicie o VS Code.

    5. Atualize as configurações de Code Modernization for .NET extension para:

      • Modo de extensão: LocalGit (experimental)
      • Project ID: PROJECT_ID
      • Nome do bucket: BUCKET_NAME
      • Região: us-central1
      • API Secret do Gemini: gemini-api-key-secret-name
      • Conta do Google: GOOGLE_ACCOUNT
      • Framework de destino: .NET 8.0

      Substitua:

      • PROJECT_ID: o ID do seu projeto Trusted Cloud, por exemplo, 1234567890.
      • BUCKET_NAME: o nome do bucket do Cloud Storage.
      • GOOGLE_ACCOUNT: sua Conta do Google, por exemplo, your_full_name@gmail.com.

    Acionar a compilação

    1. Para fazer login no Trusted Cloud, execute o seguinte comando:

      gcloud auth login --update-adc
      
    2. Para acionar o fluxo de trabalho de modernização, na barra de atividades, selecione Controle de origem, clique em more_horiz Mais ações para abrir o menu de contexto e selecione Google Cloud: modernizar o código .NET.

    Adicionar seu projeto à lista de permissões

    Para incluir seu projeto na lista de permissões, envie por e-mail o ID da conta de serviço do Cloud Build para code-modernization-for-dotnet-discuss@google.com.

    Você também pode entrar em contato com o mesmo endereço de e-mail para receber suporte, fazer perguntas ou enviar feedback.