Skip to content

Common DKCloudCommand Sequences

Common command sequences are shown below. Note that references to specific kitchens, recipes, variations, and file paths are omitted here for clarity of command sequencing.

Local to remote updates

For a single file

  1. Make a local change to a single recipe file, then view its status.
  2. View local-to-remote file differences with a local tool.
  3. Compile the file.
  4. Update changes to the remote file copy.
  5. Confirm that the remote changes have been applied.
[LOCAL CHANGE]
~ $ dk recipe-status
~ $ dk file-diff
~ $ dk file-compile
~ $ dk file update --message "Change message"
~ $ dk recipe-status

For multiple files

  1. Make local changes to multiple recipe files.
  2. View local-to-remote file differences.
  3. Compile the entire recipe.
  4. Validate the entire recipe.
  5. Batch update all recipe files to remote.
  6. Confirm that the remote changes have been applied.
[LOCAL CHANGE]
[LOCAL CHANGE]
~ $ dk recipe-status
~ $ dk file-diff
~ $ dk file-diff
~ $ dk recipe-compile
~ $ dk recipe-validate
~ $ dk recipe-update
~ $ dk recipe-status

Kitchen merges

Merge kitchens and resolve multiple file conflicts.

PARENT-TO-CHILD
~ $ dk kitchen-merge-preview --clean_previous_run
~ $ dk file-merge
~ $ dk file-resolve
~ $ dk kitchen-merge-preview
~ $ dk file-merge
~ $ dk file-resolve
~ $ dk kitchen-merge-preview
~ $ dk kitchen-merge --yes

CHILD-TO-PARENT
~ $ dk kitchen-merge-preview --clean_previous_run
~ $ dk file-merge
~ $ dk file-resolve
~ $ dk kitchen-merge-preview
~ $ dk file-merge
~ $ dk file-resolve
~ $ dk kitchen-merge-preview
~ $ dk kitchen-merge --yes

Run orders

  1. Prepare an order run by first verifying that local and remote recipe copies are equivalent.
  2. View the recipe's variations.
  3. Validate the recipe.
  4. Run the order.
  5. Monitor ongoing logs and test results.
  6. Stop the order run.
  7. Resume the order run.
  8. Watch all active order runs in a kitchen.
  9. View the order run information summary.
  10. Copy the order run metadata to a repository kitchen to provide test and timing benchmarking for future order runs.
~ $ dk recipe-status
~ $ dk recipe-variation-list
~ $ dk recipe-validate
~ $ dk order-run
~ $ dk dk orderrun-info --log
~ $ dk dk orderrun-info --test
~ $ dk orderrun-stop --yes
~ $ dk orderrun-resume --yes
~ $ dk dk active-serving-watcher
~ $ dk dk orderrun-info --summary
~ $ dk dk orderrun-copy

Set and activate schedules by command line

  1. Use the command line to access a recipe's variations.json file.
  2. In the schedule-setting-list object (formerly mesos-setting-list), add scheduling key-value pairs for each schedule.
  3. In the variation-list object, add the schedule names to the appropriate variations in your recipe.
  4. Save the file.
  5. To activate the schedule, run an order for the variation with an added parameter for the schedule name.
dk order-run -y -k myKitchen -p "{\"schedule\":\"daily_6_am_schedule\"}" myVariation

Troubleshooting: CLI Issues