Coba lagi tindakan yang gagal di CodePipeline - AWS CodePipeline

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

Coba lagi tindakan yang gagal di CodePipeline

MasukAWS CodePipeline, tindakan adalah tugas yang dilakukan pada artefak dalam sebuah panggung. Kegagalan adalah tindakan dalam tahap yang tidak berhasil diselesaikan. Anda dapat menggunakan CLI untuk secara manual mencoba kembali tindakan gagal sebelum tahap selesai (sementara tindakan lain masih berlangsung). Jika tahap selesai dengan satu atau lebih tindakan gagal, tahap gagal, dan eksekusi pipa tidak beralih ke tahap berikutnya dalam pipa.

Anda dapat mencoba kembali tindakan gagal terbaru dalam tahap tanpa harus menjalankan pipeline lagi dari awal. Anda melakukan ini dengan mencoba kembali tahap yang berisi tindakan. Anda dapat mencoba kembali tahap segera setelah setiap tindakan gagal. Semua tindakan yang masih berlangsung melanjutkan pekerjaan mereka, dan tindakan yang gagal dipicu sekali lagi.

catatan

Dalam kasus berikut, Anda mungkin tidak akan dapat mencoba kembali tindakan:

  • Struktur pipa keseluruhan berubah setelah tindakan gagal.

  • Upaya coba lagi di panggung sudah berlangsung.

Dalam kasus di mana Anda telah mengedit struktur pipa Anda dan tindakan gagal tidak dapat dicoba lagi, pilihRilis perubahanuntuk memulai pipa secara manual.

Jika Anda menggunakan konsol untuk melihat pipa,Coba lagitombol muncul di panggung di mana tindakan gagal dapat dicoba kembali.

Jika Anda menggunakanAWSCLI, Anda dapat menggunakanget-pipeline-stateperintah untuk menentukan apakah tindakan telah gagal.

Coba lagi tindakan gagal (konsol)

  1. Masuk keAWS Management Consoledan buka konsol CodePipeline dihttp://console.aws.amazon.com/codesuite/codepipeline/home.

    Nama-nama semua jaringan pipa yang terkait denganAWSakun ditampilkan.

  2. MasukNama, pilih nama dari alur.

  3. Cari tahap dengan tindakan gagal, dan kemudian pilihCoba lagi.

    catatan

    Untuk mengidentifikasi tindakan mana di panggung dapat dicoba lagi, arahkan kursor keCoba lagitombol.

    Jika semua tindakan yang dicoba ulang di panggung selesai dengan sukses, pipa terus berjalan.

Coba lagi tindakan gagal (CLI)

Opsi 1: Coba lagi tindakan gagal menggunakan parameter untuk perintah CLI

Untuk menggunakanAWS CLIuntuk mencoba lagi tindakan gagal, Anda menjalankanretry-stage-executionperintah dengan parameter berikut:

--pipeline-name <value> --stage-name <value> --pipeline-execution-id <value> --retry-mode <value>
catatan

Satu-satunya nilai yang dapat Anda gunakan untukretry-modeadalahFAILED_ACTIONS.

  • Pada terminal (Linux, macOS, atau Unix) atau command prompt (Windows), jalankanretry-stage-executionperintah, seperti yang ditunjukkan dalam contoh berikut untuk alur bernamaMyPipeline.

    aws codepipeline retry-stage-execution --pipeline-name MyPipeline --stage-name Deploy --pipeline-execution-id b59babff-5f34-EXAMPLE --retry-mode FAILED_ACTIONS

    Output mengembalikan ID eksekusi:

    { "pipelineExecutionId": "b59babff-5f34-EXAMPLE" }

Opsi 2: Coba lagi tindakan gagal menggunakan file input JSON untuk perintah CLI

Anda juga dapat menjalankan perintah dengan file input JSON. Anda pertama kali membuat file JSON yang mengidentifikasi pipa, tahap yang berisi tindakan gagal, dan eksekusi pipa terbaru di tahap tersebut. Anda kemudian menjalankanretry-stage-executionperintah dengan--cli-input-jsonparameter. Untuk mengambil rincian yang Anda butuhkan untuk file JSON, itu paling mudah untuk menggunakanget-pipeline-stateperintah.

  1. Pada terminal (Linux, macOS, atau Unix) atau command prompt (Windows), jalankanget-pipeline-stateperintah pada pipa. Misalnya, untuk alur bernama MyFirstPipeline, Anda akan mengetik sesuatu yang serupa dengan yang berikut ini:

    aws codepipeline get-pipeline-state --name MyFirstPipeline

    Respon terhadap perintah termasuk informasi negara pipa untuk setiap tahap. Pada contoh berikut, respon menunjukkan bahwa satu atau lebih tindakan gagal dalam tahap Staging:

    { "updated": 1427245911.525, "created": 1427245911.525, "pipelineVersion": 1, "pipelineName": "MyFirstPipeline", "stageStates": [ { "actionStates": [...], "stageName": "Source", "latestExecution": { "pipelineExecutionId": "9811f7cb-7cf7-SUCCESS", "status": "Succeeded" } }, { "actionStates": [...], "stageName": "Staging", "latestExecution": { "pipelineExecutionId": "3137f7cb-7cf7-EXAMPLE", "status": "Failed" } } ] }
  2. Dalam editor teks biasa, membuat file di mana Anda akan merekam berikut, dalam format JSON:

    • Nama dari alur yang berisi tindakan yang gagal

    • Nama tahap yang berisi tindakan yang gagal

    • ID eksekusi pipa terbaru di panggung

    • Mode coba lagi. (Saat ini, satu-satunya nilai yang didukung adalah FAILED_ACTIONS)

    Untuk contoh MyFirstPipeline sebelumnya, file Anda akan terlihat seperti ini:

    { "pipelineName": "MyFirstPipeline", "stageName": "Staging", "pipelineExecutionId": "3137f7cb-7cf7-EXAMPLE", "retryMode": "FAILED_ACTIONS" }
  3. Simpan file dengan nama sepertiretry-failed-actions.json.

  4. Panggil file yang Anda buat saat menjalankanretry-stage-executionperintah. Misalnya:

    penting

    Pastikan untuk menyertakan file:// sebelum nama file. Hal ini diperlukan dalam perintah ini.

    aws codepipeline retry-stage-execution --cli-input-json file://retry-failed-actions.json
  5. Untuk melihat hasil upaya coba ulang, buka konsol CodePipeline dan pilih pipeline yang berisi tindakan yang gagal, atau gunakanget-pipeline-stateperintah lagi. Untuk informasi selengkapnya, lihat Lihat detail dan riwayat pipa di CodePipeline.