Caching file antara alur kerja berjalan - Amazon CodeCatalyst

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Caching file antara alur kerja berjalan

Saat caching file diaktifkan, tindakan build dan test menyimpan file on-disk ke cache dan mengembalikannya dari cache tersebut dalam alur kerja berikutnya. Caching mengurangi latensi yang disebabkan oleh membangun atau mengunduh dependensi yang tidak berubah di antara proses. CodeCatalyst juga mendukung cache fallback, yang dapat digunakan untuk mengembalikan cache sebagian yang berisi beberapa dependensi yang diperlukan. Ini membantu mengurangi dampak latensi dari kehilangan cache.

catatan

Caching file hanya tersedia dengan tindakan CodeCatalyst pembuatan dan pengujian Amazon, dan hanya jika file tersebut dikonfigurasi untuk menggunakan jenis EC2komputasi.

Tentang file caching

File caching memungkinkan Anda untuk mengatur data Anda ke dalam beberapa cache, yang masing-masing direferensikan di bawah properti. FileCaching Setiap cache menyimpan direktori yang ditentukan oleh jalur tertentu. Direktori yang ditentukan akan dipulihkan dalam alur kerja masa depan berjalan. Berikut ini adalah contoh YAML cuplikan untuk caching dengan beberapa cache bernama dan. cacheKey1 cacheKey2

Actions: BuildMyNpmApp: Identifier: aws/build@v1 Inputs: Sources: - WorkflowSource Configuration: Steps: - Run: npm install - Run: npm run test Caching: FileCaching: cacheKey1: Path: file1.txt RestoreKeys: - restoreKey1 cacheKey2: Path: /root/repository RestoreKeys: - restoreKey2 - restoreKey3
catatan

CodeCatalyst menggunakan caching berlapis-lapis, yang terdiri dari cache lokal dan cache jarak jauh. Ketika armada yang disediakan atau mesin sesuai permintaan mengalami kehilangan cache pada cache lokal, dependensi akan dipulihkan dari cache jarak jauh. Akibatnya, beberapa tindakan berjalan mungkin mengalami latensi dari mengunduh cache jarak jauh.

CodeCatalyst menerapkan pembatasan akses cache untuk memastikan bahwa tindakan dalam satu alur kerja tidak dapat mengubah cache dari alur kerja yang berbeda. Ini melindungi setiap alur kerja dari orang lain yang mungkin mendorong data yang salah yang memengaruhi build atau penerapan. Pembatasan diberlakukan dengan cakupan cache yang mengisolasi cache ke setiap alur kerja dan pasangan cabang. Misalnya, workflow-A di cabang feature-A memiliki cache file yang berbeda dari workflow-A di cabang feature-B saudara.

Kesalahan cache terjadi ketika alur kerja mencari cache file tertentu dan tidak dapat menemukannya. Ini dapat terjadi karena beberapa alasan, seperti ketika cabang baru dibuat atau ketika cache baru direferensikan dan belum dibuat. Ini juga dapat terjadi ketika cache kedaluwarsa, yang secara default terjadi 14 hari setelah terakhir digunakan. Untuk mengurangi kesalahan cache dan meningkatkan tingkat klik cache, CodeCatalyst mendukung cache fallback. Cache fallback adalah cache alternatif dan memberikan kesempatan untuk memulihkan cache sebagian, yang bisa menjadi versi cache yang lebih lama. Cache dipulihkan dengan terlebih dahulu mencari kecocokan di bawah FileCaching untuk nama properti, dan jika tidak ditemukan, evaluasiRestoreKeys. Jika ada cache yang hilang untuk nama properti dan semuaRestoreKeys, alur kerja akan terus berjalan, karena caching adalah upaya terbaik dan tidak dijamin.

Membuat cache

Anda dapat menggunakan petunjuk berikut untuk menambahkan cache ke alur kerja Anda.

Visual
Untuk menambahkan cache menggunakan editor visual
  1. Buka CodeCatalyst konsol di https://codecatalyst.aws/.

  2. Pilih proyek Anda.

  3. Di panel navigasi, pilih CI/CD, lalu pilih Alur kerja.

  4. Pilih nama alur kerja Anda. Anda dapat memfilter berdasarkan repositori sumber atau nama cabang tempat alur kerja ditentukan, atau memfilter berdasarkan nama atau status alur kerja.

  5. Pilih Edit.

  6. Pilih Visual.

  7. Dalam diagram alur kerja, pilih tindakan di mana Anda ingin menambahkan cache Anda.

  8. Pilih Konfigurasi.

  9. Di bawah File caching - opsional, pilih Tambahkan cache dan masukkan informasi ke dalam bidang, sebagai berikut:

    Kunci

    Tentukan nama nama properti cache utama Anda. Nama properti cache harus unik dalam alur kerja Anda. Setiap tindakan dapat memiliki hingga lima entri. FileCaching

    Jalan

    Tentukan jalur terkait untuk cache Anda.

    Kembalikan kunci - opsional

    Tentukan kunci pemulihan yang akan digunakan sebagai fallback ketika properti cache utama tidak dapat ditemukan. Kembalikan nama kunci harus unik dalam alur kerja Anda. Setiap cache dapat memiliki hingga lima entri. RestoreKeys

  10. (Opsional) Pilih Validasi untuk memvalidasi YAML kode alur kerja sebelum melakukan.

  11. Pilih Komit, masukkan pesan komit, lalu pilih Komit lagi.

YAML
Untuk menambahkan cache menggunakan YAML editor
  1. Buka CodeCatalyst konsol di https://codecatalyst.aws/.

  2. Pilih proyek Anda.

  3. Di panel navigasi, pilih CI/CD, lalu pilih Alur kerja.

  4. Pilih nama alur kerja Anda. Anda dapat memfilter berdasarkan repositori sumber atau nama cabang tempat alur kerja ditentukan, atau memfilter berdasarkan nama atau status alur kerja.

  5. Pilih Edit.

  6. Pilih YAML.

  7. Dalam tindakan alur kerja, tambahkan kode yang mirip dengan berikut ini:

    action-name: Configuration: Steps: ... Caching: FileCaching: key-name: Path: file-path # # Specify any additional fallback caches # RestoreKeys: # - restore-key
  8. (Opsional) Pilih Validasi untuk memvalidasi YAML kode alur kerja sebelum melakukan.

  9. Pilih Komit, masukkan pesan komit, dan pilih Komit lagi.

Kendala caching file

Berikut ini adalah kendala untuk nama properti dan: RestoreKeys

  • Nama harus unik dalam alur kerja.

  • Nama terbatas pada karakter alfanumerik (A-Z, a-z, 0-9), tanda hubung (-), dan garis bawah (_).

  • Nama dapat memiliki hingga 180 karakter.

  • Setiap tindakan dapat memiliki hingga lima cache. FileCaching

  • Setiap cache dapat memiliki hingga lima entri. RestoreKeys

Berikut ini adalah kendala untuk jalur:

  • Tanda bintang (*) tidak diperbolehkan.

  • Jalur dapat memiliki hingga 255 karakter.