fog-google 0.1.3 → 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.editorconfig +11 -0
- data/.gitignore +1 -0
- data/.hound.yml +2 -0
- data/.rubocop.yml +225 -5
- data/.travis.yml +13 -11
- data/CONTRIBUTORS.md +1 -0
- data/Gemfile +1 -1
- data/README.md +31 -16
- data/Rakefile +15 -39
- data/examples/backend_services.rb +12 -11
- data/examples/bootstrap.rb +11 -1
- data/examples/{create.rb → create_instance.rb} +20 -11
- data/examples/dns/project.rb +2 -3
- data/examples/dns/zones.rb +21 -21
- data/examples/get_list_images.rb +31 -15
- data/examples/get_list_snapshots.rb +20 -10
- data/examples/image_create.rb +5 -5
- data/examples/l7_load_balance.rb +56 -58
- data/examples/load-balance.rb +22 -23
- data/examples/metadata.rb +17 -9
- data/examples/monitoring/metric_descriptors.rb +19 -6
- data/examples/monitoring/timeseries_collection.rb +23 -11
- data/examples/monitoring/timeseries_descriptors.rb +23 -11
- data/examples/network.rb +25 -29
- data/examples/precreated_client.rb +3 -6
- data/examples/sql/flags.rb +2 -2
- data/examples/sql/instances.rb +18 -18
- data/examples/sql/operations.rb +9 -9
- data/examples/sql/ssl_certs.rb +13 -13
- data/examples/sql/tiers.rb +2 -2
- data/examples/storage.rb +37 -0
- data/examples/storage_json.rb +37 -0
- data/fog-google.gemspec +24 -21
- data/lib/fog/bin/google.rb +34 -32
- data/lib/fog/{google/compute.rb → compute/google.rb} +207 -151
- data/lib/fog/{google/models/compute → compute/google/models}/address.rb +24 -28
- data/lib/fog/{google/models/compute → compute/google/models}/addresses.rb +10 -14
- data/lib/fog/{google/models/compute → compute/google/models}/backend_service.rb +28 -34
- data/lib/fog/{google/models/compute → compute/google/models}/backend_services.rb +2 -5
- data/lib/fog/{google/models/compute → compute/google/models}/disk.rb +35 -39
- data/lib/fog/{google/models/compute → compute/google/models}/disk_type.rb +4 -6
- data/lib/fog/{google/models/compute → compute/google/models}/disk_types.rb +7 -10
- data/lib/fog/{google/models/compute → compute/google/models}/disks.rb +9 -12
- data/lib/fog/{google/models/compute → compute/google/models}/firewall.rb +10 -14
- data/lib/fog/{google/models/compute → compute/google/models}/firewalls.rb +1 -4
- data/lib/fog/compute/google/models/flavor.rb +31 -0
- data/lib/fog/{google/models/compute → compute/google/models}/flavors.rb +2 -5
- data/lib/fog/{google/models/compute → compute/google/models}/forwarding_rule.rb +24 -28
- data/lib/fog/{google/models/compute → compute/google/models}/forwarding_rules.rb +8 -11
- data/lib/fog/compute/google/models/global_forwarding_rule.rb +82 -0
- data/lib/fog/{google/models/compute → compute/google/models}/global_forwarding_rules.rb +2 -5
- data/lib/fog/compute/google/models/http_health_check.rb +80 -0
- data/lib/fog/{google/models/compute → compute/google/models}/http_health_checks.rb +2 -5
- data/lib/fog/{google/models/compute → compute/google/models}/image.rb +18 -22
- data/lib/fog/{google/models/compute → compute/google/models}/images.rb +24 -17
- data/lib/fog/{google/models/compute → compute/google/models}/instance_group.rb +5 -8
- data/lib/fog/{google/models/compute → compute/google/models}/instance_groups.rb +10 -13
- data/lib/fog/{google/models/compute → compute/google/models}/network.rb +9 -13
- data/lib/fog/{google/models/compute → compute/google/models}/networks.rb +1 -4
- data/lib/fog/{google/models/compute → compute/google/models}/operation.rb +16 -18
- data/lib/fog/{google/models/compute → compute/google/models}/operations.rb +8 -11
- data/lib/fog/{google/models/compute → compute/google/models}/project.rb +5 -7
- data/lib/fog/{google/models/compute → compute/google/models}/projects.rb +0 -3
- data/lib/fog/{google/models/compute → compute/google/models}/region.rb +5 -7
- data/lib/fog/{google/models/compute → compute/google/models}/regions.rb +1 -4
- data/lib/fog/compute/google/models/resource_view.rb +108 -0
- data/lib/fog/compute/google/models/resource_views.rb +54 -0
- data/lib/fog/{google/models/compute → compute/google/models}/route.rb +12 -16
- data/lib/fog/{google/models/compute → compute/google/models}/routes.rb +1 -4
- data/lib/fog/{google/models/compute → compute/google/models}/server.rb +81 -92
- data/lib/fog/{google/models/compute → compute/google/models}/servers.rb +13 -16
- data/lib/fog/compute/google/models/snapshot.rb +44 -0
- data/lib/fog/{google/models/compute → compute/google/models}/snapshots.rb +1 -4
- data/lib/fog/compute/google/models/subnetwork.rb +49 -0
- data/lib/fog/compute/google/models/subnetworks.rb +29 -0
- data/lib/fog/{google/models/compute → compute/google/models}/target_http_proxies.rb +2 -5
- data/lib/fog/{google/models/compute → compute/google/models}/target_http_proxy.rb +18 -22
- data/lib/fog/{google/models/compute → compute/google/models}/target_instance.rb +23 -28
- data/lib/fog/{google/models/compute → compute/google/models}/target_instances.rb +9 -12
- data/lib/fog/{google/models/compute → compute/google/models}/target_pool.rb +24 -28
- data/lib/fog/{google/models/compute → compute/google/models}/target_pools.rb +6 -9
- data/lib/fog/{google/models/compute → compute/google/models}/url_map.rb +32 -36
- data/lib/fog/{google/models/compute → compute/google/models}/url_maps.rb +1 -4
- data/lib/fog/compute/google/models/zone.rb +21 -0
- data/lib/fog/{google/models/compute → compute/google/models}/zones.rb +0 -3
- data/lib/fog/{google/requests/compute → compute/google/requests}/add_backend_service_backends.rb +5 -5
- data/lib/fog/{google/requests/compute → compute/google/requests}/add_instance_group_instance.rb +4 -4
- data/lib/fog/compute/google/requests/add_region_view_resources.rb +27 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/add_server_access_config.rb +8 -8
- data/lib/fog/{google/requests/compute → compute/google/requests}/add_target_pool_health_checks.rb +6 -6
- data/lib/fog/{google/requests/compute → compute/google/requests}/add_target_pool_instances.rb +6 -6
- data/lib/fog/{google/requests/compute → compute/google/requests}/add_url_map_host_rules.rb +6 -6
- data/lib/fog/{google/requests/compute → compute/google/requests}/add_url_map_path_matchers.rb +7 -7
- data/lib/fog/compute/google/requests/add_zone_view_resources.rb +27 -0
- data/lib/fog/compute/google/requests/attach_disk.rb +34 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_address.rb +4 -4
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_backend_service.rb +8 -8
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_disk.rb +9 -11
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_firewall.rb +3 -3
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_forwarding_rule.rb +8 -8
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_global_forwarding_rule.rb +12 -12
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_global_operation.rb +3 -3
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_http_health_check.rb +7 -7
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_image.rb +7 -7
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_instance_group.rb +4 -4
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_network.rb +3 -3
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_region_operation.rb +6 -6
- data/lib/fog/compute/google/requests/delete_region_view.rb +24 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_route.rb +3 -3
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_server.rb +15 -17
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_server_access_config.rb +6 -6
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_snapshot.rb +3 -3
- data/lib/fog/compute/google/requests/delete_subnetwork.rb +49 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_target_http_proxy.rb +7 -7
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_target_instance.rb +9 -11
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_target_pool.rb +8 -8
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_url_map.rb +7 -7
- data/lib/fog/{google/requests/compute → compute/google/requests}/delete_zone_operation.rb +5 -7
- data/lib/fog/compute/google/requests/delete_zone_view.rb +24 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/detach_disk.rb +5 -5
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_address.rb +4 -4
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_backend_service.rb +5 -7
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_backend_service_health.rb +6 -6
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_backend_services.rb +6 -6
- data/lib/fog/compute/google/requests/get_disk.rb +46 -0
- data/lib/fog/compute/google/requests/get_disk_type.rb +40 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_firewall.rb +3 -3
- data/lib/fog/compute/google/requests/get_forwarding_rule.rb +44 -0
- data/lib/fog/compute/google/requests/get_global_forwarding_rule.rb +30 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_global_operation.rb +8 -8
- data/lib/fog/compute/google/requests/get_http_health_check.rb +37 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_image.rb +4 -4
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_instance_group.rb +5 -5
- data/lib/fog/compute/google/requests/get_machine_type.rb +41 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_network.rb +3 -3
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_project.rb +2 -2
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_region.rb +9 -9
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_region_operation.rb +11 -11
- data/lib/fog/compute/google/requests/get_region_view.rb +24 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_route.rb +3 -3
- data/lib/fog/compute/google/requests/get_server.rb +71 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_server_serial_port_output.rb +4 -4
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_snapshot.rb +5 -7
- data/lib/fog/compute/google/requests/get_subnetwork.rb +45 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_target_http_proxy.rb +4 -6
- data/lib/fog/compute/google/requests/get_target_instance.rb +28 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_target_pool.rb +6 -6
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_target_pool_health.rb +7 -7
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_url_map.rb +4 -6
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_zone.rb +8 -8
- data/lib/fog/{google/requests/compute → compute/google/requests}/get_zone_operation.rb +10 -12
- data/lib/fog/compute/google/requests/get_zone_view.rb +24 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/insert_address.rb +5 -5
- data/lib/fog/{google/requests/compute → compute/google/requests}/insert_backend_service.rb +17 -17
- data/lib/fog/{google/requests/compute → compute/google/requests}/insert_disk.rb +26 -30
- data/lib/fog/{google/requests/compute → compute/google/requests}/insert_firewall.rb +4 -4
- data/lib/fog/{google/requests/compute → compute/google/requests}/insert_forwarding_rule.rb +13 -13
- data/lib/fog/{google/requests/compute → compute/google/requests}/insert_global_forwarding_rule.rb +13 -13
- data/lib/fog/{google/requests/compute → compute/google/requests}/insert_http_health_check.rb +11 -11
- data/lib/fog/{google/requests/compute → compute/google/requests}/insert_image.rb +14 -14
- data/lib/fog/{google/requests/compute → compute/google/requests}/insert_instance_group.rb +6 -6
- data/lib/fog/{google/requests/compute → compute/google/requests}/insert_network.rb +6 -6
- data/lib/fog/compute/google/requests/insert_region_view.rb +25 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/insert_route.rb +11 -11
- data/lib/fog/{google/requests/compute → compute/google/requests}/insert_server.rb +57 -57
- data/lib/fog/{google/requests/compute → compute/google/requests}/insert_snapshot.rb +8 -8
- data/lib/fog/compute/google/requests/insert_subnetwork.rb +75 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/insert_target_http_proxy.rb +9 -9
- data/lib/fog/{google/requests/compute → compute/google/requests}/insert_target_instance.rb +11 -11
- data/lib/fog/{google/requests/compute → compute/google/requests}/insert_target_pool.rb +11 -11
- data/lib/fog/{google/requests/compute → compute/google/requests}/insert_url_map.rb +9 -9
- data/lib/fog/compute/google/requests/insert_zone_view.rb +26 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/list_addresses.rb +3 -3
- data/lib/fog/{google/requests/compute → compute/google/requests}/list_aggregated_addresses.rb +3 -3
- data/lib/fog/compute/google/requests/list_aggregated_disk_types.rb +38 -0
- data/lib/fog/compute/google/requests/list_aggregated_disks.rb +37 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/list_aggregated_instance_groups.rb +3 -3
- data/lib/fog/{google/requests/compute → compute/google/requests}/list_aggregated_machine_types.rb +1 -1
- data/lib/fog/compute/google/requests/list_aggregated_servers.rb +37 -0
- data/lib/fog/compute/google/requests/list_aggregated_subnetworks.rb +34 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/list_aggregated_target_instances.rb +10 -13
- data/lib/fog/compute/google/requests/list_backend_services.rb +27 -0
- data/lib/fog/compute/google/requests/list_disk_types.rb +44 -0
- data/lib/fog/compute/google/requests/list_disks.rb +27 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/list_firewalls.rb +1 -1
- data/lib/fog/compute/google/requests/list_forwarding_rules.rb +27 -0
- data/lib/fog/compute/google/requests/list_global_forwarding_rules.rb +28 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/list_global_operations.rb +1 -1
- data/lib/fog/compute/google/requests/list_http_health_checks.rb +27 -0
- data/lib/fog/compute/google/requests/list_images.rb +27 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/list_instance_group_instances.rb +4 -4
- data/lib/fog/{google/requests/compute → compute/google/requests}/list_instance_groups.rb +3 -3
- data/lib/fog/{google/requests/compute → compute/google/requests}/list_machine_types.rb +6 -8
- data/lib/fog/{google/requests/compute → compute/google/requests}/list_networks.rb +1 -1
- data/lib/fog/{google/requests/compute → compute/google/requests}/list_region_operations.rb +3 -3
- data/lib/fog/compute/google/requests/list_region_view_resources.rb +24 -0
- data/lib/fog/compute/google/requests/list_region_views.rb +23 -0
- data/lib/fog/compute/google/requests/list_regions.rb +83 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/list_routes.rb +2 -2
- data/lib/fog/compute/google/requests/list_servers.rb +29 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/list_snapshots.rb +3 -3
- data/lib/fog/compute/google/requests/list_subnetworks.rb +35 -0
- data/lib/fog/compute/google/requests/list_target_http_proxies.rb +27 -0
- data/lib/fog/compute/google/requests/list_target_instances.rb +28 -0
- data/lib/fog/compute/google/requests/list_target_pools.rb +27 -0
- data/lib/fog/compute/google/requests/list_url_maps.rb +27 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/list_zone_operations.rb +3 -3
- data/lib/fog/compute/google/requests/list_zone_view_resources.rb +24 -0
- data/lib/fog/compute/google/requests/list_zone_views.rb +23 -0
- data/lib/fog/compute/google/requests/list_zones.rb +26 -0
- data/lib/fog/{google/requests/compute → compute/google/requests}/remove_instance_group_instance.rb +4 -4
- data/lib/fog/{google/requests/compute → compute/google/requests}/remove_target_pool_health_checks.rb +6 -6
- data/lib/fog/{google/requests/compute → compute/google/requests}/remove_target_pool_instance.rb +6 -6
- data/lib/fog/{google/requests/compute → compute/google/requests}/remove_target_pool_instances.rb +6 -6
- data/lib/fog/{google/requests/compute → compute/google/requests}/reset_server.rb +4 -4
- data/lib/fog/{google/requests/compute → compute/google/requests}/set_common_instance_metadata.rb +3 -3
- data/lib/fog/{google/requests/compute → compute/google/requests}/set_forwarding_rule_target.rb +6 -6
- data/lib/fog/{google/requests/compute → compute/google/requests}/set_global_forwarding_rule_target.rb +6 -6
- data/lib/fog/{google/requests/compute → compute/google/requests}/set_metadata.rb +8 -8
- data/lib/fog/{google/requests/compute → compute/google/requests}/set_server_disk_auto_delete.rb +6 -6
- data/lib/fog/{google/requests/compute → compute/google/requests}/set_server_scheduling.rb +7 -7
- data/lib/fog/{google/requests/compute → compute/google/requests}/set_tags.rb +6 -6
- data/lib/fog/{google/requests/compute → compute/google/requests}/set_target_http_proxy_url_map.rb +5 -5
- data/lib/fog/{google/requests/compute → compute/google/requests}/start_server.rb +4 -4
- data/lib/fog/{google/requests/compute → compute/google/requests}/stop_server.rb +4 -4
- data/lib/fog/{google/requests/compute → compute/google/requests}/update_url_map.rb +8 -8
- data/lib/fog/{google/requests/compute → compute/google/requests}/validate_url_map.rb +5 -5
- data/lib/fog/{google/dns.rb → dns/google.rb} +9 -9
- data/lib/fog/{google/models/dns → dns/google/models}/change.rb +5 -7
- data/lib/fog/{google/models/dns → dns/google/models}/changes.rb +1 -4
- data/lib/fog/{google/models/dns → dns/google/models}/project.rb +6 -8
- data/lib/fog/{google/models/dns → dns/google/models}/projects.rb +0 -3
- data/lib/fog/{google/models/dns → dns/google/models}/record.rb +17 -27
- data/lib/fog/{google/models/dns → dns/google/models}/records.rb +2 -5
- data/lib/fog/{google/models/dns → dns/google/models}/zone.rb +6 -8
- data/lib/fog/{google/models/dns → dns/google/models}/zones.rb +1 -4
- data/lib/fog/{google/requests/dns → dns/google/requests}/create_change.rb +17 -17
- data/lib/fog/dns/google/requests/create_managed_zone.rb +82 -0
- data/lib/fog/{google/requests/dns → dns/google/requests}/delete_managed_zone.rb +6 -6
- data/lib/fog/{google/requests/dns → dns/google/requests}/get_change.rb +7 -7
- data/lib/fog/{google/requests/dns → dns/google/requests}/get_managed_zone.rb +4 -4
- data/lib/fog/{google/requests/dns → dns/google/requests}/get_project.rb +12 -12
- data/lib/fog/{google/requests/dns → dns/google/requests}/list_changes.rb +7 -7
- data/lib/fog/{google/requests/dns → dns/google/requests}/list_managed_zones.rb +5 -5
- data/lib/fog/{google/requests/dns → dns/google/requests}/list_resource_record_sets.rb +11 -11
- data/lib/fog/google.rb +78 -71
- data/lib/fog/google/models/monitoring/metric_descriptor.rb +3 -3
- data/lib/fog/google/models/monitoring/metric_descriptors.rb +3 -3
- data/lib/fog/google/models/monitoring/timeseries.rb +2 -2
- data/lib/fog/google/models/monitoring/timeseries_collection.rb +3 -3
- data/lib/fog/google/models/monitoring/timeseries_descriptor.rb +1 -1
- data/lib/fog/google/models/monitoring/timeseries_descriptors.rb +3 -3
- data/lib/fog/google/models/sql/backup_run.rb +8 -8
- data/lib/fog/google/models/sql/backup_runs.rb +3 -3
- data/lib/fog/google/models/sql/flag.rb +5 -5
- data/lib/fog/google/models/sql/flags.rb +3 -3
- data/lib/fog/google/models/sql/instance.rb +54 -68
- data/lib/fog/google/models/sql/instances.rb +4 -4
- data/lib/fog/google/models/sql/operation.rb +15 -15
- data/lib/fog/google/models/sql/operations.rb +5 -5
- data/lib/fog/google/models/sql/ssl_cert.rb +17 -19
- data/lib/fog/google/models/sql/ssl_certs.rb +5 -5
- data/lib/fog/google/models/sql/tier.rb +3 -3
- data/lib/fog/google/models/sql/tiers.rb +3 -3
- data/lib/fog/google/monitoring.rb +8 -8
- data/lib/fog/google/requests/monitoring/list_metric_descriptors.rb +131 -131
- data/lib/fog/google/requests/monitoring/list_timeseries.rb +32 -32
- data/lib/fog/google/requests/monitoring/list_timeseries_descriptors.rb +50 -50
- data/lib/fog/google/requests/sql/clone_instance.rb +41 -41
- data/lib/fog/google/requests/sql/delete_instance.rb +26 -26
- data/lib/fog/google/requests/sql/delete_ssl_cert.rb +27 -27
- data/lib/fog/google/requests/sql/export_instance.rb +22 -22
- data/lib/fog/google/requests/sql/get_backup_run.rb +5 -5
- data/lib/fog/google/requests/sql/get_instance.rb +12 -12
- data/lib/fog/google/requests/sql/get_operation.rb +21 -21
- data/lib/fog/google/requests/sql/get_ssl_cert.rb +21 -21
- data/lib/fog/google/requests/sql/import_instance.rb +21 -21
- data/lib/fog/google/requests/sql/insert_instance.rb +76 -78
- data/lib/fog/google/requests/sql/insert_ssl_cert.rb +33 -33
- data/lib/fog/google/requests/sql/list_backup_runs.rb +4 -4
- data/lib/fog/google/requests/sql/list_flags.rb +84 -84
- data/lib/fog/google/requests/sql/list_instances.rb +3 -3
- data/lib/fog/google/requests/sql/list_operations.rb +13 -13
- data/lib/fog/google/requests/sql/list_ssl_certs.rb +13 -13
- data/lib/fog/google/requests/sql/list_tiers.rb +39 -39
- data/lib/fog/google/requests/sql/reset_instance_ssl_config.rb +16 -16
- data/lib/fog/google/requests/sql/restart_instance.rb +16 -16
- data/lib/fog/google/requests/sql/restore_instance_backup.rb +5 -5
- data/lib/fog/google/requests/sql/set_instance_root_password.rb +20 -20
- data/lib/fog/google/requests/sql/update_instance.rb +52 -52
- data/lib/fog/google/sql.rb +7 -7
- data/lib/fog/google/version.rb +1 -1
- data/lib/fog/parsers/storage/google.rb +15 -0
- data/lib/fog/{google/parsers/storage → parsers/storage/google}/access_control_list.rb +13 -13
- data/lib/fog/{google/parsers/storage → parsers/storage/google}/copy_object.rb +3 -3
- data/lib/fog/parsers/storage/google/get_bucket.rb +58 -0
- data/lib/fog/parsers/storage/google/get_bucket_logging.rb +36 -0
- data/lib/fog/parsers/storage/google/get_bucket_object_versions.rb +84 -0
- data/lib/fog/{google/parsers/storage → parsers/storage/google}/get_bucket_versioning.rb +3 -3
- data/lib/fog/{google/parsers/storage → parsers/storage/google}/get_request_payment.rb +1 -1
- data/lib/fog/{google/parsers/storage → parsers/storage/google}/get_service.rb +8 -8
- data/lib/fog/storage/google.rb +20 -0
- data/lib/fog/storage/google_json.rb +146 -0
- data/lib/fog/storage/google_json/models/directories.rb +26 -0
- data/lib/fog/storage/google_json/models/directory.rb +65 -0
- data/lib/fog/storage/google_json/models/file.rb +148 -0
- data/lib/fog/storage/google_json/models/files.rb +89 -0
- data/lib/fog/storage/google_json/requests/copy_object.rb +66 -0
- data/lib/fog/storage/google_json/requests/delete_bucket.rb +42 -0
- data/lib/fog/{google/requests/storage → storage/google_json/requests}/delete_object.rb +12 -12
- data/lib/fog/storage/google_json/requests/get_bucket.rb +86 -0
- data/lib/fog/{google/requests/storage → storage/google_json/requests}/get_bucket_acl.rb +12 -17
- data/lib/fog/storage/google_json/requests/get_object.rb +98 -0
- data/lib/fog/storage/google_json/requests/get_object_acl.rb +59 -0
- data/lib/fog/storage/google_json/requests/get_object_http_url.rb +40 -0
- data/lib/fog/storage/google_json/requests/get_object_https_url.rb +41 -0
- data/lib/fog/storage/google_json/requests/get_object_torrent.rb +13 -0
- data/lib/fog/storage/google_json/requests/get_object_url.rb +22 -0
- data/lib/fog/storage/google_json/requests/get_service.rb +54 -0
- data/lib/fog/storage/google_json/requests/head_object.rb +54 -0
- data/lib/fog/storage/google_json/requests/put_bucket.rb +68 -0
- data/lib/fog/storage/google_json/requests/put_bucket_acl.rb +34 -0
- data/lib/fog/storage/google_json/requests/put_object.rb +118 -0
- data/lib/fog/storage/google_json/requests/put_object_acl.rb +31 -0
- data/lib/fog/storage/google_json/requests/put_object_url.rb +45 -0
- data/lib/fog/{google/storage.rb → storage/google_xml.rb} +49 -53
- data/lib/fog/storage/google_xml/models/directories.rb +34 -0
- data/lib/fog/{google/models/storage → storage/google_xml/models}/directory.rb +13 -21
- data/lib/fog/{google/models/storage → storage/google_xml/models}/file.rb +34 -46
- data/lib/fog/{google/models/storage → storage/google_xml/models}/files.rb +21 -30
- data/lib/fog/{google/requests/storage → storage/google_xml/requests}/copy_object.rb +15 -21
- data/lib/fog/{google/requests/storage → storage/google_xml/requests}/delete_bucket.rb +10 -12
- data/lib/fog/storage/google_xml/requests/delete_object.rb +44 -0
- data/lib/fog/{google/requests/storage → storage/google_xml/requests}/get_bucket.rb +33 -43
- data/lib/fog/storage/google_xml/requests/get_bucket_acl.rb +53 -0
- data/lib/fog/{google/requests/storage → storage/google_xml/requests}/get_object.rb +25 -37
- data/lib/fog/{google/requests/storage → storage/google_xml/requests}/get_object_acl.rb +16 -24
- data/lib/fog/{google/requests/storage → storage/google_xml/requests}/get_object_http_url.rb +8 -12
- data/lib/fog/{google/requests/storage → storage/google_xml/requests}/get_object_https_url.rb +8 -12
- data/lib/fog/{google/requests/storage → storage/google_xml/requests}/get_object_torrent.rb +10 -16
- data/lib/fog/{google/requests/storage → storage/google_xml/requests}/get_object_url.rb +1 -1
- data/lib/fog/{google/requests/storage → storage/google_xml/requests}/get_service.rb +13 -17
- data/lib/fog/{google/requests/storage → storage/google_xml/requests}/head_object.rb +14 -20
- data/lib/fog/storage/google_xml/requests/put_bucket.rb +71 -0
- data/lib/fog/{google/requests/storage → storage/google_xml/requests}/put_bucket_acl.rb +12 -14
- data/lib/fog/{google/requests/storage → storage/google_xml/requests}/put_object.rb +23 -27
- data/lib/fog/{google/requests/storage → storage/google_xml/requests}/put_object_acl.rb +12 -14
- data/lib/fog/storage/google_xml/requests/put_object_url.rb +42 -0
- data/tasks/bundler.rake +3 -0
- data/tasks/console.rake +12 -0
- data/tasks/lint.rake +3 -0
- data/tasks/smoke.rake +15 -0
- data/tasks/test.rake +13 -0
- data/test/helpers/integration_test_helper.rb +3 -3
- data/test/helpers/test_collection.rb +1 -1
- data/test/helpers/test_helper.rb +8 -8
- data/test/integration/compute/test_servers.rb +1 -1
- data/test/integration/factories/backend_services_factory.rb +2 -2
- data/test/integration/factories/collection_factory.rb +4 -4
- data/test/integration/factories/disks_factory.rb +3 -3
- data/test/integration/factories/forwarding_rules_factory.rb +3 -4
- data/test/integration/factories/global_forwarding_rules_factory.rb +2 -2
- data/test/integration/factories/http_health_checks_factory.rb +1 -1
- data/test/integration/factories/images_factory.rb +2 -2
- data/test/integration/factories/servers_factory.rb +4 -4
- data/test/integration/factories/target_http_proxies_factory.rb +2 -2
- data/test/integration/factories/target_instances_factory.rb +3 -3
- data/test/integration/factories/target_pools_factory.rb +4 -4
- data/test/integration/factories/url_maps_factory.rb +2 -2
- data/test/integration/storage/test_buckets.rb +56 -0
- data/test/integration/storage/test_directories.rb +60 -0
- data/test/integration/storage/test_files.rb +132 -0
- data/test/integration/storage/test_objects.rb +111 -0
- data/test/integration/test_authentication.rb +14 -10
- data/tests/helper.rb +40 -42
- data/tests/helpers/collection_helper.rb +26 -37
- data/tests/helpers/compute/flavors_helper.rb +4 -8
- data/tests/helpers/compute/server_helper.rb +1 -5
- data/tests/helpers/compute/servers_helper.rb +0 -2
- data/tests/helpers/formats_helper.rb +12 -12
- data/tests/helpers/formats_helper_tests.rb +43 -47
- data/tests/helpers/mock_helper.rb +6 -8
- data/tests/helpers/model_helper.rb +6 -10
- data/tests/helpers/schema_validator_tests.rb +41 -47
- data/tests/helpers/succeeds_helper.rb +1 -1
- data/tests/models/dns/change_tests.rb +8 -10
- data/tests/models/dns/changes_tests.rb +8 -12
- data/tests/models/dns/projects_tests.rb +2 -5
- data/tests/models/dns/record_tests.rb +9 -10
- data/tests/models/dns/records_tests.rb +9 -13
- data/tests/models/dns/zone_tests.rb +6 -6
- data/tests/models/dns/zones_tests.rb +5 -5
- data/tests/models/monitoring/metric_descriptors_tests.rb +2 -5
- data/tests/models/monitoring/timeseries_collection_tests.rb +3 -6
- data/tests/models/monitoring/timeseries_descriptors_tests.rb +3 -6
- data/tests/models/sql/flags_tests.rb +2 -5
- data/tests/models/sql/instance_tests.rb +4 -7
- data/tests/models/sql/instances_tests.rb +4 -9
- data/tests/models/sql/operation_tests.rb +3 -6
- data/tests/models/sql/operations_tests.rb +4 -9
- data/tests/models/sql/ssl_cert_tests.rb +3 -6
- data/tests/models/sql/ssl_certs_tests.rb +4 -9
- data/tests/models/sql/tiers_tests.rb +2 -5
- data/tests/requests/compute/backend_service_tests.rb +43 -47
- data/tests/requests/compute/disk_tests.rb +42 -46
- data/tests/requests/compute/disk_type_tests.rb +18 -21
- data/tests/requests/compute/firewall_tests.rb +42 -45
- data/tests/requests/compute/forwarding_rules_tests.rb +44 -48
- data/tests/requests/compute/global_forwarding_rules_tests.rb +44 -48
- data/tests/requests/compute/http_health_checks_tests.rb +44 -48
- data/tests/requests/compute/image_tests.rb +41 -45
- data/tests/requests/compute/network_tests.rb +38 -41
- data/tests/requests/compute/operation_tests.rb +2 -3
- data/tests/requests/compute/region_tests.rb +18 -18
- data/tests/requests/compute/server_tests.rb +45 -47
- data/tests/requests/compute/target_http_proxies_test.rb +39 -43
- data/tests/requests/compute/target_instances_tests.rb +43 -47
- data/tests/requests/compute/target_pools_tests.rb +43 -47
- data/tests/requests/compute/url_maps_tests.rb +42 -46
- data/tests/requests/compute/zone_tests.rb +15 -19
- data/tests/requests/dns/change_tests.rb +18 -22
- data/tests/requests/dns/managed_zone_tests.rb +27 -30
- data/tests/requests/dns/project_tests.rb +13 -16
- data/tests/requests/dns/record_tests.rb +15 -18
- data/tests/requests/monitoring/metric_descriptor_tests.rb +9 -12
- data/tests/requests/monitoring/timeseries_collection_tests.rb +9 -12
- data/tests/requests/monitoring/timeseries_descriptor_tests.rb +10 -13
- data/tests/requests/sql/flag_tests.rb +11 -14
- data/tests/requests/sql/instance_tests.rb +36 -39
- data/tests/requests/sql/operation_tests.rb +17 -20
- data/tests/requests/sql/ssl_cert_tests.rb +21 -24
- data/tests/requests/sql/tier_tests.rb +9 -12
- data/tests/requests/storage/bucket_tests.rb +30 -36
- data/tests/requests/storage/object_tests.rb +21 -27
- metadata +309 -235
- data/examples/eric-fail.rb +0 -36
- data/examples/image_all.rb +0 -6
- data/examples/launch_micro_instance.rb +0 -29
- data/gemfiles/Gemfile.2.0.0+ +0 -6
- data/gemfiles/Gemfile.2.0.0- +0 -10
- data/lib/fog/google/models/compute/flavor.rb +0 -33
- data/lib/fog/google/models/compute/global_forwarding_rule.rb +0 -86
- data/lib/fog/google/models/compute/http_health_check.rb +0 -84
- data/lib/fog/google/models/compute/snapshot.rb +0 -48
- data/lib/fog/google/models/compute/zone.rb +0 -23
- data/lib/fog/google/models/storage/directories.rb +0 -39
- data/lib/fog/google/parsers/storage/get_bucket.rb +0 -58
- data/lib/fog/google/parsers/storage/get_bucket_logging.rb +0 -36
- data/lib/fog/google/parsers/storage/get_bucket_object_versions.rb +0 -84
- data/lib/fog/google/requests/compute/attach_disk.rb +0 -34
- data/lib/fog/google/requests/compute/get_disk.rb +0 -52
- data/lib/fog/google/requests/compute/get_disk_type.rb +0 -42
- data/lib/fog/google/requests/compute/get_forwarding_rule.rb +0 -46
- data/lib/fog/google/requests/compute/get_global_forwarding_rule.rb +0 -32
- data/lib/fog/google/requests/compute/get_http_health_check.rb +0 -39
- data/lib/fog/google/requests/compute/get_machine_type.rb +0 -43
- data/lib/fog/google/requests/compute/get_server.rb +0 -75
- data/lib/fog/google/requests/compute/get_target_instance.rb +0 -32
- data/lib/fog/google/requests/compute/list_aggregated_disk_types.rb +0 -40
- data/lib/fog/google/requests/compute/list_aggregated_disks.rb +0 -40
- data/lib/fog/google/requests/compute/list_aggregated_servers.rb +0 -40
- data/lib/fog/google/requests/compute/list_backend_services.rb +0 -29
- data/lib/fog/google/requests/compute/list_disk_types.rb +0 -46
- data/lib/fog/google/requests/compute/list_disks.rb +0 -29
- data/lib/fog/google/requests/compute/list_forwarding_rules.rb +0 -29
- data/lib/fog/google/requests/compute/list_global_forwarding_rules.rb +0 -30
- data/lib/fog/google/requests/compute/list_http_health_checks.rb +0 -29
- data/lib/fog/google/requests/compute/list_images.rb +0 -29
- data/lib/fog/google/requests/compute/list_regions.rb +0 -85
- data/lib/fog/google/requests/compute/list_servers.rb +0 -31
- data/lib/fog/google/requests/compute/list_target_http_proxies.rb +0 -30
- data/lib/fog/google/requests/compute/list_target_instances.rb +0 -30
- data/lib/fog/google/requests/compute/list_target_pools.rb +0 -29
- data/lib/fog/google/requests/compute/list_url_maps.rb +0 -29
- data/lib/fog/google/requests/compute/list_zones.rb +0 -28
- data/lib/fog/google/requests/dns/create_managed_zone.rb +0 -82
- data/lib/fog/google/requests/storage/put_bucket.rb +0 -71
- data/lib/fog/google/requests/storage/put_object_url.rb +0 -50
data/examples/eric-fail.rb
DELETED
@@ -1,36 +0,0 @@
|
|
1
|
-
def test
|
2
|
-
connection = Fog::Compute.new({ :provider => "Google" })
|
3
|
-
|
4
|
-
name = "fog-smoke-test-#{Time.now.to_i}"
|
5
|
-
zone = "us-central1-a"
|
6
|
-
|
7
|
-
disk = connection.disks.create({
|
8
|
-
:name => name,
|
9
|
-
:size_gb => 10,
|
10
|
-
:zone_name => zone,
|
11
|
-
:source_image => 'debian-7-wheezy-v20140318',
|
12
|
-
})
|
13
|
-
|
14
|
-
disk.wait_for { disk.ready? }
|
15
|
-
|
16
|
-
scopes = [
|
17
|
-
"https://www.googleapis.com/auth/compute",
|
18
|
-
"devstorage.full_control",
|
19
|
-
"userinfo.email"
|
20
|
-
]
|
21
|
-
|
22
|
-
server = connection.servers.create({
|
23
|
-
:name => name,
|
24
|
-
:disks => [disk],
|
25
|
-
:machine_type => "n1-standard-1",
|
26
|
-
:zone_name => zone,
|
27
|
-
:metadata => {'foo' => 'bar'},
|
28
|
-
:tags => ["t1", "t2", "t3"],
|
29
|
-
:servce_accounts => scopes
|
30
|
-
})
|
31
|
-
sleep(90)
|
32
|
-
|
33
|
-
raise "Could not reload created server." unless server.reload
|
34
|
-
raise "Could not create sshable server." unless server.ssh("whoami")
|
35
|
-
raise "Could not delete server." unless server.destroy
|
36
|
-
end
|
data/examples/image_all.rb
DELETED
@@ -1,29 +0,0 @@
|
|
1
|
-
def test
|
2
|
-
connection = Fog::Compute.new({ :provider => "Google" })
|
3
|
-
time = Time.now.utc.to_i
|
4
|
-
disk = connection.disks.create({
|
5
|
-
:name => "foggydisk-#{time}",
|
6
|
-
:size_gb => 10,
|
7
|
-
:zone_name => 'us-central1-a',
|
8
|
-
:source_image => 'centos-6-v20131120',
|
9
|
-
})
|
10
|
-
|
11
|
-
disk.wait_for { disk.ready? }
|
12
|
-
params = {
|
13
|
-
:name => "fog-smoke-test-#{Time.now.to_i}",
|
14
|
-
:machine_type => "f1-micro",
|
15
|
-
:zone_name => "us-central1-a",
|
16
|
-
:disks => [ disk.get_as_boot_disk(true) ],
|
17
|
-
:username => ENV['USER']
|
18
|
-
}
|
19
|
-
|
20
|
-
server = connection.servers.bootstrap params
|
21
|
-
|
22
|
-
begin
|
23
|
-
raise "Could not bootstrap sshable server." unless server.ssh("whoami")
|
24
|
-
raise "Could not delete server." unless server.destroy
|
25
|
-
raise "Could not delete disk." unless disk.destroy
|
26
|
-
rescue Exception => e
|
27
|
-
p e.message
|
28
|
-
end
|
29
|
-
end
|
data/gemfiles/Gemfile.2.0.0+
DELETED
data/gemfiles/Gemfile.2.0.0-
DELETED
@@ -1,33 +0,0 @@
|
|
1
|
-
require 'fog/core/model'
|
2
|
-
|
3
|
-
module Fog
|
4
|
-
module Compute
|
5
|
-
class Google
|
6
|
-
class Flavor < Fog::Model
|
7
|
-
identity :name
|
8
|
-
|
9
|
-
attribute :kind
|
10
|
-
attribute :id
|
11
|
-
attribute :creation_timestamp, :aliases => 'creationTimestamp'
|
12
|
-
attribute :deprecated
|
13
|
-
attribute :description
|
14
|
-
attribute :guest_cpus, :aliases => 'guestCpus'
|
15
|
-
attribute :image_space_gb, :aliases => 'imageSpaceGb'
|
16
|
-
attribute :maximum_persistent_disks, :aliases => 'maximumPersistentDisks'
|
17
|
-
attribute :maximum_persistent_disks_size, :aliases => 'maximumPersistentDisksSizeGb'
|
18
|
-
attribute :memory_mb, :aliases => 'memoryMb'
|
19
|
-
attribute :scratch_disks, aliases => 'scratchDisks'
|
20
|
-
attribute :self_link, :aliases => 'selfLink'
|
21
|
-
attribute :zone
|
22
|
-
|
23
|
-
def reload
|
24
|
-
requires :identity, :zone
|
25
|
-
|
26
|
-
data = collection.get(identity, self.zone)
|
27
|
-
merge_attributes(data.attributes)
|
28
|
-
self
|
29
|
-
end
|
30
|
-
end
|
31
|
-
end
|
32
|
-
end
|
33
|
-
end
|
@@ -1,86 +0,0 @@
|
|
1
|
-
require 'fog/core/model'
|
2
|
-
|
3
|
-
module Fog
|
4
|
-
module Compute
|
5
|
-
class Google
|
6
|
-
class GlobalForwardingRule < Fog::Model
|
7
|
-
identity :name
|
8
|
-
|
9
|
-
attribute :kind, :aliases => 'kind'
|
10
|
-
attribute :self_link, :aliases => 'selfLink'
|
11
|
-
attribute :id, :aliases => 'id'
|
12
|
-
attribute :creation_timestamp, :aliases => 'creationTimestamp'
|
13
|
-
attribute :description, :aliases => 'description'
|
14
|
-
attribute :region, :aliases => 'region' # should always be 'global'
|
15
|
-
attribute :ip_address, :aliases => 'IPAddress' # string
|
16
|
-
attribute :ip_protocol, :aliases => 'IPProtocol' # string
|
17
|
-
attribute :port_range, :aliases => 'portRange' # string
|
18
|
-
attribute :target, :aliases => 'target' # string, URL of global target http proxy
|
19
|
-
|
20
|
-
def save
|
21
|
-
requires :name
|
22
|
-
|
23
|
-
options = {
|
24
|
-
'description' => description,
|
25
|
-
'region' => 'global',
|
26
|
-
'IPAddress' => ip_address,
|
27
|
-
'IPProtocol' => ip_protocol || "TCP",
|
28
|
-
'portRange' => port_range || 80,
|
29
|
-
'target' => target
|
30
|
-
}
|
31
|
-
|
32
|
-
data = service.insert_global_forwarding_rule(name, options).body
|
33
|
-
operation = Fog::Compute::Google::Operations.new(:service => service).get(data['name'], nil, data['region'])
|
34
|
-
operation.wait_for { !pending? }
|
35
|
-
reload
|
36
|
-
end
|
37
|
-
|
38
|
-
def destroy(async=true)
|
39
|
-
requires :name
|
40
|
-
|
41
|
-
operation = service.delete_global_forwarding_rule(name, 'global')
|
42
|
-
if not async
|
43
|
-
# wait until "RUNNING" or "DONE" to ensure the operation doesn't
|
44
|
-
# fail, raises exception on error
|
45
|
-
Fog.wait_for do
|
46
|
-
operation.body["status"] == "DONE"
|
47
|
-
end
|
48
|
-
end
|
49
|
-
operation
|
50
|
-
end
|
51
|
-
|
52
|
-
def set_target new_target
|
53
|
-
new_target = new_target.self_link unless new_target.class == String
|
54
|
-
self.target = new_target
|
55
|
-
service.set_global_forwarding_rule_target(self, new_target)
|
56
|
-
reload
|
57
|
-
end
|
58
|
-
|
59
|
-
def ready?
|
60
|
-
begin
|
61
|
-
service.get_global_forwarding_rule(self.name, 'global')
|
62
|
-
true
|
63
|
-
rescue Fog::Errors::NotFound
|
64
|
-
false
|
65
|
-
end
|
66
|
-
end
|
67
|
-
|
68
|
-
def reload
|
69
|
-
requires :name
|
70
|
-
|
71
|
-
return unless data = begin
|
72
|
-
collection.get(name, 'global')
|
73
|
-
rescue Excon::Errors::SocketError
|
74
|
-
nil
|
75
|
-
end
|
76
|
-
|
77
|
-
new_attributes = data.attributes
|
78
|
-
merge_attributes(new_attributes)
|
79
|
-
self
|
80
|
-
end
|
81
|
-
|
82
|
-
RUNNING_STATE = "READY"
|
83
|
-
end
|
84
|
-
end
|
85
|
-
end
|
86
|
-
end
|
@@ -1,84 +0,0 @@
|
|
1
|
-
require 'fog/core/model'
|
2
|
-
|
3
|
-
module Fog
|
4
|
-
module Compute
|
5
|
-
class Google
|
6
|
-
class HttpHealthCheck < Fog::Model
|
7
|
-
identity :name
|
8
|
-
|
9
|
-
attribute :kind, :aliases => 'kind'
|
10
|
-
attribute :self_link, :aliases => 'selfLink'
|
11
|
-
attribute :id, :aliases => 'id'
|
12
|
-
attribute :creation_timestamp, :aliases => 'creationTimestamp'
|
13
|
-
attribute :description, :aliases => 'description'
|
14
|
-
attribute :host, :aliases => 'host'
|
15
|
-
attribute :request_path, :aliases => 'requestPath'
|
16
|
-
attribute :port, :aliases => 'port'
|
17
|
-
attribute :check_interval_sec, :aliases => 'checkIntervalSec'
|
18
|
-
attribute :timeout_sec, :aliases => 'timeoutSec'
|
19
|
-
attribute :unhealthy_threshold, :aliases => 'unhealthyThreshold'
|
20
|
-
attribute :healthy_threshold, :aliases => 'healthyThreshold'
|
21
|
-
|
22
|
-
def save
|
23
|
-
requires :name
|
24
|
-
|
25
|
-
options = {
|
26
|
-
'description' => description,
|
27
|
-
'host' => host,
|
28
|
-
'requestPath' => request_path || "/",
|
29
|
-
'port' => port || 80,
|
30
|
-
'checkIntervalSec' => check_interval_sec || 5,
|
31
|
-
'timeoutSec' => timeout_sec || 5,
|
32
|
-
'unhealthyThreshold' => unhealthy_threshold || 2,
|
33
|
-
'healthyThreshold' => healthy_threshold || 2,
|
34
|
-
}
|
35
|
-
|
36
|
-
data = service.insert_http_health_check(name, options).body
|
37
|
-
operation = Fog::Compute::Google::Operations.new(:service => service).get(data['name'], data['zone'])
|
38
|
-
operation.wait_for { !pending? }
|
39
|
-
reload
|
40
|
-
end
|
41
|
-
|
42
|
-
def destroy(async=true)
|
43
|
-
requires :name
|
44
|
-
operation = service.delete_http_health_check(name)
|
45
|
-
|
46
|
-
if not async
|
47
|
-
# wait until "DONE" to ensure the operation doesn't fail, raises
|
48
|
-
# exception on error
|
49
|
-
Fog.wait_for do
|
50
|
-
operation = service.get_global_operation(operation.body["name"])
|
51
|
-
operation.body["status"] == "DONE"
|
52
|
-
end
|
53
|
-
end
|
54
|
-
operation
|
55
|
-
end
|
56
|
-
|
57
|
-
def ready?
|
58
|
-
begin
|
59
|
-
service.get_http_health_check(self.name)
|
60
|
-
true
|
61
|
-
rescue Fog::Errors::NotFound
|
62
|
-
false
|
63
|
-
end
|
64
|
-
end
|
65
|
-
|
66
|
-
def reload
|
67
|
-
requires :name
|
68
|
-
|
69
|
-
return unless data = begin
|
70
|
-
collection.get(name)
|
71
|
-
rescue Excon::Errors::SocketError
|
72
|
-
nil
|
73
|
-
end
|
74
|
-
|
75
|
-
new_attributes = data.attributes
|
76
|
-
merge_attributes(new_attributes)
|
77
|
-
self
|
78
|
-
end
|
79
|
-
|
80
|
-
RUNNING_STATE = "READY"
|
81
|
-
end
|
82
|
-
end
|
83
|
-
end
|
84
|
-
end
|
@@ -1,48 +0,0 @@
|
|
1
|
-
require 'fog/core/model'
|
2
|
-
|
3
|
-
module Fog
|
4
|
-
module Compute
|
5
|
-
class Google
|
6
|
-
class Snapshot < Fog::Model
|
7
|
-
identity :name
|
8
|
-
|
9
|
-
attribute :kind
|
10
|
-
attribute :self_link , :aliases => 'selfLink'
|
11
|
-
attribute :creation_timestamp, :aliases => 'creationTimestamp'
|
12
|
-
attribute :disk_size_gb , :aliases => 'diskSizeGb'
|
13
|
-
attribute :source_disk , :aliases => 'sourceDisk'
|
14
|
-
attribute :source_disk_id , :aliases => 'sourceDiskId'
|
15
|
-
attribute :description
|
16
|
-
attribute :status
|
17
|
-
attribute :id
|
18
|
-
attribute :storage_bytes , :aliases => 'storageBytes'
|
19
|
-
attribute :storage_bytes_status , :aliases => 'storageBytesStatus'
|
20
|
-
|
21
|
-
CREATING_STATE = 'CREATING'
|
22
|
-
DELETING_STATE = 'DELETING'
|
23
|
-
FAILED_STATE = 'FAILED'
|
24
|
-
READY_STATE = 'READY'
|
25
|
-
UPLOADING_STATE = 'UPLOADING'
|
26
|
-
|
27
|
-
def destroy(async=true)
|
28
|
-
requires :identity
|
29
|
-
|
30
|
-
data = service.delete_snapshot(identity)
|
31
|
-
operation = Fog::Compute::Google::Operations.new(:service => service).get(data.body['name'])
|
32
|
-
unless async
|
33
|
-
operation.wait_for { ready? }
|
34
|
-
end
|
35
|
-
operation
|
36
|
-
end
|
37
|
-
|
38
|
-
def ready?
|
39
|
-
self.status == READY_STATE
|
40
|
-
end
|
41
|
-
|
42
|
-
def resource_url
|
43
|
-
"#{self.service.project}/global/snapshots/#{name}"
|
44
|
-
end
|
45
|
-
end
|
46
|
-
end
|
47
|
-
end
|
48
|
-
end
|
@@ -1,23 +0,0 @@
|
|
1
|
-
require 'fog/core/model'
|
2
|
-
|
3
|
-
module Fog
|
4
|
-
module Compute
|
5
|
-
class Google
|
6
|
-
class Zone < Fog::Model
|
7
|
-
identity :name
|
8
|
-
attribute :description
|
9
|
-
attribute :status
|
10
|
-
attribute :maintenance_windows, :aliases => 'maintenanceWindows'
|
11
|
-
attribute :begin_time, :aliases => 'beginTime'
|
12
|
-
attribute :end_time, :aliases => 'endTime'
|
13
|
-
attribute :quotas
|
14
|
-
attribute :region
|
15
|
-
attribute :self_link, :aliases => 'selfLink'
|
16
|
-
|
17
|
-
def up?
|
18
|
-
self.status == "UP"
|
19
|
-
end
|
20
|
-
end
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
@@ -1,39 +0,0 @@
|
|
1
|
-
require 'fog/core/collection'
|
2
|
-
require 'fog/google/models/storage/directory'
|
3
|
-
|
4
|
-
module Fog
|
5
|
-
module Storage
|
6
|
-
class Google
|
7
|
-
class Directories < Fog::Collection
|
8
|
-
model Fog::Storage::Google::Directory
|
9
|
-
|
10
|
-
def all
|
11
|
-
data = service.get_service.body['Buckets']
|
12
|
-
load(data)
|
13
|
-
end
|
14
|
-
|
15
|
-
def get(key, options = {})
|
16
|
-
remap_attributes(options, {
|
17
|
-
:delimiter => 'delimiter',
|
18
|
-
:marker => 'marker',
|
19
|
-
:max_keys => 'max-keys',
|
20
|
-
:prefix => 'prefix'
|
21
|
-
})
|
22
|
-
data = service.get_bucket(key, options).body
|
23
|
-
directory = new(:key => data['Name'])
|
24
|
-
options = {}
|
25
|
-
for k, v in data
|
26
|
-
if ['CommonPrefixes', 'Delimiter', 'IsTruncated', 'Marker', 'MaxKeys', 'Prefix'].include?(k)
|
27
|
-
options[k] = v
|
28
|
-
end
|
29
|
-
end
|
30
|
-
directory.files.merge_attributes(options)
|
31
|
-
directory.files.load(data['Contents'])
|
32
|
-
directory
|
33
|
-
rescue Excon::Errors::NotFound
|
34
|
-
nil
|
35
|
-
end
|
36
|
-
end
|
37
|
-
end
|
38
|
-
end
|
39
|
-
end
|
@@ -1,58 +0,0 @@
|
|
1
|
-
module Fog
|
2
|
-
module Parsers
|
3
|
-
module Storage
|
4
|
-
module Google
|
5
|
-
class GetBucket < Fog::Parsers::Base
|
6
|
-
def reset
|
7
|
-
@object = { 'Owner' => {} }
|
8
|
-
@response = { 'Contents' => [], 'CommonPrefixes' => [] }
|
9
|
-
end
|
10
|
-
|
11
|
-
def start_element(name, attrs = [])
|
12
|
-
super
|
13
|
-
case name
|
14
|
-
when 'CommonPrefixes'
|
15
|
-
@in_common_prefixes = true
|
16
|
-
end
|
17
|
-
end
|
18
|
-
|
19
|
-
def end_element(name)
|
20
|
-
case name
|
21
|
-
when 'CommonPrefixes'
|
22
|
-
@in_common_prefixes = false
|
23
|
-
when 'Contents'
|
24
|
-
@response['Contents'] << @object
|
25
|
-
@object = { 'Owner' => {} }
|
26
|
-
when 'DisplayName', 'ID'
|
27
|
-
@object['Owner'][name] = value
|
28
|
-
when 'ETag'
|
29
|
-
@object[name] = value.gsub('"', '')
|
30
|
-
when 'IsTruncated'
|
31
|
-
if value == 'true'
|
32
|
-
@response['IsTruncated'] = true
|
33
|
-
else
|
34
|
-
@response['IsTruncated'] = false
|
35
|
-
end
|
36
|
-
when 'LastModified'
|
37
|
-
@object['LastModified'] = Time.parse(value)
|
38
|
-
when 'Marker', 'Name'
|
39
|
-
@response[name] = value
|
40
|
-
when 'MaxKeys'
|
41
|
-
@response['MaxKeys'] = value.to_i
|
42
|
-
when 'Prefix'
|
43
|
-
if @in_common_prefixes
|
44
|
-
@response['CommonPrefixes'] << value
|
45
|
-
else
|
46
|
-
@response[name] = value
|
47
|
-
end
|
48
|
-
when 'Size'
|
49
|
-
@object['Size'] = value.to_i
|
50
|
-
when 'Delimiter', 'Key', 'StorageClass'
|
51
|
-
@object[name] = value
|
52
|
-
end
|
53
|
-
end
|
54
|
-
end
|
55
|
-
end
|
56
|
-
end
|
57
|
-
end
|
58
|
-
end
|