fog-google 0.6.0 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +4 -7
- data/README.md +17 -15
- data/ci/.gitignore +1 -0
- data/ci/README.md +70 -0
- data/ci/credentials.yml.tpl +13 -0
- data/ci/docker-image/Dockerfile +20 -0
- data/ci/pipeline.yml +63 -0
- data/ci/tasks/run-int.sh +34 -0
- data/ci/tasks/run-int.yml +15 -0
- data/ci/tasks/utils.sh +10 -0
- data/examples/l7_load_balance.rb +16 -8
- data/examples/metadata.rb +2 -1
- data/examples/monitoring/timeseries_collection.rb +2 -2
- data/examples/sql/instances.rb +3 -7
- data/examples/sql/operations.rb +2 -2
- data/examples/sql/ssl_certs.rb +4 -4
- data/fog-google.gemspec +11 -12
- data/lib/fog/bin/google.rb +16 -13
- data/lib/fog/compute/google.rb +30 -29
- data/lib/fog/compute/google/mock.rb +380 -377
- data/lib/fog/compute/google/models/address.rb +46 -16
- data/lib/fog/compute/google/models/addresses.rb +22 -14
- data/lib/fog/compute/google/models/backend_service.rb +27 -26
- data/lib/fog/compute/google/models/backend_services.rb +6 -5
- data/lib/fog/compute/google/models/disk.rb +32 -42
- data/lib/fog/compute/google/models/disk_type.rb +1 -0
- data/lib/fog/compute/google/models/disk_types.rb +18 -12
- data/lib/fog/compute/google/models/disks.rb +35 -19
- data/lib/fog/compute/google/models/firewall.rb +31 -8
- data/lib/fog/compute/google/models/firewalls.rb +7 -6
- data/lib/fog/compute/google/models/forwarding_rule.rb +31 -34
- data/lib/fog/compute/google/models/forwarding_rules.rb +27 -17
- data/lib/fog/compute/google/models/global_address.rb +7 -37
- data/lib/fog/compute/google/models/global_addresses.rb +17 -17
- data/lib/fog/compute/google/models/global_forwarding_rule.rb +33 -37
- data/lib/fog/compute/google/models/global_forwarding_rules.rb +7 -6
- data/lib/fog/compute/google/models/http_health_check.rb +56 -32
- data/lib/fog/compute/google/models/http_health_checks.rb +4 -4
- data/lib/fog/compute/google/models/image.rb +27 -34
- data/lib/fog/compute/google/models/images.rb +38 -38
- data/lib/fog/compute/google/models/instance_group.rb +4 -4
- data/lib/fog/compute/google/models/instance_groups.rb +15 -13
- data/lib/fog/compute/google/models/{flavor.rb → machine_type.rb} +6 -14
- data/lib/fog/compute/google/models/machine_types.rb +37 -0
- data/lib/fog/compute/google/models/network.rb +17 -11
- data/lib/fog/compute/google/models/networks.rb +5 -4
- data/lib/fog/compute/google/models/operation.rb +3 -3
- data/lib/fog/compute/google/models/operations.rb +20 -9
- data/lib/fog/compute/google/models/project.rb +2 -2
- data/lib/fog/compute/google/models/projects.rb +3 -2
- data/lib/fog/compute/google/models/region.rb +2 -2
- data/lib/fog/compute/google/models/regions.rb +5 -4
- data/lib/fog/compute/google/models/route.rb +5 -2
- data/lib/fog/compute/google/models/routes.rb +5 -4
- data/lib/fog/compute/google/models/server.rb +358 -171
- data/lib/fog/compute/google/models/servers.rb +66 -33
- data/lib/fog/compute/google/models/snapshot.rb +22 -10
- data/lib/fog/compute/google/models/snapshots.rb +7 -5
- data/lib/fog/compute/google/models/ssl_certificate.rb +10 -3
- data/lib/fog/compute/google/models/ssl_certificates.rb +5 -4
- data/lib/fog/compute/google/models/subnetwork.rb +31 -2
- data/lib/fog/compute/google/models/subnetworks.rb +16 -8
- data/lib/fog/compute/google/models/target_http_proxies.rb +4 -3
- data/lib/fog/compute/google/models/target_http_proxy.rb +29 -27
- data/lib/fog/compute/google/models/target_https_proxies.rb +4 -3
- data/lib/fog/compute/google/models/target_https_proxy.rb +46 -27
- data/lib/fog/compute/google/models/target_instance.rb +21 -23
- data/lib/fog/compute/google/models/target_instances.rb +21 -13
- data/lib/fog/compute/google/models/target_pool.rb +87 -44
- data/lib/fog/compute/google/models/target_pools.rb +21 -13
- data/lib/fog/compute/google/models/url_map.rb +58 -28
- data/lib/fog/compute/google/models/url_maps.rb +4 -3
- data/lib/fog/compute/google/models/zone.rb +10 -6
- data/lib/fog/compute/google/models/zones.rb +4 -3
- data/lib/fog/compute/google/real.rb +2 -3
- data/lib/fog/compute/google/requests/add_backend_service_backends.rb +2 -14
- data/lib/fog/compute/google/requests/add_instance_group_instances.rb +13 -15
- data/lib/fog/compute/google/requests/add_server_access_config.rb +15 -17
- data/lib/fog/compute/google/requests/add_target_pool_health_checks.rb +15 -12
- data/lib/fog/compute/google/requests/add_target_pool_instances.rb +13 -12
- data/lib/fog/compute/google/requests/attach_disk.rb +6 -20
- data/lib/fog/compute/google/requests/create_disk_snapshot.rb +22 -0
- data/lib/fog/compute/google/requests/delete_address.rb +6 -8
- data/lib/fog/compute/google/requests/delete_backend_service.rb +3 -29
- data/lib/fog/compute/google/requests/delete_disk.rb +8 -31
- data/lib/fog/compute/google/requests/delete_firewall.rb +1 -7
- data/lib/fog/compute/google/requests/delete_forwarding_rule.rb +5 -36
- data/lib/fog/compute/google/requests/delete_global_address.rb +1 -6
- data/lib/fog/compute/google/requests/delete_global_forwarding_rule.rb +4 -35
- data/lib/fog/compute/google/requests/delete_global_operation.rb +2 -9
- data/lib/fog/compute/google/requests/delete_http_health_check.rb +4 -28
- data/lib/fog/compute/google/requests/delete_image.rb +4 -29
- data/lib/fog/compute/google/requests/delete_instance_group.rb +1 -8
- data/lib/fog/compute/google/requests/delete_network.rb +1 -7
- data/lib/fog/compute/google/requests/delete_region_operation.rb +5 -14
- data/lib/fog/compute/google/requests/delete_route.rb +5 -7
- data/lib/fog/compute/google/requests/delete_server.rb +4 -54
- data/lib/fog/compute/google/requests/delete_server_access_config.rb +5 -11
- data/lib/fog/compute/google/requests/delete_snapshot.rb +1 -7
- data/lib/fog/compute/google/requests/delete_ssl_certificate.rb +1 -7
- data/lib/fog/compute/google/requests/delete_subnetwork.rb +12 -32
- data/lib/fog/compute/google/requests/delete_target_http_proxy.rb +4 -30
- data/lib/fog/compute/google/requests/delete_target_https_proxy.rb +3 -9
- data/lib/fog/compute/google/requests/delete_target_instance.rb +5 -33
- data/lib/fog/compute/google/requests/delete_target_pool.rb +5 -36
- data/lib/fog/compute/google/requests/delete_url_map.rb +4 -30
- data/lib/fog/compute/google/requests/delete_zone_operation.rb +1 -8
- data/lib/fog/compute/google/requests/deprecate_image.rb +20 -0
- data/lib/fog/compute/google/requests/detach_disk.rb +4 -11
- data/lib/fog/compute/google/requests/expand_subnetwork_ip_cidr_range.rb +36 -0
- data/lib/fog/compute/google/requests/get_address.rb +6 -8
- data/lib/fog/compute/google/requests/get_backend_service.rb +1 -6
- data/lib/fog/compute/google/requests/get_backend_service_health.rb +3 -8
- data/lib/fog/compute/google/requests/get_disk.rb +7 -31
- data/lib/fog/compute/google/requests/get_disk_type.rb +4 -27
- data/lib/fog/compute/google/requests/get_firewall.rb +1 -7
- data/lib/fog/compute/google/requests/get_forwarding_rule.rb +6 -30
- data/lib/fog/compute/google/requests/get_global_address.rb +1 -6
- data/lib/fog/compute/google/requests/get_global_forwarding_rule.rb +4 -17
- data/lib/fog/compute/google/requests/get_global_operation.rb +7 -36
- data/lib/fog/compute/google/requests/get_http_health_check.rb +4 -24
- data/lib/fog/compute/google/requests/get_image.rb +4 -22
- data/lib/fog/compute/google/requests/get_image_from_family.rb +9 -20
- data/lib/fog/compute/google/requests/get_instance_group.rb +1 -8
- data/lib/fog/compute/google/requests/get_machine_type.rb +5 -28
- data/lib/fog/compute/google/requests/get_network.rb +1 -7
- data/lib/fog/compute/google/requests/get_project.rb +1 -6
- data/lib/fog/compute/google/requests/get_region.rb +3 -23
- data/lib/fog/compute/google/requests/get_region_operation.rb +7 -42
- data/lib/fog/compute/google/requests/get_route.rb +4 -7
- data/lib/fog/compute/google/requests/get_server.rb +4 -58
- data/lib/fog/compute/google/requests/get_server_serial_port_output.rb +21 -9
- data/lib/fog/compute/google/requests/get_snapshot.rb +1 -8
- data/lib/fog/compute/google/requests/get_ssl_certificate.rb +1 -6
- data/lib/fog/compute/google/requests/get_subnetwork.rb +11 -29
- data/lib/fog/compute/google/requests/get_target_http_proxy.rb +4 -12
- data/lib/fog/compute/google/requests/get_target_https_proxy.rb +3 -9
- data/lib/fog/compute/google/requests/get_target_instance.rb +5 -15
- data/lib/fog/compute/google/requests/get_target_pool.rb +5 -27
- data/lib/fog/compute/google/requests/get_target_pool_health.rb +7 -24
- data/lib/fog/compute/google/requests/get_url_map.rb +4 -12
- data/lib/fog/compute/google/requests/get_zone.rb +3 -22
- data/lib/fog/compute/google/requests/get_zone_operation.rb +8 -38
- data/lib/fog/compute/google/requests/insert_address.rb +12 -9
- data/lib/fog/compute/google/requests/insert_backend_service.rb +7 -49
- data/lib/fog/compute/google/requests/insert_disk.rb +25 -96
- data/lib/fog/compute/google/requests/insert_firewall.rb +46 -26
- data/lib/fog/compute/google/requests/insert_forwarding_rule.rb +14 -47
- data/lib/fog/compute/google/requests/insert_global_address.rb +7 -8
- data/lib/fog/compute/google/requests/insert_global_forwarding_rule.rb +11 -43
- data/lib/fog/compute/google/requests/insert_http_health_check.rb +9 -46
- data/lib/fog/compute/google/requests/insert_image.rb +8 -51
- data/lib/fog/compute/google/requests/insert_instance_group.rb +16 -19
- data/lib/fog/compute/google/requests/insert_network.rb +16 -13
- data/lib/fog/compute/google/requests/insert_route.rb +18 -20
- data/lib/fog/compute/google/requests/insert_server.rb +74 -235
- data/lib/fog/compute/google/requests/insert_ssl_certificate.rb +10 -14
- data/lib/fog/compute/google/requests/insert_subnetwork.rb +37 -53
- data/lib/fog/compute/google/requests/insert_target_http_proxy.rb +11 -39
- data/lib/fog/compute/google/requests/insert_target_https_proxy.rb +13 -10
- data/lib/fog/compute/google/requests/insert_target_instance.rb +10 -42
- data/lib/fog/compute/google/requests/insert_target_pool.rb +7 -45
- data/lib/fog/compute/google/requests/insert_url_map.rb +10 -41
- data/lib/fog/compute/google/requests/invalidate_url_map_cache.rb +22 -0
- data/lib/fog/compute/google/requests/list_addresses.rb +12 -9
- data/lib/fog/compute/google/requests/list_aggregated_addresses.rb +5 -7
- data/lib/fog/compute/google/requests/list_aggregated_disk_types.rb +9 -25
- data/lib/fog/compute/google/requests/list_aggregated_disks.rb +17 -24
- data/lib/fog/compute/google/requests/list_aggregated_forwarding_rules.rb +22 -0
- data/lib/fog/compute/google/requests/list_aggregated_instance_groups.rb +2 -7
- data/lib/fog/compute/google/requests/list_aggregated_machine_types.rb +8 -8
- data/lib/fog/compute/google/requests/list_aggregated_servers.rb +9 -24
- data/lib/fog/compute/google/requests/list_aggregated_subnetworks.rb +20 -20
- data/lib/fog/compute/google/requests/list_aggregated_target_instances.rb +11 -26
- data/lib/fog/compute/google/requests/list_aggregated_target_pools.rb +24 -0
- data/lib/fog/compute/google/requests/list_backend_services.rb +1 -6
- data/lib/fog/compute/google/requests/list_disk_types.rb +9 -31
- data/lib/fog/compute/google/requests/list_disks.rb +13 -14
- data/lib/fog/compute/google/requests/list_firewalls.rb +7 -7
- data/lib/fog/compute/google/requests/list_forwarding_rules.rb +10 -14
- data/lib/fog/compute/google/requests/list_global_addresses.rb +24 -0
- data/lib/fog/compute/google/requests/list_global_forwarding_rules.rb +9 -15
- data/lib/fog/compute/google/requests/list_global_operations.rb +10 -9
- data/lib/fog/compute/google/requests/list_http_health_checks.rb +8 -13
- data/lib/fog/compute/google/requests/list_images.rb +10 -14
- data/lib/fog/compute/google/requests/list_instance_group_instances.rb +3 -8
- data/lib/fog/compute/google/requests/list_instance_groups.rb +1 -7
- data/lib/fog/compute/google/requests/list_machine_types.rb +10 -15
- data/lib/fog/compute/google/requests/list_networks.rb +8 -8
- data/lib/fog/compute/google/requests/list_region_operations.rb +12 -10
- data/lib/fog/compute/google/requests/list_regions.rb +7 -69
- data/lib/fog/compute/google/requests/list_routes.rb +11 -7
- data/lib/fog/compute/google/requests/list_servers.rb +9 -16
- data/lib/fog/compute/google/requests/list_snapshots.rb +5 -9
- data/lib/fog/compute/google/requests/list_ssl_certificates.rb +9 -6
- data/lib/fog/compute/google/requests/list_subnetworks.rb +24 -22
- data/lib/fog/compute/google/requests/list_target_http_proxies.rb +10 -14
- data/lib/fog/compute/google/requests/list_target_https_proxies.rb +7 -7
- data/lib/fog/compute/google/requests/list_target_instances.rb +12 -15
- data/lib/fog/compute/google/requests/list_target_pools.rb +11 -14
- data/lib/fog/compute/google/requests/list_url_maps.rb +10 -14
- data/lib/fog/compute/google/requests/list_zone_operations.rb +11 -10
- data/lib/fog/compute/google/requests/list_zones.rb +10 -12
- data/lib/fog/compute/google/requests/patch_firewall.rb +25 -0
- data/lib/fog/compute/google/requests/patch_url_map.rb +19 -0
- data/lib/fog/compute/google/requests/remove_instance_group_instances.rb +13 -15
- data/lib/fog/compute/google/requests/remove_target_pool_health_checks.rb +13 -12
- data/lib/fog/compute/google/requests/remove_target_pool_instance.rb +13 -12
- data/lib/fog/compute/google/requests/remove_target_pool_instances.rb +13 -12
- data/lib/fog/compute/google/requests/reset_server.rb +1 -8
- data/lib/fog/compute/google/requests/set_common_instance_metadata.rb +6 -11
- data/lib/fog/compute/google/requests/set_forwarding_rule_target.rb +7 -13
- data/lib/fog/compute/google/requests/set_global_forwarding_rule_target.rb +6 -13
- data/lib/fog/compute/google/requests/set_server_disk_auto_delete.rb +8 -10
- data/lib/fog/compute/google/requests/set_server_metadata.rb +35 -0
- data/lib/fog/compute/google/requests/set_server_scheduling.rb +7 -15
- data/lib/fog/compute/google/requests/set_server_tags.rb +23 -0
- data/lib/fog/compute/google/requests/set_snapshot_labels.rb +23 -0
- data/lib/fog/compute/google/requests/set_subnetwork_private_ip_google_access.rb +40 -0
- data/lib/fog/compute/google/requests/set_target_http_proxy_url_map.rb +8 -13
- data/lib/fog/compute/google/requests/set_target_https_proxy_ssl_certificates.rb +22 -0
- data/lib/fog/compute/google/requests/set_target_https_proxy_url_map.rb +8 -13
- data/lib/fog/compute/google/requests/set_target_pool_backup.rb +29 -0
- data/lib/fog/compute/google/requests/start_server.rb +3 -10
- data/lib/fog/compute/google/requests/stop_server.rb +3 -10
- data/lib/fog/compute/google/requests/update_firewall.rb +32 -28
- data/lib/fog/compute/google/requests/update_http_health_check.rb +23 -0
- data/lib/fog/compute/google/requests/update_url_map.rb +11 -24
- data/lib/fog/compute/google/requests/validate_url_map.rb +8 -10
- data/lib/fog/dns/google.rb +4 -3
- data/lib/fog/dns/google/models/change.rb +2 -2
- data/lib/fog/dns/google/models/changes.rb +6 -5
- data/lib/fog/dns/google/models/project.rb +6 -6
- data/lib/fog/dns/google/models/projects.rb +3 -2
- data/lib/fog/dns/google/models/record.rb +16 -10
- data/lib/fog/dns/google/models/records.rb +8 -4
- data/lib/fog/dns/google/models/zone.rb +1 -1
- data/lib/fog/dns/google/models/zones.rb +4 -3
- data/lib/fog/dns/google/real.rb +2 -3
- data/lib/fog/dns/google/requests/create_change.rb +9 -46
- data/lib/fog/dns/google/requests/create_managed_zone.rb +7 -62
- data/lib/fog/dns/google/requests/delete_managed_zone.rb +3 -17
- data/lib/fog/dns/google/requests/get_change.rb +3 -24
- data/lib/fog/dns/google/requests/get_managed_zone.rb +3 -19
- data/lib/fog/dns/google/requests/get_project.rb +3 -23
- data/lib/fog/dns/google/requests/list_changes.rb +11 -24
- data/lib/fog/dns/google/requests/list_managed_zones.rb +7 -14
- data/lib/fog/dns/google/requests/list_resource_record_sets.rb +11 -33
- data/lib/fog/google/models/monitoring/metric_descriptors.rb +24 -7
- data/lib/fog/google/models/monitoring/monitored_resource_descriptors.rb +18 -7
- data/lib/fog/google/models/monitoring/timeseries_collection.rb +25 -15
- data/lib/fog/google/models/pubsub/subscription.rb +5 -5
- data/lib/fog/google/models/pubsub/subscriptions.rb +4 -3
- data/lib/fog/google/models/pubsub/topic.rb +3 -4
- data/lib/fog/google/models/pubsub/topics.rb +4 -3
- data/lib/fog/google/models/sql/backup_run.rb +8 -5
- data/lib/fog/google/models/sql/backup_runs.rb +9 -9
- data/lib/fog/google/models/sql/flag.rb +2 -1
- data/lib/fog/google/models/sql/flags.rb +1 -1
- data/lib/fog/google/models/sql/instance.rb +76 -91
- data/lib/fog/google/models/sql/instances.rb +5 -8
- data/lib/fog/google/models/sql/operation.rb +24 -18
- data/lib/fog/google/models/sql/operations.rb +7 -9
- data/lib/fog/google/models/sql/ssl_cert.rb +11 -11
- data/lib/fog/google/models/sql/ssl_certs.rb +8 -8
- data/lib/fog/google/models/sql/tier.rb +1 -1
- data/lib/fog/google/models/sql/tiers.rb +1 -1
- data/lib/fog/google/models/sql/user.rb +44 -0
- data/lib/fog/google/models/sql/users.rb +21 -0
- data/lib/fog/google/monitoring.rb +5 -0
- data/lib/fog/google/monitoring/real.rb +2 -3
- data/lib/fog/google/pubsub.rb +1 -0
- data/lib/fog/google/pubsub/real.rb +1 -1
- data/lib/fog/google/requests/monitoring/create_metric_descriptor.rb +49 -0
- data/lib/fog/google/requests/monitoring/create_timeseries.rb +27 -0
- data/lib/fog/google/requests/monitoring/delete_metric_descriptor.rb +17 -0
- data/lib/fog/google/requests/monitoring/get_metric_descriptor.rb +17 -0
- data/lib/fog/google/requests/monitoring/get_monitored_resource_descriptor.rb +19 -0
- data/lib/fog/google/requests/monitoring/list_metric_descriptors.rb +8 -230
- data/lib/fog/google/requests/monitoring/list_monitored_resource_descriptors.rb +9 -45
- data/lib/fog/google/requests/monitoring/list_timeseries.rb +26 -60
- data/lib/fog/google/requests/pubsub/acknowledge_subscription.rb +11 -28
- data/lib/fog/google/requests/pubsub/create_subscription.rb +8 -27
- data/lib/fog/google/requests/pubsub/create_topic.rb +3 -16
- data/lib/fog/google/requests/pubsub/delete_subscription.rb +3 -10
- data/lib/fog/google/requests/pubsub/delete_topic.rb +3 -11
- data/lib/fog/google/requests/pubsub/get_subscription.rb +3 -26
- data/lib/fog/google/requests/pubsub/get_topic.rb +3 -23
- data/lib/fog/google/requests/pubsub/list_subscriptions.rb +7 -17
- data/lib/fog/google/requests/pubsub/list_topics.rb +7 -11
- data/lib/fog/google/requests/pubsub/publish_topic.rb +6 -39
- data/lib/fog/google/requests/pubsub/pull_subscription.rb +7 -48
- data/lib/fog/google/requests/sql/clone_instance.rb +20 -64
- data/lib/fog/google/requests/sql/delete_backup_run.rb +21 -0
- data/lib/fog/google/requests/sql/delete_instance.rb +4 -49
- data/lib/fog/google/requests/sql/delete_ssl_cert.rb +4 -50
- data/lib/fog/google/requests/sql/delete_user.rb +22 -0
- data/lib/fog/google/requests/sql/export_instance.rb +35 -38
- data/lib/fog/google/requests/sql/get_backup_run.rb +5 -14
- data/lib/fog/google/requests/sql/get_instance.rb +4 -30
- data/lib/fog/google/requests/sql/get_operation.rb +5 -49
- data/lib/fog/google/requests/sql/get_ssl_cert.rb +4 -48
- data/lib/fog/google/requests/sql/import_instance.rb +23 -36
- data/lib/fog/google/requests/sql/insert_backup_run.rb +26 -0
- data/lib/fog/google/requests/sql/insert_instance.rb +9 -146
- data/lib/fog/google/requests/sql/insert_ssl_cert.rb +10 -62
- data/lib/fog/google/requests/sql/insert_user.rb +23 -0
- data/lib/fog/google/requests/sql/list_backup_runs.rb +5 -10
- data/lib/fog/google/requests/sql/list_flags.rb +3 -124
- data/lib/fog/google/requests/sql/list_instances.rb +8 -15
- data/lib/fog/google/requests/sql/list_operations.rb +8 -34
- data/lib/fog/google/requests/sql/list_ssl_certs.rb +4 -33
- data/lib/fog/google/requests/sql/list_tiers.rb +2 -62
- data/lib/fog/google/requests/sql/list_users.rb +22 -0
- data/lib/fog/google/requests/sql/reset_instance_ssl_config.rb +4 -29
- data/lib/fog/google/requests/sql/restart_instance.rb +4 -29
- data/lib/fog/google/requests/sql/restore_instance_backup.rb +11 -12
- data/lib/fog/google/requests/sql/update_instance.rb +13 -116
- data/lib/fog/google/requests/sql/update_user.rb +25 -0
- data/lib/fog/google/shared.rb +53 -69
- data/lib/fog/google/sql.rb +16 -4
- data/lib/fog/google/sql/real.rb +2 -2
- data/lib/fog/google/version.rb +1 -1
- data/lib/fog/parsers/storage/google/get_bucket_object_versions.rb +12 -8
- data/lib/fog/storage/google_json.rb +10 -4
- data/lib/fog/storage/google_json/models/directories.rb +17 -10
- data/lib/fog/storage/google_json/models/directory.rb +28 -31
- data/lib/fog/storage/google_json/models/file.rb +36 -88
- data/lib/fog/storage/google_json/models/files.rb +16 -25
- data/lib/fog/storage/google_json/real.rb +4 -4
- data/lib/fog/storage/google_json/requests/copy_object.rb +15 -50
- data/lib/fog/storage/google_json/requests/delete_bucket.rb +4 -25
- data/lib/fog/storage/google_json/requests/delete_object.rb +5 -29
- data/lib/fog/storage/google_json/requests/get_bucket.rb +25 -68
- data/lib/fog/storage/google_json/requests/get_bucket_acl.rb +14 -38
- data/lib/fog/storage/google_json/requests/get_object.rb +53 -75
- data/lib/fog/storage/google_json/requests/get_object_acl.rb +14 -40
- data/lib/fog/storage/google_json/requests/get_object_http_url.rb +6 -13
- data/lib/fog/storage/google_json/requests/get_object_https_url.rb +5 -12
- data/lib/fog/storage/google_json/requests/get_object_metadata.rb +30 -0
- data/lib/fog/storage/google_json/requests/get_object_url.rb +2 -3
- data/lib/fog/storage/google_json/requests/list_bucket_acl.rb +24 -0
- data/lib/fog/storage/google_json/requests/list_buckets.rb +12 -16
- data/lib/fog/storage/google_json/requests/list_object_acl.rb +27 -0
- data/lib/fog/storage/google_json/requests/list_objects.rb +5 -20
- data/lib/fog/storage/google_json/requests/put_bucket.rb +23 -57
- data/lib/fog/storage/google_json/requests/put_bucket_acl.rb +11 -18
- data/lib/fog/storage/google_json/requests/put_object.rb +68 -97
- data/lib/fog/storage/google_json/requests/put_object_acl.rb +16 -14
- data/lib/fog/storage/google_json/requests/put_object_url.rb +8 -14
- data/lib/fog/storage/google_json/utils.rb +2 -2
- data/lib/fog/storage/google_xml/models/file.rb +2 -2
- data/lib/fog/storage/google_xml/models/files.rb +2 -2
- data/lib/fog/storage/google_xml/real.rb +1 -1
- data/lib/fog/storage/google_xml/requests/copy_object.rb +1 -1
- data/lib/fog/storage/google_xml/requests/get_bucket.rb +3 -3
- data/lib/fog/storage/google_xml/requests/get_object.rb +5 -5
- data/lib/fog/storage/google_xml/requests/get_service.rb +2 -2
- data/lib/fog/storage/google_xml/requests/put_bucket_acl.rb +1 -1
- data/lib/fog/storage/google_xml/requests/put_object_acl.rb +1 -1
- data/test/helpers/client_helper.rb +44 -16
- data/test/helpers/integration_test_helper.rb +10 -4
- data/test/helpers/test_collection.rb +3 -3
- data/test/integration/compute/addresses/addresses_shared.rb +59 -0
- data/test/integration/compute/addresses/test_compute_address_models.rb +105 -0
- data/test/integration/compute/addresses/test_compute_address_requests.rb +52 -0
- data/test/integration/compute/{test_disks.rb → disks/test_compute_disk_models.rb} +0 -0
- data/test/integration/compute/disks/test_compute_disk_requests.rb +92 -0
- data/test/integration/compute/test_compute_addresses_collection.rb +5 -5
- data/test/integration/compute/test_compute_networks_collection.rb +11 -23
- data/test/integration/compute/test_disk_types.rb +3 -3
- data/test/integration/compute/test_regions.rb +6 -6
- data/test/integration/compute/test_servers.rb +0 -17
- data/test/integration/compute/test_target_pools.rb +5 -0
- data/test/integration/factories/collection_factory.rb +8 -4
- data/test/integration/factories/disks_factory.rb +4 -0
- data/test/integration/factories/forwarding_rules_factory.rb +1 -0
- data/test/integration/factories/global_forwarding_rules_factory.rb +1 -0
- data/test/integration/factories/servers_factory.rb +3 -2
- data/test/integration/factories/target_instances_factory.rb +1 -1
- data/test/integration/monitoring/test_metric_descriptors.rb +129 -0
- data/test/integration/monitoring/test_monitored_resource_descriptors.rb +37 -0
- data/test/integration/monitoring/test_timeseries.rb +202 -0
- data/test/integration/pubsub/pubsub_shared.rb +75 -0
- data/test/integration/pubsub/test_pubsub_models.rb +135 -0
- data/test/integration/pubsub/test_pubsub_requests.rb +49 -110
- data/test/integration/sql/sql_instances_shared.rb +57 -0
- data/test/integration/sql/test_flags.rb +31 -0
- data/test/integration/sql/test_instances.rb +97 -0
- data/test/integration/sql/test_instances_second_gen.rb +88 -0
- data/test/integration/sql/test_tiers.rb +34 -0
- data/test/integration/storage/storage_shared.rb +96 -0
- data/test/integration/storage/test_buckets.rb +93 -36
- data/test/integration/storage/test_directories.rb +48 -41
- data/test/integration/storage/test_files.rb +134 -98
- data/test/integration/storage/test_objects.rb +137 -75
- metadata +90 -110
- data/lib/fog/compute/google/models/flavors.rb +0 -28
- data/lib/fog/compute/google/models/resource_view.rb +0 -108
- data/lib/fog/compute/google/models/resource_views.rb +0 -54
- data/lib/fog/compute/google/requests/add_region_view_resources.rb +0 -27
- data/lib/fog/compute/google/requests/add_url_map_host_rules.rb +0 -25
- data/lib/fog/compute/google/requests/add_url_map_path_matchers.rb +0 -29
- data/lib/fog/compute/google/requests/add_zone_view_resources.rb +0 -27
- data/lib/fog/compute/google/requests/delete_region_view.rb +0 -24
- data/lib/fog/compute/google/requests/delete_zone_view.rb +0 -24
- data/lib/fog/compute/google/requests/get_backend_services.rb +0 -23
- data/lib/fog/compute/google/requests/get_region_view.rb +0 -24
- data/lib/fog/compute/google/requests/get_zone_view.rb +0 -24
- data/lib/fog/compute/google/requests/insert_region_view.rb +0 -25
- data/lib/fog/compute/google/requests/insert_snapshot.rb +0 -40
- data/lib/fog/compute/google/requests/insert_zone_view.rb +0 -26
- data/lib/fog/compute/google/requests/list_region_view_resources.rb +0 -24
- data/lib/fog/compute/google/requests/list_region_views.rb +0 -23
- data/lib/fog/compute/google/requests/list_zone_view_resources.rb +0 -24
- data/lib/fog/compute/google/requests/list_zone_views.rb +0 -23
- data/lib/fog/compute/google/requests/set_metadata.rb +0 -39
- data/lib/fog/compute/google/requests/set_tags.rb +0 -24
- data/lib/fog/google/requests/sql/set_instance_root_password.rb +0 -54
- data/lib/fog/storage/google_json/requests/head_object.rb +0 -54
- data/test/integration/compute/requests/test_compute_address_requests.rb +0 -84
- data/test/unit/compute/test_server.rb +0 -20
- data/tests/helper.rb +0 -124
- data/tests/helpers/collection_helper.rb +0 -88
- data/tests/helpers/compute/flavors_helper.rb +0 -28
- data/tests/helpers/compute/server_helper.rb +0 -21
- data/tests/helpers/compute/servers_helper.rb +0 -8
- data/tests/helpers/formats_helper.rb +0 -98
- data/tests/helpers/formats_helper_tests.rb +0 -106
- data/tests/helpers/mock_helper.rb +0 -16
- data/tests/helpers/model_helper.rb +0 -29
- data/tests/helpers/responds_to_helper.rb +0 -11
- data/tests/helpers/schema_validator_tests.rb +0 -101
- data/tests/helpers/succeeds_helper.rb +0 -9
- data/tests/lorem.txt +0 -1
- data/tests/models/dns/change_tests.rb +0 -26
- data/tests/models/dns/changes_tests.rb +0 -32
- data/tests/models/dns/projects_tests.rb +0 -9
- data/tests/models/dns/record_tests.rb +0 -41
- data/tests/models/dns/records_tests.rb +0 -32
- data/tests/models/dns/zone_tests.rb +0 -28
- data/tests/models/dns/zones_tests.rb +0 -14
- data/tests/models/pubsub/received_message_tests.rb +0 -18
- data/tests/models/pubsub/subscription_tests.rb +0 -26
- data/tests/models/pubsub/subscriptions_tests.rb +0 -33
- data/tests/models/pubsub/topic_tests.rb +0 -18
- data/tests/models/pubsub/topics_tests.rb +0 -27
- data/tests/models/sql/flags_tests.rb +0 -9
- data/tests/models/sql/instance_tests.rb +0 -53
- data/tests/models/sql/instances_tests.rb +0 -27
- data/tests/models/sql/operation_tests.rb +0 -22
- data/tests/models/sql/operations_tests.rb +0 -33
- data/tests/models/sql/ssl_cert_tests.rb +0 -21
- data/tests/models/sql/ssl_certs_tests.rb +0 -34
- data/tests/models/sql/tiers_tests.rb +0 -9
- data/tests/requests/compute/backend_service_tests.rb +0 -79
- data/tests/requests/compute/disk_tests.rb +0 -70
- data/tests/requests/compute/disk_type_tests.rb +0 -42
- data/tests/requests/compute/firewall_tests.rb +0 -85
- data/tests/requests/compute/forwarding_rules_tests.rb +0 -79
- data/tests/requests/compute/global_forwarding_rules_tests.rb +0 -79
- data/tests/requests/compute/http_health_checks_tests.rb +0 -79
- data/tests/requests/compute/image_tests.rb +0 -79
- data/tests/requests/compute/network_tests.rb +0 -72
- data/tests/requests/compute/operation_tests.rb +0 -19
- data/tests/requests/compute/region_tests.rb +0 -39
- data/tests/requests/compute/server_tests.rb +0 -82
- data/tests/requests/compute/target_http_proxies_test.rb +0 -75
- data/tests/requests/compute/target_instances_tests.rb +0 -79
- data/tests/requests/compute/target_pools_tests.rb +0 -78
- data/tests/requests/compute/url_maps_tests.rb +0 -78
- data/tests/requests/compute/zone_tests.rb +0 -33
- data/tests/requests/dns/change_tests.rb +0 -82
- data/tests/requests/dns/managed_zone_tests.rb +0 -63
- data/tests/requests/dns/project_tests.rb +0 -26
- data/tests/requests/dns/record_tests.rb +0 -46
- data/tests/requests/sql/flag_tests.rb +0 -24
- data/tests/requests/sql/instance_tests.rb +0 -126
- data/tests/requests/sql/operation_tests.rb +0 -39
- data/tests/requests/sql/ssl_cert_tests.rb +0 -58
- data/tests/requests/sql/tier_tests.rb +0 -22
- data/tests/requests/storage/bucket_tests.rb +0 -71
- data/tests/requests/storage/object_tests.rb +0 -78
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 4fa59c3a8e64b4d0f7906e8000166d103f911c40
|
|
4
|
+
data.tar.gz: 8d36d48ed04b7025fe4c29b620979b61924ec6ed
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 247a59498aef0aff1f7ec983f5662cff88d9916f6d086e47bb8799e5e258888430d040e780a096e2de65d02aed8b3c9c43ab4cab2d7456110b12445401d897e2
|
|
7
|
+
data.tar.gz: 62c69343e5b0b47162704319c9f3d8005070942f6a68d93514f6c3dec244818c848afb81da45384400dcf783b17ab06f7f6d3857bf1ac9a56dcf73091897b532
|
data/.rubocop.yml
CHANGED
|
@@ -6,9 +6,6 @@ Style/ConditionalAssignment:
|
|
|
6
6
|
SingleLineConditionsOnly: true
|
|
7
7
|
EnforcedStyle: assign_inside_condition
|
|
8
8
|
|
|
9
|
-
Style/Encoding:
|
|
10
|
-
EnforcedStyle: when_needed
|
|
11
|
-
|
|
12
9
|
Style/FormatString:
|
|
13
10
|
Enabled: false
|
|
14
11
|
|
|
@@ -40,7 +37,7 @@ Style/CollectionMethods:
|
|
|
40
37
|
find: detect
|
|
41
38
|
find_all: select
|
|
42
39
|
reduce: inject
|
|
43
|
-
|
|
40
|
+
Layout/DotPosition:
|
|
44
41
|
Description: Checks the position of the dot in multi-line method calls.
|
|
45
42
|
StyleGuide: https://github.com/bbatsov/ruby-style-guide#consistent-multi-line-chains
|
|
46
43
|
Enabled: true
|
|
@@ -48,7 +45,7 @@ Style/DotPosition:
|
|
|
48
45
|
SupportedStyles:
|
|
49
46
|
- leading
|
|
50
47
|
- trailing
|
|
51
|
-
|
|
48
|
+
Naming/FileName:
|
|
52
49
|
Description: Use snake_case for source file names.
|
|
53
50
|
StyleGuide: https://github.com/bbatsov/ruby-style-guide#snake-case-files
|
|
54
51
|
Enabled: false
|
|
@@ -80,7 +77,7 @@ Style/PercentLiteralDelimiters:
|
|
|
80
77
|
"%w": "()"
|
|
81
78
|
"%W": "()"
|
|
82
79
|
"%x": "()"
|
|
83
|
-
|
|
80
|
+
Naming/PredicateName:
|
|
84
81
|
Description: Check the names of predicate methods.
|
|
85
82
|
StyleGuide: https://github.com/bbatsov/ruby-style-guide#bool-methods-qmark
|
|
86
83
|
Enabled: true
|
|
@@ -186,7 +183,7 @@ Lint/AssignmentInCondition:
|
|
|
186
183
|
Style/InlineComment:
|
|
187
184
|
Description: Avoid inline comments.
|
|
188
185
|
Enabled: true
|
|
189
|
-
|
|
186
|
+
Naming/AccessorMethodName:
|
|
190
187
|
Description: Check the naming of accessor methods for get_/set_.
|
|
191
188
|
Enabled: false
|
|
192
189
|
Style/Alias:
|
data/README.md
CHANGED
|
@@ -6,7 +6,7 @@ The main maintainers for the Google sections are @icco, @Temikus and @plribeiro3
|
|
|
6
6
|
|
|
7
7
|
**As of v0.1.1, Google no longer supports Ruby versions less than 2.0.0.**
|
|
8
8
|
|
|
9
|
-
**
|
|
9
|
+
**As of v1.0.0, fog-google includes google-api-client as a dependency**
|
|
10
10
|
|
|
11
11
|
|
|
12
12
|
## Storage
|
|
@@ -20,13 +20,12 @@ There are two ways to access [Google Cloud Storage](https://cloud.google.com/sto
|
|
|
20
20
|
|
|
21
21
|
Google Compute Engine is a Virtual Machine hosting service. Currently it is built on version [v1](https://developers.google.com/compute/docs/reference/v1/) of the GCE API.
|
|
22
22
|
|
|
23
|
-
As of
|
|
24
|
-
|
|
25
|
-
If you are using Fog to interact with GCE, please keep Fog up to date and [file issues](https://github.com/fog/fog-google/issues) for any anomalies you see or features you would like.
|
|
23
|
+
As of 2017-12-15, we are still working on making Fog for Google Compute engine (`Fog::Compute::Google`) feature complete. If you are using Fog to interact with GCE, please keep Fog up to date and [file issues](https://github.com/fog/fog-google/issues) for any anomalies you see or features you would like.
|
|
26
24
|
|
|
27
25
|
## SQL
|
|
28
26
|
|
|
29
|
-
Fog implements [
|
|
27
|
+
Fog implements [v1beta4](https://cloud.google.com/sql/docs/mysql/admin-api/v1beta4/) of the Google Cloud SQL Admin API. As of 2017-11-06, Cloud SQL is mostly feature-complete. Please [file issues](https://github.com/fog/fog-google/issues) for any anomalies you see or features you would like as we finish
|
|
28
|
+
adding remaining features.
|
|
30
29
|
|
|
31
30
|
## DNS
|
|
32
31
|
|
|
@@ -34,10 +33,7 @@ Fog implements [v1](https://cloud.google.com/dns/api/v1/) of the Google Cloud DN
|
|
|
34
33
|
|
|
35
34
|
## Monitoring
|
|
36
35
|
|
|
37
|
-
Fog
|
|
38
|
-
|
|
39
|
-
As of 2017-09-26, some less common API methods are missing and may be added as requested. Feature requests or pull requests for
|
|
40
|
-
additions are welcome.
|
|
36
|
+
Fog implements [v3](https://cloud.google.com/monitoring/api/v3/) of the Google Cloud Monitoring API. As of 2017-10-05, we believe Fog for Google Cloud Monitoring is feature complete for metric-related resources and are working on supporting groups.
|
|
41
37
|
|
|
42
38
|
We are always looking for people to improve our code and test coverage, so please [file issues](https://github.com/fog/fog-google/issues) for any anomalies you see or features you would like.
|
|
43
39
|
|
|
@@ -46,7 +42,7 @@ We are always looking for people to improve our code and test coverage, so pleas
|
|
|
46
42
|
Note: You **must** have a version of google-api-client > 0.8.5 to use the Pub/Sub API; previous versions will not work.
|
|
47
43
|
|
|
48
44
|
Fog mostly implements [v1](https://cloud.google.com/pubsub/reference/rest/) of the Google Cloud Pub/Sub API; however some less common API methods are missing. Pull requests for additions would be greatly appreciated.
|
|
49
|
-
|
|
45
|
+
|
|
50
46
|
## Installation
|
|
51
47
|
|
|
52
48
|
Add the following two lines to your application's `Gemfile`:
|
|
@@ -68,16 +64,22 @@ Or install it yourself as:
|
|
|
68
64
|
$ gem install fog-google
|
|
69
65
|
```
|
|
70
66
|
|
|
67
|
+
## Testing
|
|
68
|
+
|
|
69
|
+
The tests in `tests` are deprecated. We are currently working on a migration of tests to `minitest`.
|
|
70
|
+
|
|
71
|
+
For your test to be tested with real credentials, a repo maintainer may add the label `integrate` to your PR to run integration tests.
|
|
72
|
+
|
|
71
73
|
## Setup
|
|
72
74
|
|
|
73
75
|
#### Credentials
|
|
74
76
|
|
|
75
77
|
Follow the [instructions to generate a private key](https://cloud.google.com/storage/docs/authentication#generating-a-private-key). A sample credentials file can be found in `.fog.example` in this directory:
|
|
76
78
|
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
79
|
+
```
|
|
80
|
+
cat .fog.example >> ~/.fog # appends the sample configuration
|
|
81
|
+
vim ~/.fog # edit file with yout config
|
|
82
|
+
```
|
|
81
83
|
|
|
82
84
|
#### SSH-ing into instances
|
|
83
85
|
|
|
@@ -99,4 +101,4 @@ $ bundle exec pry
|
|
|
99
101
|
|
|
100
102
|
## Contributing
|
|
101
103
|
|
|
102
|
-
See `CONTRIBUTING.md` in this repository.
|
|
104
|
+
See `CONTRIBUTING.md` in this repository.
|
data/ci/.gitignore
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
credentials.yml
|
data/ci/README.md
ADDED
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
# fog-google CI
|
|
2
|
+
|
|
3
|
+
This pipeline performs two functions.
|
|
4
|
+
|
|
5
|
+
1. Performing an integration test of the
|
|
6
|
+
upgrade-google-client branch whenever new changes appear there.
|
|
7
|
+
|
|
8
|
+
1. Running integration tests against every PR with the
|
|
9
|
+
`integrate` label. This allows whitelisted PRs to be tested
|
|
10
|
+
automatically before being merged. Status is updated on the
|
|
11
|
+
PR when the test completes.
|
|
12
|
+
|
|
13
|
+
## Setup
|
|
14
|
+
|
|
15
|
+
In order to run the fog-google Concourse Pipeline you must have an existing
|
|
16
|
+
[Concourse](http://concourse.ci) environment.
|
|
17
|
+
See [Deploying Concourse on Google Compute Engine](https://github.com/cloudfoundry-incubator/bosh-google-cpi-release/blob/master/docs/deploy_concourse.md)
|
|
18
|
+
for instructions.
|
|
19
|
+
|
|
20
|
+
To deploy the pipeline:
|
|
21
|
+
|
|
22
|
+
* Download the `fly` binary from the Concourse web interface and place it in your `$PATH`.
|
|
23
|
+
|
|
24
|
+
* Login to your Concourse:
|
|
25
|
+
|
|
26
|
+
```
|
|
27
|
+
fly -t fog-google login -c <YOUR CONCOURSE URL>
|
|
28
|
+
```
|
|
29
|
+
|
|
30
|
+
* Update the [credentials.yml](https://github.com/fog/fog-google/blob/master/ci/credentials.yml.tpl)
|
|
31
|
+
file. See [Credentials Requirements](#credentials-requirements) for specific instructions.
|
|
32
|
+
|
|
33
|
+
* Set the fog-google pipeline:
|
|
34
|
+
|
|
35
|
+
```
|
|
36
|
+
fly -t fog-google set-pipeline -p fog-google -c pipeline.yml -l credentials.yml
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
* Unpause the fog-google pipeline:
|
|
40
|
+
|
|
41
|
+
```
|
|
42
|
+
fly -t fog-google unpause-pipeline -p fog-google
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## Credentials Requirements
|
|
46
|
+
|
|
47
|
+
Several external pieces of authentication are needed for credentials.yml
|
|
48
|
+
|
|
49
|
+
1. A JSON Service Account File for a service account with at least Editor access to the project.
|
|
50
|
+
* To get a Service Account File, see [here](https://developers.google.com/identity/protocols/OAuth2ServiceAccount#creatinganaccount)
|
|
51
|
+
and create using the Project/Editor role.
|
|
52
|
+
|
|
53
|
+
1. A [Github Access Token](https://github.com/blog/1509-personal-api-tokens) with at least
|
|
54
|
+
`repo:status` access and a private key with push access to the `fog/fog-google` repositoy.
|
|
55
|
+
|
|
56
|
+
These items are equivalent to your login credentials for their resources.
|
|
57
|
+
|
|
58
|
+
## Login Gotchas
|
|
59
|
+
|
|
60
|
+
* If your Concourse deployment is using a self-signed certificate, use `--insecure` to
|
|
61
|
+
trust the provided certificate.
|
|
62
|
+
|
|
63
|
+
* If logging into a specific team, ie `fog-google`, use `--team-name fog-google` to specify that.
|
|
64
|
+
|
|
65
|
+
## Dockerfile
|
|
66
|
+
|
|
67
|
+
The [docker-image](https://github.com/fog/fog-google/blob/master/ci/docker-image) directory contains
|
|
68
|
+
the Dockerfile necessary for recreating the Docker image used in tasks. This is referenced
|
|
69
|
+
in a per-task basis as `image_resource`, ie in
|
|
70
|
+
image_resource [run-int.yml](https://github.com/fog/fog-google/blob/master/ci/tasks/run-int.yml)
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
---
|
|
2
|
+
# Google Cloud Platform project to run under
|
|
3
|
+
google_project:
|
|
4
|
+
# Google Compute Engine Service Account email
|
|
5
|
+
google_client_email:
|
|
6
|
+
# Google Compute Engine Service Account JSON
|
|
7
|
+
google_json_key_data: |
|
|
8
|
+
|
|
9
|
+
# An access token with repo:status access
|
|
10
|
+
github_access_token:
|
|
11
|
+
# A SSH private key associated with the access token's account or
|
|
12
|
+
# a repo push deploy key
|
|
13
|
+
github_private_key: |
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
FROM ubuntu:16.04
|
|
2
|
+
|
|
3
|
+
# Packages
|
|
4
|
+
RUN DEBIAN_FRONTEND=noninteractive apt-get -y -qq update && apt-get -y -qq install \
|
|
5
|
+
build-essential \
|
|
6
|
+
curl \
|
|
7
|
+
git \
|
|
8
|
+
zlib1g-dev \
|
|
9
|
+
libssl-dev \
|
|
10
|
+
libreadline-dev \
|
|
11
|
+
libyaml-dev \
|
|
12
|
+
libxml2-dev \
|
|
13
|
+
libxslt-dev
|
|
14
|
+
|
|
15
|
+
# Ubuntu 16.04 will fetch us 2.3.x without any issues.
|
|
16
|
+
RUN DEBIAN_FRONTEND=noninteractive apt-get -y -qq install ruby ruby-dev
|
|
17
|
+
|
|
18
|
+
RUN apt-get clean
|
|
19
|
+
|
|
20
|
+
RUN gem install bundler
|
data/ci/pipeline.yml
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
jobs:
|
|
2
|
+
- name: base-int
|
|
3
|
+
plan:
|
|
4
|
+
- aggregate:
|
|
5
|
+
- {
|
|
6
|
+
get: fog-google-src, resource: fog-google-src-in, trigger: true
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
- task: full-integration-tests
|
|
10
|
+
file: fog-google-src/ci/tasks/run-int.yml
|
|
11
|
+
params:
|
|
12
|
+
google_project: {{google_project}}
|
|
13
|
+
google_json_key_data: {{google_json_key_data}}
|
|
14
|
+
google_client_email: {{google_client_email}}
|
|
15
|
+
|
|
16
|
+
- name: pr-int
|
|
17
|
+
plan:
|
|
18
|
+
- get: fog-google-src
|
|
19
|
+
resource: pull-request
|
|
20
|
+
version: every
|
|
21
|
+
trigger: true
|
|
22
|
+
- put: pull-request
|
|
23
|
+
params: {path: fog-google-src, status: pending}
|
|
24
|
+
|
|
25
|
+
- task: full-integration-tests
|
|
26
|
+
file: fog-google-src/ci/tasks/run-int.yml
|
|
27
|
+
params:
|
|
28
|
+
google_project: {{google_project}}
|
|
29
|
+
google_json_key_data: {{google_json_key_data}}
|
|
30
|
+
google_client_email: {{google_client_email}}
|
|
31
|
+
on_success:
|
|
32
|
+
put: pull-request
|
|
33
|
+
params:
|
|
34
|
+
path: fog-google-src
|
|
35
|
+
status: success
|
|
36
|
+
on_failure:
|
|
37
|
+
put: pull-request
|
|
38
|
+
params:
|
|
39
|
+
path: fog-google-src
|
|
40
|
+
status: failure
|
|
41
|
+
|
|
42
|
+
resources:
|
|
43
|
+
- name: fog-google-src-in
|
|
44
|
+
type: git
|
|
45
|
+
source:
|
|
46
|
+
uri: https://github.com/fog/fog-google.git
|
|
47
|
+
branch: upgrade-google-client
|
|
48
|
+
- name: pull-request
|
|
49
|
+
type: pull-request
|
|
50
|
+
source:
|
|
51
|
+
access_token: {{github_access_token}}
|
|
52
|
+
private_key: {{github_private_key}}
|
|
53
|
+
label: integrate
|
|
54
|
+
repo: fog/fog-google
|
|
55
|
+
|
|
56
|
+
resource_types:
|
|
57
|
+
# This is a third party resource.
|
|
58
|
+
# The referenced docker-image is maintained externally
|
|
59
|
+
# https://github.com/jtarchie/pullrequest-resource
|
|
60
|
+
- name: pull-request
|
|
61
|
+
type: docker-image
|
|
62
|
+
source:
|
|
63
|
+
repository: jtarchie/pr
|
data/ci/tasks/run-int.sh
ADDED
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
|
|
3
|
+
set -e
|
|
4
|
+
|
|
5
|
+
my_dir="$( cd $(dirname $0) && pwd )"
|
|
6
|
+
release_dir="$( cd ${my_dir} && cd ../.. && pwd )"
|
|
7
|
+
workspace_dir="$( cd ${release_dir} && cd ../../../.. && pwd )"
|
|
8
|
+
|
|
9
|
+
pushd ${release_dir} > /dev/null
|
|
10
|
+
|
|
11
|
+
source ci/tasks/utils.sh
|
|
12
|
+
|
|
13
|
+
popd > /dev/null
|
|
14
|
+
|
|
15
|
+
check_param google_project
|
|
16
|
+
check_param google_client_email
|
|
17
|
+
check_param google_json_key_data
|
|
18
|
+
|
|
19
|
+
echo $google_json_key_data > `pwd`/service_account_key.json
|
|
20
|
+
|
|
21
|
+
cat >~/.fog <<EOL
|
|
22
|
+
test:
|
|
23
|
+
google_project: ${google_project}
|
|
24
|
+
google_client_email: ${google_client_email}
|
|
25
|
+
google_json_key_location: `pwd`/service_account_key.json
|
|
26
|
+
EOL
|
|
27
|
+
|
|
28
|
+
pushd ${release_dir} > /dev/null
|
|
29
|
+
|
|
30
|
+
bundle install
|
|
31
|
+
|
|
32
|
+
FOG_MOCK=false rake test
|
|
33
|
+
|
|
34
|
+
popd > /dev/null
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
---
|
|
2
|
+
platform: linux
|
|
3
|
+
image_resource:
|
|
4
|
+
type: docker-image
|
|
5
|
+
source: {repository: everlag/fog-google}
|
|
6
|
+
inputs:
|
|
7
|
+
- name: fog-google-src
|
|
8
|
+
path: src/fog-google
|
|
9
|
+
run:
|
|
10
|
+
path: src/fog-google/ci/tasks/run-int.sh
|
|
11
|
+
params:
|
|
12
|
+
google_project: replace-me
|
|
13
|
+
google_client_email: replace-me
|
|
14
|
+
google_json_key_data: |
|
|
15
|
+
replace-me
|
data/ci/tasks/utils.sh
ADDED
data/examples/l7_load_balance.rb
CHANGED
|
@@ -16,31 +16,37 @@ def test
|
|
|
16
16
|
:name => "fog-l7-resource-view-1",
|
|
17
17
|
:numMembers => 1,
|
|
18
18
|
:members => [instance1.self_link],
|
|
19
|
-
:zone => "us-central1-a"
|
|
19
|
+
:zone => "us-central1-a"
|
|
20
|
+
)
|
|
20
21
|
resource_view1.add_resources(instance1.self_link)
|
|
21
22
|
resource_view2 = connection.resource_views.create(
|
|
22
23
|
:name => "fog-l7-resource-view-2",
|
|
23
24
|
:numMembers => 1,
|
|
24
25
|
:members => [instance2.self_link],
|
|
25
|
-
:zone => "us-central1-a"
|
|
26
|
+
:zone => "us-central1-a"
|
|
27
|
+
)
|
|
26
28
|
resource_view2.add_resources(instance2.self_link)
|
|
27
29
|
resource_view3 = connection.resource_views.create(
|
|
28
30
|
:name => "fog-l7-resource-view-3",
|
|
29
31
|
:members => [instance3.self_link],
|
|
30
|
-
:zone => "us-central1-b"
|
|
32
|
+
:zone => "us-central1-b"
|
|
33
|
+
)
|
|
31
34
|
resource_view3.add_resources(instance3.self_link)
|
|
32
35
|
backend_service1 = connection.backend_services.create(
|
|
33
36
|
:name => "fog-l7-backend-service-1",
|
|
34
37
|
:health_checks => [health.self_link],
|
|
35
|
-
:backends => [{ "balancingMode" => "RATE", "maxRate" => 100, "group" => resource_view1.self_link }]
|
|
38
|
+
:backends => [{ "balancingMode" => "RATE", "maxRate" => 100, "group" => resource_view1.self_link }]
|
|
39
|
+
)
|
|
36
40
|
backend_service2 = connection.backend_services.create(
|
|
37
41
|
:name => "fog-l7-backend-service-2",
|
|
38
42
|
:health_checks => [health.self_link],
|
|
39
|
-
:backends => [{ "balancingMode" => "RATE", "maxRate" => 100, "group" => resource_view2.self_link }]
|
|
43
|
+
:backends => [{ "balancingMode" => "RATE", "maxRate" => 100, "group" => resource_view2.self_link }]
|
|
44
|
+
)
|
|
40
45
|
backend_service3 = connection.backend_services.create(
|
|
41
46
|
:name => "fog-l7-backend-service-3",
|
|
42
47
|
:health_checks => [health.self_link],
|
|
43
|
-
:backends => [{ "balancingMode" => "RATE", "maxRate" => 100, "group" => resource_view3.self_link }]
|
|
48
|
+
:backends => [{ "balancingMode" => "RATE", "maxRate" => 100, "group" => resource_view3.self_link }]
|
|
49
|
+
)
|
|
44
50
|
url_map = connection.url_maps.create(
|
|
45
51
|
:name => "fog-l7-url-map",
|
|
46
52
|
:pathMatchers => [{
|
|
@@ -62,10 +68,12 @@ def test
|
|
|
62
68
|
]
|
|
63
69
|
}],
|
|
64
70
|
:hostRules => [{ "hosts" => ["*"], "pathMatcher" => "pathmatcher" }],
|
|
65
|
-
:default_service => backend_service1.self_link
|
|
71
|
+
:default_service => backend_service1.self_link
|
|
72
|
+
)
|
|
66
73
|
proxy = connection.target_http_proxies.create(
|
|
67
74
|
:name => "fog-l7-proxy",
|
|
68
|
-
:url_map => url_map.self_link
|
|
75
|
+
:url_map => url_map.self_link
|
|
76
|
+
)
|
|
69
77
|
|
|
70
78
|
connection.global_forwarding_rules.create(:name => "fog-l7-fwd-rule", :target => proxy.self_link)
|
|
71
79
|
end
|
data/examples/metadata.rb
CHANGED
|
@@ -26,7 +26,8 @@ def test
|
|
|
26
26
|
:machine_type => "n1-standard-1",
|
|
27
27
|
:zone_name => "us-central1-f",
|
|
28
28
|
:private_key_path => File.expand_path("~/.ssh/id_rsa"),
|
|
29
|
-
:public_key_path => File.expand_path("~/.ssh/id_rsa.pub")
|
|
29
|
+
:public_key_path => File.expand_path("~/.ssh/id_rsa.pub")
|
|
30
|
+
)
|
|
30
31
|
|
|
31
32
|
server.wait_for { ready? }
|
|
32
33
|
|
|
@@ -9,8 +9,8 @@ Bundler.require(:default, :development)
|
|
|
9
9
|
def test
|
|
10
10
|
connection = Fog::Google::Monitoring.new
|
|
11
11
|
interval = {
|
|
12
|
-
:start_time => (
|
|
13
|
-
:end_time =>
|
|
12
|
+
:start_time => (Time.now - 1).rfc3339,
|
|
13
|
+
:end_time => Time.now.to_datetime.rfc3339
|
|
14
14
|
}
|
|
15
15
|
puts "Listing Timeseries from the last hour for metric compute.googleapis.com/instance/uptime..."
|
|
16
16
|
puts "-------------------------------------------------------------------------------"
|