ey-core 3.4.5 → 3.6.0.autoscaling1
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/.gitignore +23 -26
- data/.ruby-gemset +1 -1
- data/.ruby-version +1 -1
- data/.travis.yml +23 -23
- data/CHANGELOG.md +174 -166
- data/Dockerfile +3 -0
- data/Gemfile +21 -21
- data/Guardfile +15 -15
- data/LICENSE.txt +19 -19
- data/README.md +78 -78
- data/Rakefile +18 -18
- data/bin/ey-core +4 -4
- data/examples/add_instance.rb +74 -74
- data/examples/boot_env.rb +60 -60
- data/examples/console/README.md +14 -14
- data/examples/console/address.md +51 -51
- data/examples/stop_env.rb +51 -51
- data/examples/terminate_instance.rb +62 -62
- data/ey-core.gemspec +51 -51
- data/features/accounts.feature +13 -13
- data/features/applications.feature +29 -29
- data/features/current_user.feature +14 -14
- data/features/environment_variables.feature +54 -0
- data/features/environments.feature +30 -30
- data/features/init.feature +6 -6
- data/features/login.feature +6 -6
- data/features/scp.feature +6 -6
- data/features/step_definitions/accounts_steps.rb +37 -23
- data/features/step_definitions/applications_steps.rb +39 -46
- data/features/step_definitions/current_user_steps.rb +11 -11
- data/features/step_definitions/deprecated_command_steps.rb +3 -3
- data/features/step_definitions/environment_variables_steps.rb +51 -0
- data/features/step_definitions/environments_steps.rb +52 -37
- data/features/step_definitions/version_steps.rb +3 -3
- data/features/support/account_helpers.rb +89 -89
- data/features/support/app_helpers.rb +19 -19
- data/features/support/aruba.rb +1 -1
- data/features/support/boilerplate.rb +1 -1
- data/features/support/client_helpers.rb +36 -36
- data/features/support/config_file_helpers.rb +42 -42
- data/features/support/core.rb +19 -19
- data/features/support/deployment_helpers.rb +19 -19
- data/features/support/env.rb +40 -40
- data/features/support/environment_helpers.rb +23 -23
- data/features/support/environment_variable_helpers.rb +20 -0
- data/features/support/fake_kernel.rb +23 -23
- data/features/support/io.rb +5 -5
- data/features/support/mock_api.rb +21 -21
- data/features/support/output_helpers.rb +7 -7
- data/features/support/resource_helpers.rb +201 -189
- data/features/support/server_helpers.rb +27 -27
- data/features/version.feature +8 -8
- data/features/whoami.feature +14 -14
- data/lib/ey-core/associations.rb +155 -155
- data/lib/ey-core/cli/accounts.rb +17 -17
- data/lib/ey-core/cli/applications.rb +36 -36
- data/lib/ey-core/cli/console.rb +28 -28
- data/lib/ey-core/cli/current_user.rb +16 -16
- data/lib/ey-core/cli/deploy.rb +123 -123
- data/lib/ey-core/cli/environment_variables.rb +71 -0
- data/lib/ey-core/cli/environments.rb +39 -39
- data/lib/ey-core/cli/errors.rb +11 -11
- data/lib/ey-core/cli/help.rb +30 -30
- data/lib/ey-core/cli/helpers/archive.rb +70 -70
- data/lib/ey-core/cli/helpers/chef.rb +51 -51
- data/lib/ey-core/cli/helpers/core.rb +225 -196
- data/lib/ey-core/cli/helpers/deprecated.rb +39 -39
- data/lib/ey-core/cli/helpers/log_streaming.rb +41 -41
- data/lib/ey-core/cli/helpers/server_sieve.rb +76 -76
- data/lib/ey-core/cli/helpers/stream_printer.rb +42 -42
- data/lib/ey-core/cli/init.rb +14 -14
- data/lib/ey-core/cli/login.rb +38 -38
- data/lib/ey-core/cli/logout.rb +22 -22
- data/lib/ey-core/cli/logs.rb +70 -70
- data/lib/ey-core/cli/main.rb +67 -65
- data/lib/ey-core/cli/recipes/apply.rb +65 -65
- data/lib/ey-core/cli/recipes/download.rb +52 -52
- data/lib/ey-core/cli/recipes/main.rb +21 -21
- data/lib/ey-core/cli/recipes/upload.rb +78 -78
- data/lib/ey-core/cli/recipes.rb +10 -10
- data/lib/ey-core/cli/scp.rb +14 -14
- data/lib/ey-core/cli/servers.rb +58 -41
- data/lib/ey-core/cli/ssh.rb +150 -150
- data/lib/ey-core/cli/status.rb +60 -60
- data/lib/ey-core/cli/subcommand.rb +53 -53
- data/lib/ey-core/cli/timeout_deploy.rb +58 -58
- data/lib/ey-core/cli/version.rb +16 -16
- data/lib/ey-core/cli/web/disable.rb +49 -49
- data/lib/ey-core/cli/web/enable.rb +46 -46
- data/lib/ey-core/cli/web/main.rb +21 -21
- data/lib/ey-core/cli/web/restart.rb +42 -42
- data/lib/ey-core/cli/web.rb +10 -10
- data/lib/ey-core/cli/whoami.rb +12 -12
- data/lib/ey-core/cli.rb +8 -8
- data/lib/ey-core/client/mock.rb +306 -302
- data/lib/ey-core/client/real.rb +93 -93
- data/lib/ey-core/client.rb +468 -442
- data/lib/ey-core/collection.rb +131 -131
- data/lib/ey-core/collections/account_cancellations.rb +6 -6
- data/lib/ey-core/collections/account_referrals.rb +10 -10
- data/lib/ey-core/collections/accounts.rb +8 -8
- data/lib/ey-core/collections/addons.rb +16 -16
- data/lib/ey-core/collections/addresses.rb +9 -9
- data/lib/ey-core/collections/alerts.rb +9 -9
- data/lib/ey-core/collections/application_archives.rb +9 -9
- data/lib/ey-core/collections/application_deployments.rb +9 -9
- data/lib/ey-core/collections/applications.rb +9 -9
- data/lib/ey-core/collections/auto_scaling_alarms.rb +8 -0
- data/lib/ey-core/collections/auto_scaling_groups.rb +8 -8
- data/lib/ey-core/collections/auto_scaling_policies.rb +33 -0
- data/lib/ey-core/collections/backup_files.rb +9 -9
- data/lib/ey-core/collections/blueprints.rb +9 -9
- data/lib/ey-core/collections/components.rb +9 -9
- data/lib/ey-core/collections/contacts.rb +9 -9
- data/lib/ey-core/collections/container_clusters.rb +9 -0
- data/lib/ey-core/collections/container_service_deployments.rb +17 -0
- data/lib/ey-core/collections/costs.rb +8 -8
- data/lib/ey-core/collections/database_plan_usages.rb +7 -7
- data/lib/ey-core/collections/database_server_revisions.rb +7 -7
- data/lib/ey-core/collections/database_server_snapshots.rb +17 -17
- data/lib/ey-core/collections/database_server_usages.rb +7 -7
- data/lib/ey-core/collections/database_servers.rb +9 -9
- data/lib/ey-core/collections/database_services.rb +9 -9
- data/lib/ey-core/collections/deployments.rb +8 -8
- data/lib/ey-core/collections/environment_plan_usages.rb +7 -7
- data/lib/ey-core/collections/environment_variables.rb +8 -0
- data/lib/ey-core/collections/environments.rb +15 -15
- data/lib/ey-core/collections/features.rb +9 -9
- data/lib/ey-core/collections/firewall_rules.rb +9 -9
- data/lib/ey-core/collections/firewalls.rb +9 -9
- data/lib/ey-core/collections/gems.rb +6 -6
- data/lib/ey-core/collections/keypair_deployments.rb +9 -9
- data/lib/ey-core/collections/keypairs.rb +9 -9
- data/lib/ey-core/collections/legacy_alerts.rb +9 -9
- data/lib/ey-core/collections/load_balancer_nodes.rb +9 -9
- data/lib/ey-core/collections/load_balancer_services.rb +9 -9
- data/lib/ey-core/collections/load_balancers.rb +16 -16
- data/lib/ey-core/collections/logical_databases.rb +16 -16
- data/lib/ey-core/collections/logs.rb +9 -9
- data/lib/ey-core/collections/memberships.rb +9 -9
- data/lib/ey-core/collections/messages.rb +9 -9
- data/lib/ey-core/collections/plan_usages.rb +7 -7
- data/lib/ey-core/collections/provider_locations.rb +13 -13
- data/lib/ey-core/collections/providers.rb +15 -15
- data/lib/ey-core/collections/requests.rb +10 -10
- data/lib/ey-core/collections/server_events.rb +9 -9
- data/lib/ey-core/collections/server_usages.rb +7 -7
- data/lib/ey-core/collections/servers.rb +13 -13
- data/lib/ey-core/collections/services.rb +14 -14
- data/lib/ey-core/collections/ssl_certificates.rb +9 -9
- data/lib/ey-core/collections/storage_users.rb +10 -10
- data/lib/ey-core/collections/storages.rb +9 -9
- data/lib/ey-core/collections/tasks.rb +9 -9
- data/lib/ey-core/collections/tokens.rb +9 -9
- data/lib/ey-core/collections/untracked_addresses.rb +4 -4
- data/lib/ey-core/collections/untracked_servers.rb +9 -9
- data/lib/ey-core/collections/users.rb +12 -12
- data/lib/ey-core/collections/volumes.rb +9 -9
- data/lib/ey-core/logger.rb +31 -31
- data/lib/ey-core/memory_cache.rb +17 -17
- data/lib/ey-core/mock/helper.rb +104 -104
- data/lib/ey-core/mock/params.rb +31 -31
- data/lib/ey-core/mock/resources.rb +92 -92
- data/lib/ey-core/mock/searching.rb +115 -115
- data/lib/ey-core/mock/util.rb +23 -23
- data/lib/ey-core/model.rb +44 -44
- data/lib/ey-core/models/account.rb +70 -70
- data/lib/ey-core/models/account_cancellation.rb +6 -6
- data/lib/ey-core/models/account_referral.rb +8 -8
- data/lib/ey-core/models/account_trial.rb +15 -15
- data/lib/ey-core/models/addon.rb +37 -37
- data/lib/ey-core/models/address.rb +59 -57
- data/lib/ey-core/models/alert.rb +99 -100
- data/lib/ey-core/models/application.rb +33 -32
- data/lib/ey-core/models/application_archive.rb +67 -67
- data/lib/ey-core/models/application_deployment.rb +18 -18
- data/lib/ey-core/models/auto_scaling_alarm.rb +54 -0
- data/lib/ey-core/models/auto_scaling_group.rb +75 -49
- data/lib/ey-core/models/backup_file.rb +52 -52
- data/lib/ey-core/models/base_auto_scaling_policy.rb +61 -0
- data/lib/ey-core/models/billing.rb +27 -27
- data/lib/ey-core/models/blueprint.rb +30 -30
- data/lib/ey-core/models/component.rb +11 -11
- data/lib/ey-core/models/contact.rb +14 -14
- data/lib/ey-core/models/container_service_deployment.rb +17 -0
- data/lib/ey-core/models/cost.rb +16 -16
- data/lib/ey-core/models/database_plan_usage.rb +10 -10
- data/lib/ey-core/models/database_server.rb +56 -56
- data/lib/ey-core/models/database_server_revision.rb +10 -10
- data/lib/ey-core/models/database_server_snapshot.rb +43 -43
- data/lib/ey-core/models/database_server_usage.rb +15 -15
- data/lib/ey-core/models/database_service.rb +52 -52
- data/lib/ey-core/models/deployment.rb +30 -30
- data/lib/ey-core/models/environment.rb +248 -242
- data/lib/ey-core/models/environment_plan_usage.rb +10 -10
- data/lib/ey-core/models/environment_variable.rb +29 -0
- data/lib/ey-core/models/feature.rb +33 -33
- data/lib/ey-core/models/firewall.rb +46 -46
- data/lib/ey-core/models/firewall_rule.rb +41 -41
- data/lib/ey-core/models/gem.rb +5 -5
- data/lib/ey-core/models/keypair.rb +38 -38
- data/lib/ey-core/models/keypair_deployment.rb +26 -26
- data/lib/ey-core/models/legacy_alert.rb +12 -12
- data/lib/ey-core/models/load_balancer.rb +43 -43
- data/lib/ey-core/models/load_balancer_node.rb +17 -17
- data/lib/ey-core/models/load_balancer_service.rb +22 -22
- data/lib/ey-core/models/log.rb +44 -44
- data/lib/ey-core/models/logical_database.rb +40 -40
- data/lib/ey-core/models/membership.rb +49 -49
- data/lib/ey-core/models/message.rb +27 -27
- data/lib/ey-core/models/plan_usage.rb +14 -14
- data/lib/ey-core/models/provider.rb +59 -59
- data/lib/ey-core/models/provider_location.rb +24 -24
- data/lib/ey-core/models/request.rb +109 -105
- data/lib/ey-core/models/server.rb +151 -151
- data/lib/ey-core/models/server_event.rb +11 -11
- data/lib/ey-core/models/server_usage.rb +15 -15
- data/lib/ey-core/models/service.rb +10 -10
- data/lib/ey-core/models/simple_auto_scaling_policy.rb +24 -0
- data/lib/ey-core/models/ssl_certificate.rb +44 -44
- data/lib/ey-core/models/step_auto_scaling_policy.rb +24 -0
- data/lib/ey-core/models/storage.rb +38 -38
- data/lib/ey-core/models/storage_user.rb +44 -44
- data/lib/ey-core/models/support_trial.rb +10 -10
- data/lib/ey-core/models/target_auto_scaling_policy.rb +24 -0
- data/lib/ey-core/models/task.rb +35 -35
- data/lib/ey-core/models/token.rb +24 -24
- data/lib/ey-core/models/untracked_address.rb +24 -24
- data/lib/ey-core/models/untracked_server.rb +45 -45
- data/lib/ey-core/models/user.rb +39 -39
- data/lib/ey-core/models/volume.rb +20 -20
- data/lib/ey-core/request.rb +21 -21
- data/lib/ey-core/request_failure.rb +11 -11
- data/lib/ey-core/requests/acknowledge_alert.rb +29 -29
- data/lib/ey-core/requests/apply_environment_updates.rb +54 -54
- data/lib/ey-core/requests/apply_server_updates.rb +52 -52
- data/lib/ey-core/requests/attach_address.rb +53 -53
- data/lib/ey-core/requests/authorized_channel.rb +22 -22
- data/lib/ey-core/requests/blueprint_environment.rb +72 -72
- data/lib/ey-core/requests/boot_environment.rb +187 -187
- data/lib/ey-core/requests/bootstrap_logical_database.rb +80 -80
- data/lib/ey-core/requests/cancel_account.rb +33 -33
- data/lib/ey-core/requests/change_environment_maintenance.rb +38 -38
- data/lib/ey-core/requests/create_account.rb +38 -33
- data/lib/ey-core/requests/create_addon.rb +35 -35
- data/lib/ey-core/requests/create_address.rb +54 -53
- data/lib/ey-core/requests/create_alert.rb +63 -63
- data/lib/ey-core/requests/create_application.rb +73 -72
- data/lib/ey-core/requests/create_application_archive.rb +44 -44
- data/lib/ey-core/requests/create_auto_scaling_alarm.rb +69 -0
- data/lib/ey-core/requests/create_auto_scaling_group.rb +62 -62
- data/lib/ey-core/requests/create_auto_scaling_policy.rb +68 -0
- data/lib/ey-core/requests/create_backup_file.rb +52 -52
- data/lib/ey-core/requests/create_database_server.rb +72 -72
- data/lib/ey-core/requests/create_database_service.rb +57 -57
- data/lib/ey-core/requests/create_database_service_snapshot.rb +69 -69
- data/lib/ey-core/requests/create_environment.rb +77 -76
- data/lib/ey-core/requests/create_environment_variable.rb +39 -0
- data/lib/ey-core/requests/create_firewall.rb +62 -62
- data/lib/ey-core/requests/create_firewall_rule.rb +60 -60
- data/lib/ey-core/requests/create_keypair.rb +42 -42
- data/lib/ey-core/requests/create_keypair_deployment.rb +36 -36
- data/lib/ey-core/requests/create_load_balancer.rb +62 -62
- data/lib/ey-core/requests/create_log.rb +53 -53
- data/lib/ey-core/requests/create_logical_database.rb +56 -56
- data/lib/ey-core/requests/create_membership.rb +47 -47
- data/lib/ey-core/requests/create_message.rb +35 -35
- data/lib/ey-core/requests/create_password_reset.rb +38 -38
- data/lib/ey-core/requests/create_provider.rb +90 -90
- data/lib/ey-core/requests/create_server.rb +121 -121
- data/lib/ey-core/requests/create_ssl_certificate.rb +83 -83
- data/lib/ey-core/requests/create_storage.rb +64 -64
- data/lib/ey-core/requests/create_storage_user.rb +64 -64
- data/lib/ey-core/requests/create_task.rb +55 -55
- data/lib/ey-core/requests/create_token.rb +24 -24
- data/lib/ey-core/requests/create_untracked_address.rb +50 -50
- data/lib/ey-core/requests/create_untracked_server.rb +39 -39
- data/lib/ey-core/requests/create_user.rb +54 -52
- data/lib/ey-core/requests/deploy_environment_application.rb +60 -60
- data/lib/ey-core/requests/deprovision_environment.rb +17 -17
- data/lib/ey-core/requests/destroy_addon.rb +24 -24
- data/lib/ey-core/requests/destroy_auto_scaling_alarm.rb +49 -0
- data/lib/ey-core/requests/destroy_auto_scaling_group.rb +44 -44
- data/lib/ey-core/requests/destroy_auto_scaling_policy.rb +49 -0
- data/lib/ey-core/requests/destroy_blueprint.rb +22 -22
- data/lib/ey-core/requests/destroy_database_server.rb +41 -41
- data/lib/ey-core/requests/destroy_database_server_snapshot.rb +42 -42
- data/lib/ey-core/requests/destroy_database_service.rb +57 -57
- data/lib/ey-core/requests/destroy_environment.rb +43 -43
- data/lib/ey-core/requests/destroy_firewall.rb +41 -41
- data/lib/ey-core/requests/destroy_firewall_rule.rb +41 -41
- data/lib/ey-core/requests/destroy_load_balancer.rb +30 -30
- data/lib/ey-core/requests/destroy_logical_database.rb +41 -41
- data/lib/ey-core/requests/destroy_provider.rb +34 -34
- data/lib/ey-core/requests/destroy_server.rb +48 -48
- data/lib/ey-core/requests/destroy_ssl_certificate.rb +28 -28
- data/lib/ey-core/requests/destroy_storage.rb +33 -33
- data/lib/ey-core/requests/destroy_storage_user.rb +38 -38
- data/lib/ey-core/requests/destroy_user.rb +29 -29
- data/lib/ey-core/requests/detach_address.rb +48 -48
- data/lib/ey-core/requests/disable_feature.rb +30 -30
- data/lib/ey-core/requests/discover_container_service_deployments.rb +71 -0
- data/lib/ey-core/requests/discover_database_server.rb +66 -66
- data/lib/ey-core/requests/discover_database_server_snapshots.rb +69 -69
- data/lib/ey-core/requests/discover_provider_location.rb +57 -57
- data/lib/ey-core/requests/discover_server.rb +60 -60
- data/lib/ey-core/requests/download_file.rb +25 -25
- data/lib/ey-core/requests/enable_feature.rb +35 -35
- data/lib/ey-core/requests/get_account.rb +29 -29
- data/lib/ey-core/requests/get_account_cancellation.rb +21 -21
- data/lib/ey-core/requests/get_account_referrals.rb +28 -28
- data/lib/ey-core/requests/get_account_trial.rb +32 -32
- data/lib/ey-core/requests/get_accounts.rb +42 -42
- data/lib/ey-core/requests/get_addon.rb +25 -25
- data/lib/ey-core/requests/get_addons.rb +24 -24
- data/lib/ey-core/requests/get_address.rb +25 -25
- data/lib/ey-core/requests/get_addresses.rb +27 -27
- data/lib/ey-core/requests/get_alert.rb +21 -21
- data/lib/ey-core/requests/get_alerting_environments.rb +41 -41
- data/lib/ey-core/requests/get_alerts.rb +44 -44
- data/lib/ey-core/requests/get_api_token.rb +19 -19
- data/lib/ey-core/requests/get_application.rb +21 -21
- data/lib/ey-core/requests/get_application_archive.rb +32 -32
- data/lib/ey-core/requests/get_application_archives.rb +29 -29
- data/lib/ey-core/requests/get_application_deployment.rb +21 -21
- data/lib/ey-core/requests/get_application_deployments.rb +28 -28
- data/lib/ey-core/requests/get_applications.rb +28 -28
- data/lib/ey-core/requests/get_auto_scaling_alarm.rb +27 -0
- data/lib/ey-core/requests/get_auto_scaling_alarms.rb +34 -0
- data/lib/ey-core/requests/get_auto_scaling_group.rb +21 -21
- data/lib/ey-core/requests/get_auto_scaling_groups.rb +29 -29
- data/lib/ey-core/requests/get_auto_scaling_policies.rb +46 -0
- data/lib/ey-core/requests/get_auto_scaling_policy.rb +27 -0
- data/lib/ey-core/requests/get_backup_file.rb +21 -21
- data/lib/ey-core/requests/get_backup_files.rb +28 -28
- data/lib/ey-core/requests/get_billing.rb +24 -24
- data/lib/ey-core/requests/get_blueprint.rb +21 -21
- data/lib/ey-core/requests/get_blueprints.rb +29 -29
- data/lib/ey-core/requests/get_component.rb +21 -21
- data/lib/ey-core/requests/get_components.rb +29 -29
- data/lib/ey-core/requests/get_contacts.rb +34 -34
- data/lib/ey-core/requests/get_costs.rb +25 -25
- data/lib/ey-core/requests/get_current_user.rb +19 -19
- data/lib/ey-core/requests/get_database_plan_usages.rb +24 -24
- data/lib/ey-core/requests/get_database_server.rb +21 -21
- data/lib/ey-core/requests/get_database_server_revisions.rb +27 -27
- data/lib/ey-core/requests/get_database_server_snapshot.rb +20 -20
- data/lib/ey-core/requests/get_database_server_snapshots.rb +39 -39
- data/lib/ey-core/requests/get_database_server_usages.rb +24 -24
- data/lib/ey-core/requests/get_database_servers.rb +30 -30
- data/lib/ey-core/requests/get_database_servers_firewalls.rb +30 -30
- data/lib/ey-core/requests/get_database_service.rb +20 -20
- data/lib/ey-core/requests/get_database_services.rb +55 -55
- data/lib/ey-core/requests/get_deployment.rb +19 -19
- data/lib/ey-core/requests/get_deployments.rb +29 -29
- data/lib/ey-core/requests/get_environment.rb +21 -21
- data/lib/ey-core/requests/get_environment_database_services.rb +21 -21
- data/lib/ey-core/requests/get_environment_logical_databases.rb +20 -20
- data/lib/ey-core/requests/get_environment_plan_usages.rb +24 -24
- data/lib/ey-core/requests/get_environment_variable.rb +19 -0
- data/lib/ey-core/requests/get_environment_variables.rb +29 -0
- data/lib/ey-core/requests/get_environments.rb +29 -29
- data/lib/ey-core/requests/get_feature.rb +21 -21
- data/lib/ey-core/requests/get_features.rb +28 -28
- data/lib/ey-core/requests/get_firewall.rb +21 -21
- data/lib/ey-core/requests/get_firewall_rule.rb +21 -21
- data/lib/ey-core/requests/get_firewall_rules.rb +29 -29
- data/lib/ey-core/requests/get_firewalls.rb +45 -45
- data/lib/ey-core/requests/get_gem.rb +24 -24
- data/lib/ey-core/requests/get_keypair.rb +21 -21
- data/lib/ey-core/requests/get_keypair_deployment.rb +21 -21
- data/lib/ey-core/requests/get_keypair_deployments.rb +29 -29
- data/lib/ey-core/requests/get_keypairs.rb +34 -34
- data/lib/ey-core/requests/get_legacy_alert.rb +21 -21
- data/lib/ey-core/requests/get_legacy_alerts.rb +29 -29
- data/lib/ey-core/requests/get_load_balancer.rb +21 -21
- data/lib/ey-core/requests/get_load_balancer_node.rb +21 -21
- data/lib/ey-core/requests/get_load_balancer_nodes.rb +30 -30
- data/lib/ey-core/requests/get_load_balancer_service.rb +21 -21
- data/lib/ey-core/requests/get_load_balancer_services.rb +30 -30
- data/lib/ey-core/requests/get_load_balancers.rb +29 -29
- data/lib/ey-core/requests/get_log.rb +21 -21
- data/lib/ey-core/requests/get_logical_database.rb +23 -23
- data/lib/ey-core/requests/get_logical_databases.rb +36 -36
- data/lib/ey-core/requests/get_logs.rb +37 -37
- data/lib/ey-core/requests/get_membership.rb +21 -21
- data/lib/ey-core/requests/get_memberships.rb +29 -29
- data/lib/ey-core/requests/get_message.rb +28 -28
- data/lib/ey-core/requests/get_messages.rb +27 -27
- data/lib/ey-core/requests/get_metadata.rb +22 -22
- data/lib/ey-core/requests/get_operational_contact.rb +21 -21
- data/lib/ey-core/requests/get_operational_contacts.rb +20 -20
- data/lib/ey-core/requests/get_plan_usages.rb +24 -24
- data/lib/ey-core/requests/get_possible_provider_locations.rb +19 -19
- data/lib/ey-core/requests/get_provider.rb +21 -21
- data/lib/ey-core/requests/get_provider_location.rb +29 -29
- data/lib/ey-core/requests/get_provider_locations.rb +28 -28
- data/lib/ey-core/requests/get_providers.rb +28 -28
- data/lib/ey-core/requests/get_request.rb +71 -71
- data/lib/ey-core/requests/get_requests.rb +29 -29
- data/lib/ey-core/requests/get_server.rb +34 -34
- data/lib/ey-core/requests/get_server_event.rb +20 -20
- data/lib/ey-core/requests/get_server_events.rb +28 -28
- data/lib/ey-core/requests/get_server_usages.rb +24 -24
- data/lib/ey-core/requests/get_servers.rb +25 -25
- data/lib/ey-core/requests/get_ssl_certificate.rb +23 -23
- data/lib/ey-core/requests/get_ssl_certificates.rb +28 -28
- data/lib/ey-core/requests/get_storage.rb +21 -21
- data/lib/ey-core/requests/get_storage_user.rb +21 -21
- data/lib/ey-core/requests/get_storage_users.rb +28 -28
- data/lib/ey-core/requests/get_storages.rb +28 -28
- data/lib/ey-core/requests/get_support_trial.rb +51 -51
- data/lib/ey-core/requests/get_task.rb +21 -21
- data/lib/ey-core/requests/get_tasks.rb +28 -28
- data/lib/ey-core/requests/get_token.rb +21 -21
- data/lib/ey-core/requests/get_token_by_login.rb +30 -30
- data/lib/ey-core/requests/get_tokens.rb +32 -32
- data/lib/ey-core/requests/get_untracked_server.rb +18 -18
- data/lib/ey-core/requests/get_untracked_servers.rb +24 -24
- data/lib/ey-core/requests/get_user.rb +21 -21
- data/lib/ey-core/requests/get_users.rb +42 -42
- data/lib/ey-core/requests/get_volume.rb +21 -21
- data/lib/ey-core/requests/get_volumes.rb +28 -28
- data/lib/ey-core/requests/reboot_server.rb +39 -39
- data/lib/ey-core/requests/reconcile_server.rb +39 -39
- data/lib/ey-core/requests/request_callback.rb +26 -26
- data/lib/ey-core/requests/reset_password.rb +31 -31
- data/lib/ey-core/requests/reset_server_state.rb +32 -32
- data/lib/ey-core/requests/restart_environment_app_servers.rb +38 -38
- data/lib/ey-core/requests/run_cluster_application_action.rb +28 -28
- data/lib/ey-core/requests/run_environment_application_action.rb +29 -29
- data/lib/ey-core/requests/signup.rb +56 -56
- data/lib/ey-core/requests/start_server.rb +39 -39
- data/lib/ey-core/requests/stop_server.rb +39 -39
- data/lib/ey-core/requests/timeout_deployment.rb +27 -27
- data/lib/ey-core/requests/unassign_environment.rb +31 -31
- data/lib/ey-core/requests/update_addon.rb +28 -28
- data/lib/ey-core/requests/update_address.rb +29 -29
- data/lib/ey-core/requests/update_alert.rb +32 -32
- data/lib/ey-core/requests/update_application_archive.rb +23 -23
- data/lib/ey-core/requests/update_auto_scaling_alarm.rb +45 -0
- data/lib/ey-core/requests/update_auto_scaling_group.rb +45 -45
- data/lib/ey-core/requests/update_auto_scaling_policy.rb +46 -0
- data/lib/ey-core/requests/update_billing.rb +26 -26
- data/lib/ey-core/requests/update_blueprint.rb +29 -29
- data/lib/ey-core/requests/update_connector.rb +32 -32
- data/lib/ey-core/requests/update_environment.rb +17 -17
- data/lib/ey-core/requests/update_environment_variable.rb +25 -0
- data/lib/ey-core/requests/update_membership.rb +29 -29
- data/lib/ey-core/requests/update_provider_location.rb +29 -29
- data/lib/ey-core/requests/update_server.rb +29 -29
- data/lib/ey-core/requests/update_ssl_certificate.rb +25 -25
- data/lib/ey-core/requests/update_untracked_server.rb +24 -24
- data/lib/ey-core/requests/upload_file.rb +44 -44
- data/lib/ey-core/requests/upload_recipes_for_environment.rb +28 -28
- data/lib/ey-core/response.rb +59 -59
- data/lib/ey-core/response_cache.rb +29 -29
- data/lib/ey-core/subscribable.rb +60 -60
- data/lib/ey-core/test_helpers/account_helpers.rb +73 -73
- data/lib/ey-core/test_helpers/alert_helpers.rb +16 -16
- data/lib/ey-core/test_helpers/auto_scaling_helpers.rb +35 -0
- data/lib/ey-core/test_helpers/client_helpers.rb +40 -40
- data/lib/ey-core/test_helpers/cucumber.rb +3 -3
- data/lib/ey-core/test_helpers/resource_helpers.rb +196 -196
- data/lib/ey-core/test_helpers/rspec.rb +5 -5
- data/lib/ey-core/test_helpers.rb +17 -15
- data/lib/ey-core/token_authentication.rb +13 -13
- data/lib/ey-core/version.rb +5 -5
- data/lib/ey-core.rb +59 -59
- data/spec/account_spec.rb +65 -65
- data/spec/account_trial_spec.rb +17 -17
- data/spec/accounts_referrals_spec.rb +20 -20
- data/spec/accounts_spec.rb +113 -113
- data/spec/addons_and_vars_spec.rb +62 -62
- data/spec/addresses_spec.rb +57 -56
- data/spec/alerts_spec.rb +155 -155
- data/spec/application_archives_spec.rb +39 -39
- data/spec/applications_spec.rb +65 -65
- data/spec/auto_scaling_alarms_spec.rb +40 -0
- data/spec/auto_scaling_groups_spec.rb +28 -28
- data/spec/auto_scaling_policies_spec.rb +94 -0
- data/spec/billing_spec.rb +31 -31
- data/spec/blueprints_spec.rb +47 -47
- data/spec/client_spec.rb +16 -16
- data/spec/collection_spec.rb +43 -43
- data/spec/costs_spec.rb +22 -22
- data/spec/database_plan_usage_spec.rb +39 -39
- data/spec/database_server_snapshots_spec.rb +41 -41
- data/spec/database_server_usage_spec.rb +49 -49
- data/spec/database_servers_spec.rb +61 -61
- data/spec/database_services_spec.rb +76 -76
- data/spec/deployments_spec.rb +24 -24
- data/spec/environment_plan_usage_spec.rb +38 -38
- data/spec/environments_spec.rb +212 -212
- data/spec/ey-core/cli/accounts_spec.rb +20 -20
- data/spec/ey-core/cli/helpers/server_sieve_spec.rb +226 -226
- data/spec/ey-core/cli/recipes/apply_spec.rb +34 -34
- data/spec/ey-core/cli/recipes/download_spec.rb +93 -93
- data/spec/ey-core/cli/recipes/upload_spec.rb +80 -80
- data/spec/features_spec.rb +79 -79
- data/spec/firewalls_spec.rb +84 -84
- data/spec/gems_spec.rb +11 -11
- data/spec/keypair_deployments_spec.rb +33 -33
- data/spec/keypairs_spec.rb +51 -51
- data/spec/legacy_alerts_spec.rb +44 -44
- data/spec/load_balancers_spec.rb +31 -31
- data/spec/logical_databases_spec.rb +38 -38
- data/spec/logs_spec.rb +44 -44
- data/spec/memberships_spec.rb +73 -73
- data/spec/messages_spec.rb +27 -27
- data/spec/metadata_spec.rb +11 -11
- data/spec/plan_usage_spec.rb +65 -65
- data/spec/provider_locations_spec.rb +85 -85
- data/spec/providers_spec.rb +105 -105
- data/spec/requests/upload_file_spec.rb +25 -25
- data/spec/requests_spec.rb +23 -23
- data/spec/reset_password_spec.rb +22 -22
- data/spec/server_events_spec.rb +31 -31
- data/spec/server_usage_spec.rb +70 -70
- data/spec/servers_spec.rb +202 -202
- data/spec/services_spec.rb +9 -9
- data/spec/signups_spec.rb +45 -45
- data/spec/spec_helper.rb +27 -20
- data/spec/ssl_certificates_spec.rb +94 -94
- data/spec/storages_spec.rb +57 -57
- data/spec/support/cli_helpers.rb +47 -47
- data/spec/support/core.rb +23 -23
- data/spec/support/coverage.rb +43 -43
- data/spec/support/fake_kernel.rb +21 -21
- data/spec/support/helpers.rb +1 -1
- data/spec/support/timecop.rb +8 -8
- data/spec/support_trial_spec.rb +33 -33
- data/spec/tokens_spec.rb +59 -59
- data/spec/untracked_servers_spec.rb +59 -59
- data/spec/users_spec.rb +108 -108
- metadata +46 -8
- data/bin/console +0 -4
data/examples/stop_env.rb
CHANGED
@@ -1,51 +1,51 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
|
3
|
-
# Very basic example of how to stop a given environment.
|
4
|
-
# For more info visit http://developer.engineyard.com
|
5
|
-
|
6
|
-
require 'ey-core'
|
7
|
-
require 'optparse'
|
8
|
-
require 'yaml'
|
9
|
-
|
10
|
-
options = {}
|
11
|
-
OptionParser.new do |opts|
|
12
|
-
opts.banner = "Usage: stop_env.rb [options]"
|
13
|
-
|
14
|
-
opts.on('-a', '--account NAME', 'Account name') { |v| options[:account_name] = v }
|
15
|
-
opts.on('-e', '--environment NAME', 'Environment name') { |v| options[:environment_name] = v }
|
16
|
-
|
17
|
-
end.parse!
|
18
|
-
|
19
|
-
# Token comes from '~/.eyrc'
|
20
|
-
eyrc = YAML.load_file(File.expand_path("~/.eyrc"))
|
21
|
-
|
22
|
-
client = Ey::Core::Client.new(token: eyrc['api_token'])
|
23
|
-
|
24
|
-
# Account name as shown in cloud.engineyard.com
|
25
|
-
account = client.accounts.first(name: options[:account_name])
|
26
|
-
|
27
|
-
# Environment's name
|
28
|
-
environment = account.environments.first(name: options[:environment_name])
|
29
|
-
|
30
|
-
if environment.servers.count == 0 then
|
31
|
-
puts "Environment doesn't have instances running, are you sure it isn't stopped already?"
|
32
|
-
exit
|
33
|
-
end
|
34
|
-
|
35
|
-
puts "Stopping environment #{environment.name}...."
|
36
|
-
deprovision_request = environment.deprovision
|
37
|
-
|
38
|
-
# Stoping the environment with a timeout of 1200sec.
|
39
|
-
# Adjust as necessary depending of the size of the environment.
|
40
|
-
deprovision_request.ready!(1200)
|
41
|
-
|
42
|
-
puts "-------------------"
|
43
|
-
|
44
|
-
if !deprovision_request.successful? then
|
45
|
-
puts "Stop environment FAILED!!!"
|
46
|
-
puts "Check cloud.engineyard.com for more details"
|
47
|
-
exit
|
48
|
-
end
|
49
|
-
|
50
|
-
puts "Stop environment SUCCEDED!!!"
|
51
|
-
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
# Very basic example of how to stop a given environment.
|
4
|
+
# For more info visit http://developer.engineyard.com
|
5
|
+
|
6
|
+
require 'ey-core'
|
7
|
+
require 'optparse'
|
8
|
+
require 'yaml'
|
9
|
+
|
10
|
+
options = {}
|
11
|
+
OptionParser.new do |opts|
|
12
|
+
opts.banner = "Usage: stop_env.rb [options]"
|
13
|
+
|
14
|
+
opts.on('-a', '--account NAME', 'Account name') { |v| options[:account_name] = v }
|
15
|
+
opts.on('-e', '--environment NAME', 'Environment name') { |v| options[:environment_name] = v }
|
16
|
+
|
17
|
+
end.parse!
|
18
|
+
|
19
|
+
# Token comes from '~/.eyrc'
|
20
|
+
eyrc = YAML.load_file(File.expand_path("~/.eyrc"))
|
21
|
+
|
22
|
+
client = Ey::Core::Client.new(token: eyrc['api_token'])
|
23
|
+
|
24
|
+
# Account name as shown in cloud.engineyard.com
|
25
|
+
account = client.accounts.first(name: options[:account_name])
|
26
|
+
|
27
|
+
# Environment's name
|
28
|
+
environment = account.environments.first(name: options[:environment_name])
|
29
|
+
|
30
|
+
if environment.servers.count == 0 then
|
31
|
+
puts "Environment doesn't have instances running, are you sure it isn't stopped already?"
|
32
|
+
exit
|
33
|
+
end
|
34
|
+
|
35
|
+
puts "Stopping environment #{environment.name}...."
|
36
|
+
deprovision_request = environment.deprovision
|
37
|
+
|
38
|
+
# Stoping the environment with a timeout of 1200sec.
|
39
|
+
# Adjust as necessary depending of the size of the environment.
|
40
|
+
deprovision_request.ready!(1200)
|
41
|
+
|
42
|
+
puts "-------------------"
|
43
|
+
|
44
|
+
if !deprovision_request.successful? then
|
45
|
+
puts "Stop environment FAILED!!!"
|
46
|
+
puts "Check cloud.engineyard.com for more details"
|
47
|
+
exit
|
48
|
+
end
|
49
|
+
|
50
|
+
puts "Stop environment SUCCEDED!!!"
|
51
|
+
|
@@ -1,62 +1,62 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
|
3
|
-
# Very basic example of how to terminate a given instance in a given environment.
|
4
|
-
# For more info visit http://developer.engineyard.com
|
5
|
-
|
6
|
-
require 'ey-core'
|
7
|
-
require 'optparse'
|
8
|
-
require 'yaml'
|
9
|
-
|
10
|
-
options = {}
|
11
|
-
OptionParser.new do |opts|
|
12
|
-
opts.banner = "Usage: terminate_instance.rb [options]"
|
13
|
-
|
14
|
-
opts.on('-a', '--account NAME', 'Account name') { |v| options[:account_name] = v }
|
15
|
-
opts.on('-e', '--environment NAME', 'Environment name') { |v| options[:environment_name] = v }
|
16
|
-
opts.on('-n', '--iname NAME', 'Instance name') { |v| options[:instance_name] = v }
|
17
|
-
opts.on('-s', '--skip_snapshot', 'Skip snapshotting the volumes') { |v| options[:skip_snapshot] = true }
|
18
|
-
|
19
|
-
end.parse!
|
20
|
-
|
21
|
-
# Token comes from '~/.eyrc'
|
22
|
-
eyrc = YAML.load_file(File.expand_path("~/.eyrc"))
|
23
|
-
|
24
|
-
client = Ey::Core::Client.new(token: eyrc['api_token'])
|
25
|
-
|
26
|
-
# Account name as shown in cloud.engineyard.com
|
27
|
-
account = client.accounts.first(name: options[:account_name])
|
28
|
-
|
29
|
-
# Environment's name
|
30
|
-
environment = account.environments.first(name: options[:environment_name])
|
31
|
-
|
32
|
-
# Instance's name
|
33
|
-
instance_name = options[:instance_name]
|
34
|
-
|
35
|
-
# Skip snapshot
|
36
|
-
skip_snapshot = options[:skip_snapshot] ? true : false
|
37
|
-
|
38
|
-
puts "Terminating instance #{instance_name} on environment #{environment.name}...."
|
39
|
-
|
40
|
-
servers = environment.servers.select{|s| s.name == instance_name}
|
41
|
-
if !servers then
|
42
|
-
puts "Couldn't find instance #{instance_name} on environment #{environment.name}!!!!"
|
43
|
-
puts "Check cloud.engineyard.com for more details"
|
44
|
-
exit
|
45
|
-
end
|
46
|
-
|
47
|
-
server = servers[0]
|
48
|
-
deprovision_request = server.destroy!(skip_snapshot)
|
49
|
-
if !deprovision_request then
|
50
|
-
puts "Termination of instance #{instance_name} FAILED!!!!"
|
51
|
-
puts "Check cloud.engineyard.com for more details"
|
52
|
-
exit
|
53
|
-
end
|
54
|
-
|
55
|
-
# Terminating the instance with a timeout of 1200sec (20min) as a ballpark figure.
|
56
|
-
# Adjust as necessary depending of the size/role of the instance.
|
57
|
-
deprovision_request.ready!(1200)
|
58
|
-
|
59
|
-
puts "*"
|
60
|
-
puts "Instance #{instance_name} terminated successfully"
|
61
|
-
puts "-------------------"
|
62
|
-
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
# Very basic example of how to terminate a given instance in a given environment.
|
4
|
+
# For more info visit http://developer.engineyard.com
|
5
|
+
|
6
|
+
require 'ey-core'
|
7
|
+
require 'optparse'
|
8
|
+
require 'yaml'
|
9
|
+
|
10
|
+
options = {}
|
11
|
+
OptionParser.new do |opts|
|
12
|
+
opts.banner = "Usage: terminate_instance.rb [options]"
|
13
|
+
|
14
|
+
opts.on('-a', '--account NAME', 'Account name') { |v| options[:account_name] = v }
|
15
|
+
opts.on('-e', '--environment NAME', 'Environment name') { |v| options[:environment_name] = v }
|
16
|
+
opts.on('-n', '--iname NAME', 'Instance name') { |v| options[:instance_name] = v }
|
17
|
+
opts.on('-s', '--skip_snapshot', 'Skip snapshotting the volumes') { |v| options[:skip_snapshot] = true }
|
18
|
+
|
19
|
+
end.parse!
|
20
|
+
|
21
|
+
# Token comes from '~/.eyrc'
|
22
|
+
eyrc = YAML.load_file(File.expand_path("~/.eyrc"))
|
23
|
+
|
24
|
+
client = Ey::Core::Client.new(token: eyrc['api_token'])
|
25
|
+
|
26
|
+
# Account name as shown in cloud.engineyard.com
|
27
|
+
account = client.accounts.first(name: options[:account_name])
|
28
|
+
|
29
|
+
# Environment's name
|
30
|
+
environment = account.environments.first(name: options[:environment_name])
|
31
|
+
|
32
|
+
# Instance's name
|
33
|
+
instance_name = options[:instance_name]
|
34
|
+
|
35
|
+
# Skip snapshot
|
36
|
+
skip_snapshot = options[:skip_snapshot] ? true : false
|
37
|
+
|
38
|
+
puts "Terminating instance #{instance_name} on environment #{environment.name}...."
|
39
|
+
|
40
|
+
servers = environment.servers.select{|s| s.name == instance_name}
|
41
|
+
if !servers then
|
42
|
+
puts "Couldn't find instance #{instance_name} on environment #{environment.name}!!!!"
|
43
|
+
puts "Check cloud.engineyard.com for more details"
|
44
|
+
exit
|
45
|
+
end
|
46
|
+
|
47
|
+
server = servers[0]
|
48
|
+
deprovision_request = server.destroy!(skip_snapshot)
|
49
|
+
if !deprovision_request then
|
50
|
+
puts "Termination of instance #{instance_name} FAILED!!!!"
|
51
|
+
puts "Check cloud.engineyard.com for more details"
|
52
|
+
exit
|
53
|
+
end
|
54
|
+
|
55
|
+
# Terminating the instance with a timeout of 1200sec (20min) as a ballpark figure.
|
56
|
+
# Adjust as necessary depending of the size/role of the instance.
|
57
|
+
deprovision_request.ready!(1200)
|
58
|
+
|
59
|
+
puts "*"
|
60
|
+
puts "Instance #{instance_name} terminated successfully"
|
61
|
+
puts "-------------------"
|
62
|
+
|
data/ey-core.gemspec
CHANGED
@@ -1,51 +1,51 @@
|
|
1
|
-
# -*- encoding: utf-8 -*-
|
2
|
-
lib = File.expand_path('../lib', __FILE__)
|
3
|
-
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
-
require 'ey-core/version'
|
5
|
-
|
6
|
-
Gem::Specification.new do |gem|
|
7
|
-
gem.name = "ey-core"
|
8
|
-
gem.version = Ey::Core::VERSION
|
9
|
-
gem.authors = ["Engine Yard Engineering"]
|
10
|
-
gem.email = ["engineering@engineyard.com"]
|
11
|
-
gem.description = %q{Engine Yard Core API Ruby Client}
|
12
|
-
gem.summary = %q{Client library providing real and mock functionality for accessing Engine Yard's Core API}
|
13
|
-
gem.homepage = "
|
14
|
-
|
15
|
-
gem.files = `git ls-files`.split($/)
|
16
|
-
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
17
|
-
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
18
|
-
gem.require_paths = ["lib"]
|
19
|
-
gem.licenses = ["MIT"]
|
20
|
-
|
21
|
-
gem.required_ruby_version = ">= 2.2.2"
|
22
|
-
|
23
|
-
gem.add_dependency "addressable"
|
24
|
-
|
25
|
-
gem.add_dependency "awesome_print"
|
26
|
-
gem.add_dependency "belafonte"
|
27
|
-
gem.add_dependency "cistern", "~> 0.12.3"
|
28
|
-
gem.add_dependency "colorize"
|
29
|
-
gem.add_dependency "ey-hmac", "~> 2.0"
|
30
|
-
gem.add_dependency "escape"
|
31
|
-
gem.add_dependency "faraday", "~> 0.9"
|
32
|
-
gem.add_dependency "faraday_middleware", "~> 0.9"
|
33
|
-
gem.add_dependency "rack"
|
34
|
-
gem.add_dependency "faye"
|
35
|
-
gem.add_dependency "highline"
|
36
|
-
gem.add_dependency "json", "< 2.0"
|
37
|
-
gem.add_dependency "mime-types"
|
38
|
-
gem.add_dependency "oj"
|
39
|
-
gem.add_dependency "oj_mimic_json"
|
40
|
-
gem.add_dependency "pry"
|
41
|
-
gem.add_dependency "sshkey", "~> 1.6"
|
42
|
-
gem.add_dependency "table_print"
|
43
|
-
|
44
|
-
gem.add_development_dependency "pry-nav"
|
45
|
-
gem.add_development_dependency "rspec", "~> 3.0"
|
46
|
-
gem.add_development_dependency "ffaker"
|
47
|
-
gem.add_development_dependency "rake"
|
48
|
-
gem.add_development_dependency "aruba", "~> 0.11"
|
49
|
-
gem.add_development_dependency "cucumber", "~> 2.1"
|
50
|
-
gem.add_development_dependency "factis", "~> 1.0"
|
51
|
-
end
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'ey-core/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |gem|
|
7
|
+
gem.name = "ey-core"
|
8
|
+
gem.version = Ey::Core::VERSION
|
9
|
+
gem.authors = ["Engine Yard Engineering"]
|
10
|
+
gem.email = ["engineering@engineyard.com"]
|
11
|
+
gem.description = %q{Engine Yard Core API Ruby Client}
|
12
|
+
gem.summary = %q{Client library providing real and mock functionality for accessing Engine Yard's Core API}
|
13
|
+
gem.homepage = ""
|
14
|
+
|
15
|
+
gem.files = `git ls-files`.split($/)
|
16
|
+
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
17
|
+
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
18
|
+
gem.require_paths = ["lib"]
|
19
|
+
gem.licenses = ["MIT"]
|
20
|
+
|
21
|
+
gem.required_ruby_version = ">= 2.2.2"
|
22
|
+
|
23
|
+
gem.add_dependency "addressable"
|
24
|
+
|
25
|
+
gem.add_dependency "awesome_print"
|
26
|
+
gem.add_dependency "belafonte"
|
27
|
+
gem.add_dependency "cistern", "~> 0.12.3"
|
28
|
+
gem.add_dependency "colorize"
|
29
|
+
gem.add_dependency "ey-hmac", "~> 2.0"
|
30
|
+
gem.add_dependency "escape"
|
31
|
+
gem.add_dependency "faraday", "~> 0.9"
|
32
|
+
gem.add_dependency "faraday_middleware", "~> 0.9"
|
33
|
+
gem.add_dependency "rack"
|
34
|
+
gem.add_dependency "faye"
|
35
|
+
gem.add_dependency "highline"
|
36
|
+
gem.add_dependency "json", "< 2.0"
|
37
|
+
gem.add_dependency "mime-types"
|
38
|
+
gem.add_dependency "oj"
|
39
|
+
gem.add_dependency "oj_mimic_json"
|
40
|
+
gem.add_dependency "pry"
|
41
|
+
gem.add_dependency "sshkey", "~> 1.6"
|
42
|
+
gem.add_dependency "table_print"
|
43
|
+
|
44
|
+
gem.add_development_dependency "pry-nav"
|
45
|
+
gem.add_development_dependency "rspec", "~> 3.0"
|
46
|
+
gem.add_development_dependency "ffaker"
|
47
|
+
gem.add_development_dependency "rake"
|
48
|
+
gem.add_development_dependency "aruba", "~> 0.11"
|
49
|
+
gem.add_development_dependency "cucumber", "~> 2.1"
|
50
|
+
gem.add_development_dependency "factis", "~> 1.0"
|
51
|
+
end
|
data/features/accounts.feature
CHANGED
@@ -1,13 +1,13 @@
|
|
1
|
-
Feature: Accounts
|
2
|
-
In order to know what Engine Yard accounts I can access
|
3
|
-
As a User
|
4
|
-
I want to be able to list the accounts with which I'm associated
|
5
|
-
|
6
|
-
Background:
|
7
|
-
Given I'm an Engine Yard user
|
8
|
-
And ey-core is configured with my cloud token
|
9
|
-
And I'm associated with several accounts
|
10
|
-
|
11
|
-
Scenario: Listing my accounts
|
12
|
-
When I run `ey-core accounts`
|
13
|
-
Then I see the name and ID of each of my accounts
|
1
|
+
Feature: Accounts
|
2
|
+
In order to know what Engine Yard accounts I can access
|
3
|
+
As a User
|
4
|
+
I want to be able to list the accounts with which I'm associated
|
5
|
+
|
6
|
+
Background:
|
7
|
+
Given I'm an Engine Yard user
|
8
|
+
And ey-core is configured with my cloud token
|
9
|
+
And I'm associated with several accounts
|
10
|
+
|
11
|
+
Scenario: Listing my accounts
|
12
|
+
When I run `ey-core accounts`
|
13
|
+
Then I see the name and ID of each of my accounts
|
@@ -1,29 +1,29 @@
|
|
1
|
-
Feature: Applications
|
2
|
-
In order to determine what I can work with
|
3
|
-
As a User
|
4
|
-
I want to be able to list the applications that live in my accounts
|
5
|
-
|
6
|
-
Background:
|
7
|
-
Given I'm an Engine Yard user
|
8
|
-
And ey-core is configured with my cloud token
|
9
|
-
And I have the following accounts:
|
10
|
-
| Account Name |
|
11
|
-
| one |
|
12
|
-
| two |
|
13
|
-
| three |
|
14
|
-
And each of my accounts has several applications
|
15
|
-
|
16
|
-
Scenario: Listing all of my applications
|
17
|
-
When I run `ey-core applications`
|
18
|
-
Then I see the name and ID for all of my applications
|
19
|
-
|
20
|
-
Scenario Outline: Listing applications for a specific account
|
21
|
-
When I run `ey-core applications <Account Flag> one`
|
22
|
-
Then I see the applications in the one account
|
23
|
-
But I do not see applications from other accounts
|
24
|
-
|
25
|
-
Examples:
|
26
|
-
| Account Flag |
|
27
|
-
| -a |
|
28
|
-
| --account |
|
29
|
-
|
1
|
+
Feature: Applications
|
2
|
+
In order to determine what I can work with
|
3
|
+
As a User
|
4
|
+
I want to be able to list the applications that live in my accounts
|
5
|
+
|
6
|
+
Background:
|
7
|
+
Given I'm an Engine Yard user
|
8
|
+
And ey-core is configured with my cloud token
|
9
|
+
And I have the following accounts:
|
10
|
+
| Account Name |
|
11
|
+
| one |
|
12
|
+
| two |
|
13
|
+
| three |
|
14
|
+
And each of my accounts has several applications
|
15
|
+
|
16
|
+
Scenario: Listing all of my applications
|
17
|
+
When I run `ey-core applications`
|
18
|
+
Then I see the name and ID for all of my applications
|
19
|
+
|
20
|
+
Scenario Outline: Listing applications for a specific account
|
21
|
+
When I run `ey-core applications <Account Flag> one`
|
22
|
+
Then I see the applications in the one account
|
23
|
+
But I do not see applications from other accounts
|
24
|
+
|
25
|
+
Examples:
|
26
|
+
| Account Flag |
|
27
|
+
| -a |
|
28
|
+
| --account |
|
29
|
+
|
@@ -1,14 +1,14 @@
|
|
1
|
-
Feature: Current User
|
2
|
-
In order to ensure that I'm logged into the right account
|
3
|
-
As a User
|
4
|
-
I want to be able to see my user information
|
5
|
-
|
6
|
-
Background:
|
7
|
-
Given I'm an Engine Yard user
|
8
|
-
And ey-core is configured with my cloud token
|
9
|
-
|
10
|
-
Scenario: Getting the current user information
|
11
|
-
When I run `ey-core current_user`
|
12
|
-
Then I should see my user ID
|
13
|
-
And I should see my email address
|
14
|
-
And I should see my name
|
1
|
+
Feature: Current User
|
2
|
+
In order to ensure that I'm logged into the right account
|
3
|
+
As a User
|
4
|
+
I want to be able to see my user information
|
5
|
+
|
6
|
+
Background:
|
7
|
+
Given I'm an Engine Yard user
|
8
|
+
And ey-core is configured with my cloud token
|
9
|
+
|
10
|
+
Scenario: Getting the current user information
|
11
|
+
When I run `ey-core current_user`
|
12
|
+
Then I should see my user ID
|
13
|
+
And I should see my email address
|
14
|
+
And I should see my name
|
@@ -0,0 +1,54 @@
|
|
1
|
+
Feature: Environment Variables
|
2
|
+
In order to know current values of environment variables assigned to my Engine Yard environments
|
3
|
+
As a User
|
4
|
+
I want to be able to list the environment variables for environments which I'm associated
|
5
|
+
|
6
|
+
Background:
|
7
|
+
Given I'm an Engine Yard user
|
8
|
+
And ey-core is configured with my cloud token
|
9
|
+
And I have the following accounts:
|
10
|
+
| Account Name |
|
11
|
+
| one |
|
12
|
+
| two |
|
13
|
+
| three |
|
14
|
+
And I have the following applications:
|
15
|
+
| Account Name | Application Name |
|
16
|
+
| one | blog_app |
|
17
|
+
| two | todo_app |
|
18
|
+
And I have the following environments:
|
19
|
+
| Application Name | Environment Name |
|
20
|
+
| blog_app | staging |
|
21
|
+
| blog_app | production |
|
22
|
+
| todo_app | staging |
|
23
|
+
And I have the following environment variables:
|
24
|
+
| Name | Value | Application Name | Environment Name | Sensitive |
|
25
|
+
| SECRET_BASE | abc= | blog_app | staging | false |
|
26
|
+
| DB_PASSWORD | 123qweasd!! | blog_app | staging | true |
|
27
|
+
| SECRET_BASE | qwe= | blog_app | production | false |
|
28
|
+
| DB_PASSWORD | 987qweasd!! | blog_app | production | true |
|
29
|
+
| DB_PASSWORD | my_secure_password | todo_app | staging | true |
|
30
|
+
|
31
|
+
Scenario: Listing all of my environment variables
|
32
|
+
When I run `ey-core environment_variables`
|
33
|
+
Then I see the name and value for all of my environments as well as name of associated environment and application
|
34
|
+
|
35
|
+
Scenario Outline: Listing environment variables for a specific environment
|
36
|
+
When I run `ey-core environment_variables <Environment Flag> staging`
|
37
|
+
Then I see the environment variables associated with `staging` environment
|
38
|
+
But I do not see environment variables associated with any other environments different from `staging`
|
39
|
+
|
40
|
+
Examples:
|
41
|
+
| Environment Flag |
|
42
|
+
| -e |
|
43
|
+
| --environment |
|
44
|
+
|
45
|
+
Scenario Outline: Listing environment variables for a specific application
|
46
|
+
When I run `ey-core environment_variables <Application Flag> blog_app`
|
47
|
+
Then I see the environment variables associated with `blog_app` application
|
48
|
+
But I do not see environment variables associated with any other applications different from `blog_app`
|
49
|
+
|
50
|
+
Examples:
|
51
|
+
| Application Flag |
|
52
|
+
| -a |
|
53
|
+
| --application |
|
54
|
+
|
@@ -1,30 +1,30 @@
|
|
1
|
-
Feature: Environments
|
2
|
-
In order to know what Engine Yard environments I can access
|
3
|
-
As a User
|
4
|
-
I want to be able to list the environments with which I'm associated
|
5
|
-
|
6
|
-
Background:
|
7
|
-
Given I'm an Engine Yard user
|
8
|
-
And ey-core is configured with my cloud token
|
9
|
-
And I have the following accounts:
|
10
|
-
| Account Name |
|
11
|
-
| one |
|
12
|
-
| two |
|
13
|
-
| three |
|
14
|
-
And each of my accounts has several applications
|
15
|
-
And each of my applications has an environment
|
16
|
-
|
17
|
-
Scenario: Listing all of my environments
|
18
|
-
When I run `ey-core environments`
|
19
|
-
Then I see the name and ID for all of my environments
|
20
|
-
|
21
|
-
Scenario Outline: Listing environments for a specific account
|
22
|
-
When I run `ey-core environments <Account Flag> one`
|
23
|
-
Then I see the environments in the one account
|
24
|
-
But I do not see environments from other accounts
|
25
|
-
|
26
|
-
Examples:
|
27
|
-
| Account Flag |
|
28
|
-
| -a |
|
29
|
-
| --account |
|
30
|
-
|
1
|
+
Feature: Environments
|
2
|
+
In order to know what Engine Yard environments I can access
|
3
|
+
As a User
|
4
|
+
I want to be able to list the environments with which I'm associated
|
5
|
+
|
6
|
+
Background:
|
7
|
+
Given I'm an Engine Yard user
|
8
|
+
And ey-core is configured with my cloud token
|
9
|
+
And I have the following accounts:
|
10
|
+
| Account Name |
|
11
|
+
| one |
|
12
|
+
| two |
|
13
|
+
| three |
|
14
|
+
And each of my accounts has several applications
|
15
|
+
And each of my applications has an environment
|
16
|
+
|
17
|
+
Scenario: Listing all of my environments
|
18
|
+
When I run `ey-core environments`
|
19
|
+
Then I see the name and ID for all of my environments
|
20
|
+
|
21
|
+
Scenario Outline: Listing environments for a specific account
|
22
|
+
When I run `ey-core environments <Account Flag> one`
|
23
|
+
Then I see the environments in the one account
|
24
|
+
But I do not see environments from other accounts
|
25
|
+
|
26
|
+
Examples:
|
27
|
+
| Account Flag |
|
28
|
+
| -a |
|
29
|
+
| --account |
|
30
|
+
|
data/features/init.feature
CHANGED
@@ -1,6 +1,6 @@
|
|
1
|
-
Feature: Init
|
2
|
-
This command is deprecated
|
3
|
-
|
4
|
-
Scenario: Running init
|
5
|
-
When I run `ey-core init`
|
6
|
-
Then I am advised that this command has been deprecated
|
1
|
+
Feature: Init
|
2
|
+
This command is deprecated
|
3
|
+
|
4
|
+
Scenario: Running init
|
5
|
+
When I run `ey-core init`
|
6
|
+
Then I am advised that this command has been deprecated
|
data/features/login.feature
CHANGED
@@ -1,6 +1,6 @@
|
|
1
|
-
Feature: Login
|
2
|
-
In order to interact with Engine Yard Cloud
|
3
|
-
As a User
|
4
|
-
I want to be able to log into the Cloud API
|
5
|
-
|
6
|
-
|
1
|
+
Feature: Login
|
2
|
+
In order to interact with Engine Yard Cloud
|
3
|
+
As a User
|
4
|
+
I want to be able to log into the Cloud API
|
5
|
+
|
6
|
+
|
data/features/scp.feature
CHANGED
@@ -1,6 +1,6 @@
|
|
1
|
-
Feature: Scp
|
2
|
-
This command is deprecated
|
3
|
-
|
4
|
-
Scenario: Running init
|
5
|
-
When I run `ey-core init`
|
6
|
-
Then I am advised that this command has been deprecated
|
1
|
+
Feature: Scp
|
2
|
+
This command is deprecated
|
3
|
+
|
4
|
+
Scenario: Running init
|
5
|
+
When I run `ey-core init`
|
6
|
+
Then I am advised that this command has been deprecated
|