Sha256: 79001273c8b94248982d08533cd6afb37c904861394f5a91ed1ffb7bd62b4192
Contents?: true
Size: 1.3 KB
Versions: 2
Compression:
Stored size: 1.3 KB
Contents
# encoding: utf-8 module Doggy class CLI::Push WARNING_MESSAGE = "You are about to force push all the objects. "\ "This will override changes in Datadog if they have not been sycned to the dog repository. "\ "Do you want to proceed?(Y/N)" def sync_changes changed_resources = Doggy::Model.changed_resources Doggy.ui.say "Syncing #{changed_resources.size} objects to Datadog..." changed_resources.each do |resource| if resource.is_deleted Doggy.ui.say "Deleting #{resource.path}, with id = #{resource.id}" resp = resource.destroy Dog.ui.error("Could not delete. Error: #{resp['errors']}. Skipping") if resp['errors'] else Doggy.ui.say "Saving #{resource.path}, with id = #{resource.id}" resource.ensure_read_only! resource.save end end Doggy::Model.emit_shipit_deployment end def push_all(ids) if ids.empty? && !Doggy.ui.yes?(WARNING_MESSAGE) Doggy.ui.say('Operation cancelled') return end Doggy::Model.all_local_resources.each do |resource| next if ids && !ids.include?(resource.id.to_s) Doggy.ui.say "Pushing #{resource.path}, with id #{resource.id}" resource.ensure_read_only! resource.save end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
doggy-2.0.32 | lib/doggy/cli/push.rb |
doggy-2.0.31 | lib/doggy/cli/push.rb |