Latihan 1: Infrastructure as Code — DevOps

Latihan 1 dari materi Infrastructure as Code di DevOps — praktek dengan editor kode interaktif, test case otomatis, dan hint terpandu. Langsung jalan di browser.

Lengkapi function planChanges(currentState, desiredState). Kedua parameter berbentuk object: key = nama resource, value = object atributnya. Kembalikan array perubahan.

  1. Resource ada di desiredState tapi gak di currentState: { action: "create", resource, config }, dengan config = atribut dari desiredState.
  2. Resource ada di keduanya tapi atributnya beda: { action: "update", resource, changes }, dengan changes = atribut yang berbeda saja, berisi nilai dari desiredState.
  3. Resource ada di currentState tapi gak di desiredState: { action: "destroy", resource }.
  4. Resource yang identik dilewati.
  5. Urutkan hasilnya: semua create, lalu update, lalu destroy. Urutan key tiap object persis seperti di atas.

Yang dinilai nilai kembaliannya:

Hasilnya dibandingkan sebagai teks JSON, jadi urutan item dan urutan key ikut dicek. Baris console.log di kode awal biarkan saja.

Hint