Class: GandiCli::Cli
- Inherits:
-
Thor
- Object
- Thor
- GandiCli::Cli
- Defined in:
- lib/gandi_cli/cli.rb
Instance Method Summary collapse
- #activate(zone_name, version) ⇒ Object
- #add_record(zone_name, type, ttl, name, value) ⇒ Object
- #copy_version(zone_name, version = 0) ⇒ Object
- #delete_record(zone_name, version, record_id) ⇒ Object
- #list ⇒ Object
- #records(zone_name, version) ⇒ Object
- #versions(zone_name) ⇒ Object
Instance Method Details
#activate(zone_name, version) ⇒ Object
27 28 29 30 |
# File 'lib/gandi_cli/cli.rb', line 27 def activate(zone_name, version) zone = GandiCli::Zone.find(client, zone_name) zone.find_version(version).activate! end |
#add_record(zone_name, type, ttl, name, value) ⇒ Object
12 13 14 15 16 |
# File 'lib/gandi_cli/cli.rb', line 12 def add_record(zone_name, type, ttl, name, value) zone = GandiCli::Zone.find(client, zone_name) version = editable_version(zone) version.add_record(type, ttl.to_i, name, value) end |
#copy_version(zone_name, version = 0) ⇒ Object
55 56 57 58 59 |
# File 'lib/gandi_cli/cli.rb', line 55 def copy_version(zone_name, version = 0) zone = GandiCli::Zone.find(client, zone_name) new_version = zone.find_version(version.to_i).copy puts "New version is #{new_version.id}" end |
#delete_record(zone_name, version, record_id) ⇒ Object
33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/gandi_cli/cli.rb', line 33 def delete_record(zone_name, version, record_id) zone = GandiCli::Zone.find(client, zone_name) zone_record = zone.find_version(version).records.find{ |record| record.id == record_id.to_i } if zone_record puts "Deleting #{format_record(zone_record)}" zone_record.delete else puts "Record not found" end end |
#list ⇒ Object
4 5 6 7 8 9 |
# File 'lib/gandi_cli/cli.rb', line 4 def list puts "%-30s %10s %s" % %w[name zone_id current_version] GandiCli::Zone.list(client).each do |zone| puts "%-30s %10s %15s" % [zone.name, zone.id, zone.version.id] end end |
#records(zone_name, version) ⇒ Object
19 20 21 22 23 24 |
# File 'lib/gandi_cli/cli.rb', line 19 def records(zone_name, version) zone = GandiCli::Zone.find(client, zone_name) zone.find_version(version).records.each do |record| puts "%s %s %s %s %s" % [record.id, record.type, record.ttl, record.name, record.value] end end |