Memodernisasi aplikasi .NET

Modernisasi kode untuk .NET, yang didukung oleh model AI Generatif Gemini, adalah alat pembuatan kode dan modernisasi aplikasi. Alat ini membantu Anda memodernisasi aplikasi Microsoft .NET Framework yang bergantung pada Windows dengan memfaktorkan ulang aplikasi Anda ke kode .NET lintas platform.

Aplikasi .NET lintas platform, tidak seperti aplikasi .NET Framework, dapat berjalan di Linux, sehingga tidak memerlukan lisensi Windows dan memungkinkan kemampuan cloud-native termasuk containerisasi.

Dalam panduan ini, Anda akan memberikan peran IAM untuk project Trusted Cloud, membuat bucket Cloud Storage, membuat kunci Gemini API, dan menginstal ekstensi code-modernization-for-dotnet di komputer lokal untuk memfaktorkan ulang aplikasi .NET Framework ke kode .NET lintas platform.

Sebelum memulai

  1. Buat Akun Google, jika Anda belum memilikinya. Anda dapat menggunakan alamat email apa pun untuk membuat Akun Google, termasuk alamat email kantor Anda.
  2. Kirimkan formulir Permintaan Daftar yang Diizinkan: Code Modernization for .NET untuk bergabung ke daftar yang diizinkan. Anda tidak dapat melanjutkan langkah-langkah di halaman ini hingga permintaan ini disetujui.
  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. Instal VS Code, jika Anda belum melakukannya.
  7. Memberikan peran Identity and Access Management (IAM)

    Konsol

    1. Untuk memberikan peran IAM bagi Trusted Cloud project Anda, buka halaman IAM & Admin.

      Buka IAM & Admin

    2. Tambahkan peran IAM berikut:

    • Izin Pengguna

      • Storage Object User (roles/storage.objectUser)
      • (roles/cloudbuild.builds.editor) Cloud Build Editor
    • Akun Layanan Cloud Build

      • Akun Layanan Cloud Build (roles/cloudbuild.builds.builder)
      • Secret Manager Viewer (roles/secretmanager.viewer)
      • Logs Writer (roles/logging.logWriter)
      • Storage Object User (roles/storage.objectUser)

    gcloud

    Untuk menambahkan peran IAM yang diperlukan, jalankan perintah gcloud berikut:

    • Tetapkan peran Storage Object User (roles/storage.objectUser):

      gcloud projects add-iam-policy-binding PROJECT_ID \
      --member="user:USER_ID" \
      --role="roles/storage.objectUser"
      
    • Tetapkan peran Cloud Build Editor (roles/cloudbuild.builds.editor):

      gcloud projects add-iam-policy-binding PROJECT_ID \
      --member="user:USER_ID" \
      --role="roles/cloudbuild.builds.editor"
      
    • Tetapkan peran Akun Layanan Cloud Build (roles/cloudbuild.builds.builder):

      gcloud projects add-iam-policy-binding PROJECT_ID \
        --member="serviceAccount:SERVICE_ACCOUNT" \
        --role="roles/cloudbuild.builds.builder"
      
    • Tetapkan peran Secret Manager Accessor (roles/secretmanager.secretAccessor):

      gcloud projects add-iam-policy-binding PROJECT_ID \
        --member="serviceAccount:SERVICE_ACCOUNT" \
        --role="roles/secretmanager.secretAccessor"
      
    • Tetapkan peran Logs Writer (roles/logging.logWriter):

      gcloud projects add-iam-policy-binding PROJECT_ID \
        --member="serviceAccount:SERVICE_ACCOUNT" \
        --role="roles/logging.logWriter"
      
    • Tetapkan peran Storage Object User (roles/storage.objectUser):

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

    Membuat bucket Cloud Storage

    Untuk membuat bucket Cloud Storage, jalankan perintah berikut:

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

    Buat kunci Gemini API dan simpan di Secret Manager

    Untuk membuat kunci Gemini API, jalankan perintah berikut:

    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"
    

    Untuk menyimpan kunci Gemini API di Secret Manager, jalankan berikut ini:

    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"
    

    Menginstal dan mengonfigurasi ekstensi

    Setelah formulir Permintaan Daftar yang Diizinkan: Modernisasi Kode untuk .NET Anda disetujui, Anda akan menerima ekstensi sebagai file .VSIX. Untuk menginstal ekstensi ke komputer lokal, ikuti langkah-langkah berikut:

    1. Di VS Code, buka Extensions di panel aktivitas.

    2. Klik more_horiz Tampilan dan Tindakan Lainnya, lalu pilih Instal dari VSIX.

    3. Buka dan pilih file paket VSIX. Tindakan ini akan memulai penginstalan ekstensi Code-modernization-for-dotnet di VS Code di komputer lokal Anda.

    4. Setelah penginstalan selesai, mulai ulang VS Code.

    5. Perbarui setelan Code Modernization for .NET extension menjadi berikut:

      • Mode Ekstensi: LocalGit (experimental)
      • ID Project: PROJECT_ID
      • Nama Bucket: BUCKET_NAME
      • Region: us-central1
      • Secret Gemini API: gemini-api-key-secret-name
      • Akun Google: GOOGLE_ACCOUNT
      • Target Framework: .NET 8.0

      Ganti kode berikut:

      • PROJECT_ID: ID project Trusted Cloud Anda—misalnya, 1234567890.
      • BUCKET_NAME: Nama bucket Cloud Storage Anda.
      • GOOGLE_ACCOUNT: Akun Google Anda—misalnya, your_full_name@gmail.com.

    Picu build

    1. Untuk login ke Trusted Cloud, jalankan perintah berikut:

      gcloud auth login --update-adc
      
    2. Untuk memicu alur kerja modernisasi, di panel aktivitas, pilih Source Control, klik more_horiz More Actions untuk membuka menu konteks, lalu pilih Google Cloud: Modernize .NET code.

    Menambahkan project Anda ke daftar yang diizinkan

    Untuk memasukkan project Anda ke daftar yang diizinkan, kirimkan ID Akun Layanan Cloud Build Anda melalui email ke code-modernization-for-dotnet-discuss@google.com.

    Anda juga dapat menghubungi alamat email yang sama untuk mendapatkan dukungan, mengajukan pertanyaan, atau memberikan masukan.