checkly-cli icon indicating copy to clipboard operation
checkly-cli copied to clipboard

feat: show fine-grained detail of changes in `npx checkly deploy --preview`

Open clample opened this issue 2 years ago • 11 comments

What problem does this feature solve?

This issue relates to https://github.com/checkly/checkly-cli/issues/526, but I think that it's a distinct issue and a bit harder to fix.

Currently npx checkly deploy --preview only shows high-level information about the changes: which checks/resources were created, updated, and deleted. It currently doesn't show which fields are changed. For example, it won't show that a check goes from activated: true to activated: false. It also doesn't detect the case where a check isn't changed at-all - the check will still show as updated in the diff.

It would be great if npx checkly deploy --preview gave more fine-grained detail:

$ npx checkly deploy --preview

Deleted:
    (Check) 'My Check'
    
Updated:
    (Check) 'Other Check'
        + activated: true ~> false
        + frequency: 10 ~> 15
        
Unchanged:
    (Check) 'another check'

How would you implement this feature?

Maybe jest-diff is useful. We can also look at terraform plan for inspiration on how the output should be formated.

clample avatar Feb 15 '23 12:02 clample