├── .envrc ├── .gitignore ├── .ruby-version ├── CHANGELOG.md ├── Gemfile ├── Gemfile.lock ├── LICENSE ├── Makefile ├── NOTICE ├── README.md ├── ci ├── README.md ├── README_zh.md ├── assets │ ├── e2e-test-release │ │ ├── README.md │ │ ├── cloud-config.yml │ │ ├── config │ │ │ ├── blobs.yml │ │ │ └── final.yml │ │ ├── jobs │ │ │ ├── slb-registration-test │ │ │ │ ├── monit │ │ │ │ ├── spec │ │ │ │ └── templates │ │ │ │ │ └── run.erb │ │ │ └── spot-instance-test │ │ │ │ ├── monit │ │ │ │ ├── spec │ │ │ │ └── templates │ │ │ │ └── run.erb │ │ ├── manifest.yml │ │ ├── packages │ │ │ ├── aliyuncli │ │ │ │ ├── packaging │ │ │ │ └── spec │ │ │ └── jq │ │ │ │ ├── packaging │ │ │ │ └── spec │ │ └── src │ │ │ └── .gitkeep │ └── terraform │ │ └── terraform.tf ├── configure ├── docker │ └── boshcpi.alicloud-cpi-release │ │ ├── Dockerfile │ │ ├── README.md │ │ └── build-image.sh ├── pipeline-develop.yml ├── pipeline.yml └── tasks │ ├── build-candidate.sh │ ├── build-candidate.yml │ ├── ensure-terminated.sh │ ├── ensure-terminated.yml │ ├── promote-candidate.sh │ ├── promote-candidate.yml │ ├── put-environment.sh │ ├── put-environment.yml │ ├── run-e2e.sh │ ├── run-e2e.yml │ ├── run-integration.sh │ ├── run-integration.yml │ ├── unit-tests.sh │ ├── unit-tests.yml │ └── utils.sh ├── config ├── blobs.yml └── final.yml ├── docs ├── bosh │ ├── alicloud-cpi.md │ ├── cloud-config.yml │ ├── cpi.yml │ ├── init-alicloud.md │ └── releases-in-china.yml └── cf │ ├── install-cf-china.md │ └── install-cf.md ├── jobs └── alicloud_cpi │ ├── monit │ ├── spec │ └── templates │ ├── bin │ ├── cpi.erb │ └── pre-start.erb │ └── config │ └── cpi.json.erb ├── packages ├── bosh-alicloud-cpi │ ├── packaging │ └── spec └── golang │ ├── packaging │ └── spec ├── releases └── bosh-alicloud-cpi │ ├── bosh-alicloud-cpi-1.yml │ ├── bosh-alicloud-cpi-10.yml │ ├── bosh-alicloud-cpi-11.yml │ ├── bosh-alicloud-cpi-12.yml │ ├── bosh-alicloud-cpi-13.yml │ ├── bosh-alicloud-cpi-14.yml │ ├── bosh-alicloud-cpi-15.yml │ ├── bosh-alicloud-cpi-16.yml │ ├── bosh-alicloud-cpi-17.yml │ ├── bosh-alicloud-cpi-18.yml │ ├── bosh-alicloud-cpi-2.yml │ ├── bosh-alicloud-cpi-24.0.0.yml │ ├── bosh-alicloud-cpi-25.0.0.yml │ ├── bosh-alicloud-cpi-26.0.0.yml │ ├── bosh-alicloud-cpi-27.0.0.yml │ ├── bosh-alicloud-cpi-28.0.0.yml │ ├── bosh-alicloud-cpi-29.0.0.yml │ ├── bosh-alicloud-cpi-3.yml │ ├── bosh-alicloud-cpi-30.0.0.yml │ ├── bosh-alicloud-cpi-32.0.0.yml │ ├── bosh-alicloud-cpi-33.0.0.yml │ ├── bosh-alicloud-cpi-4.yml │ ├── bosh-alicloud-cpi-5.yml │ ├── bosh-alicloud-cpi-6.yml │ ├── bosh-alicloud-cpi-7.yml │ ├── bosh-alicloud-cpi-8.yml │ ├── bosh-alicloud-cpi-9.yml │ └── index.yml ├── scripts ├── check-ruby-version └── test-unit-erb ├── setup-ginkgo ├── spec └── jobs │ └── cpi.json.erb_spec.rb ├── src ├── Makefile └── bosh-alicloud-cpi │ ├── action │ ├── actions_suite_test.go │ ├── attach_disk.go │ ├── attach_disk_test.go │ ├── calculate_vm_properties.go │ ├── call_context.go │ ├── caller.go │ ├── caller_test.go │ ├── create_disk.go │ ├── create_disk_test.go │ ├── create_stemcell.go │ ├── create_stemcell_test.go │ ├── create_vm.go │ ├── create_vm_test.go │ ├── delete_disk.go │ ├── delete_disk_test.go │ ├── delete_snapshot.go │ ├── delete_snapshot_test.go │ ├── delete_stemcell.go │ ├── delete_vm.go │ ├── delete_vm_test.go │ ├── detach_disk.go │ ├── detach_disk_test.go │ ├── disks.go │ ├── disks_test.go │ ├── factory.go │ ├── get_disks.go │ ├── get_disks_test.go │ ├── has_disk.go │ ├── has_disk_test.go │ ├── has_vm.go │ ├── has_vm_test.go │ ├── info.go │ ├── info_test.go │ ├── networks.go │ ├── networks_test.go │ ├── reboot_vm.go │ ├── reboot_vm_test.go │ ├── resize_disk.go │ ├── resize_disk_test.go │ ├── set_disk_metadata.go │ ├── set_disk_metadata_test.go │ ├── set_vm_metadata.go │ ├── set_vm_metadata_test.go │ ├── snapshot_disk.go │ ├── snapshot_disk_test.go │ └── validators.go │ ├── alicloud │ ├── alicloud_suite_test.go │ ├── common.go │ ├── config.go │ ├── config_test.go │ ├── disk_manager.go │ ├── disk_manager_test.go │ ├── errors.go │ ├── instance_manager.go │ ├── invoker.go │ ├── network_manager.go │ ├── oss_manager.go │ ├── registry_manager.go │ └── stemcell_manager.go │ ├── go.mod │ ├── go.sum │ ├── integration │ ├── alicloud_test.go │ ├── assertions.go │ ├── config.go │ ├── disk_test.go │ ├── integration_suite_test.go │ ├── sample.go │ ├── stemcell_test.go │ └── vm_test.go │ ├── main │ └── main.go │ ├── mock │ ├── builder.go │ ├── builder_test.go │ ├── context.go │ ├── context_test.go │ ├── disk_manager_mock.go │ ├── generators.go │ ├── instance_manager_mock.go │ ├── mock_suite_test.go │ ├── network_manager_mock.go │ ├── oss_manager_mock.go │ ├── registry_mock.go │ └── stemcell_manager_mock.go │ ├── registry │ ├── agent_options.go │ ├── agent_settings.go │ ├── agent_settings_test.go │ ├── client.go │ ├── client_options.go │ ├── http_client.go │ └── registry_suite_test.go │ └── vendor │ ├── github.com │ ├── alibabacloud-go │ │ ├── alibabacloud-gateway-spi │ │ │ ├── LICENSE │ │ │ └── client │ │ │ │ └── client.go │ │ ├── darabonba-openapi │ │ │ └── v2 │ │ │ │ ├── LICENSE │ │ │ │ └── client │ │ │ │ └── client.go │ │ ├── debug │ │ │ ├── LICENSE │ │ │ └── debug │ │ │ │ ├── assert.go │ │ │ │ └── debug.go │ │ ├── openapi-util │ │ │ ├── LICENSE │ │ │ └── service │ │ │ │ └── service.go │ │ ├── tea-utils │ │ │ └── v2 │ │ │ │ ├── LICENSE │ │ │ │ └── service │ │ │ │ └── service.go │ │ ├── tea-xml │ │ │ ├── LICENSE │ │ │ └── service │ │ │ │ └── service.go │ │ └── tea │ │ │ ├── LICENSE │ │ │ ├── tea │ │ │ ├── json_parser.go │ │ │ ├── tea.go │ │ │ └── trans.go │ │ │ └── utils │ │ │ ├── assert.go │ │ │ ├── logger.go │ │ │ └── progress.go │ ├── aliyun │ │ ├── alibaba-cloud-sdk-go │ │ │ ├── LICENSE │ │ │ ├── sdk │ │ │ │ ├── api_timeout.go │ │ │ │ ├── auth │ │ │ │ │ ├── credential.go │ │ │ │ │ ├── credentials │ │ │ │ │ │ ├── access_key_credential.go │ │ │ │ │ │ ├── bearer_token_credential.go │ │ │ │ │ │ ├── ecs_ram_role.go │ │ │ │ │ │ ├── provider │ │ │ │ │ │ │ ├── env.go │ │ │ │ │ │ │ ├── instance_credentials.go │ │ │ │ │ │ │ ├── profile_credentials.go │ │ │ │ │ │ │ ├── provider.go │ │ │ │ │ │ │ └── provider_chain.go │ │ │ │ │ │ ├── rsa_key_pair_credential.go │ │ │ │ │ │ ├── sts_credential.go │ │ │ │ │ │ └── sts_role_arn_credential.go │ │ │ │ │ ├── roa_signature_composer.go │ │ │ │ │ ├── rpc_signature_composer.go │ │ │ │ │ ├── signer.go │ │ │ │ │ └── signers │ │ │ │ │ │ ├── algorithms.go │ │ │ │ │ │ ├── credential_updater.go │ │ │ │ │ │ ├── session_credential.go │ │ │ │ │ │ ├── signer_access_key.go │ │ │ │ │ │ ├── signer_bearer_token.go │ │ │ │ │ │ ├── signer_ecs_ram_role.go │ │ │ │ │ │ ├── signer_key_pair.go │ │ │ │ │ │ ├── signer_ram_role_arn.go │ │ │ │ │ │ ├── signer_sts_token.go │ │ │ │ │ │ └── signer_v2.go │ │ │ │ ├── client.go │ │ │ │ ├── config.go │ │ │ │ ├── endpoints │ │ │ │ │ ├── endpoints_config.go │ │ │ │ │ ├── local_global_resolver.go │ │ │ │ │ ├── local_regional_resolver.go │ │ │ │ │ ├── location_resolver.go │ │ │ │ │ ├── mapping_resolver.go │ │ │ │ │ └── resolver.go │ │ │ │ ├── errors │ │ │ │ │ ├── client_error.go │ │ │ │ │ ├── error.go │ │ │ │ │ ├── server_error.go │ │ │ │ │ └── signature_does_not_match_wrapper.go │ │ │ │ ├── logger.go │ │ │ │ ├── requests │ │ │ │ │ ├── acs_request.go │ │ │ │ │ ├── common_request.go │ │ │ │ │ ├── roa_request.go │ │ │ │ │ ├── rpc_request.go │ │ │ │ │ └── types.go │ │ │ │ ├── responses │ │ │ │ │ ├── json_parser.go │ │ │ │ │ └── response.go │ │ │ │ └── utils │ │ │ │ │ ├── debug.go │ │ │ │ │ └── utils.go │ │ │ └── services │ │ │ │ ├── ecs │ │ │ │ ├── accept_inquired_system_event.go │ │ │ │ ├── activate_router_interface.go │ │ │ │ ├── add_bandwidth_package_ips.go │ │ │ │ ├── add_tags.go │ │ │ │ ├── allocate_dedicated_hosts.go │ │ │ │ ├── allocate_eip_address.go │ │ │ │ ├── allocate_public_ip_address.go │ │ │ │ ├── apply_auto_snapshot_policy.go │ │ │ │ ├── assign_ipv6_addresses.go │ │ │ │ ├── assign_private_ip_addresses.go │ │ │ │ ├── associate_eip_address.go │ │ │ │ ├── associate_ha_vip.go │ │ │ │ ├── attach_classic_link_vpc.go │ │ │ │ ├── attach_disk.go │ │ │ │ ├── attach_instance_ram_role.go │ │ │ │ ├── attach_key_pair.go │ │ │ │ ├── attach_network_interface.go │ │ │ │ ├── authorize_security_group.go │ │ │ │ ├── authorize_security_group_egress.go │ │ │ │ ├── cancel_auto_snapshot_policy.go │ │ │ │ ├── cancel_copy_image.go │ │ │ │ ├── cancel_image_pipeline_execution.go │ │ │ │ ├── cancel_physical_connection.go │ │ │ │ ├── cancel_simulated_system_events.go │ │ │ │ ├── cancel_task.go │ │ │ │ ├── client.go │ │ │ │ ├── connect_router_interface.go │ │ │ │ ├── convert_nat_public_ip_to_eip.go │ │ │ │ ├── copy_image.go │ │ │ │ ├── copy_snapshot.go │ │ │ │ ├── create_activation.go │ │ │ │ ├── create_auto_provisioning_group.go │ │ │ │ ├── create_auto_snapshot_policy.go │ │ │ │ ├── create_capacity_reservation.go │ │ │ │ ├── create_command.go │ │ │ │ ├── create_dedicated_host_cluster.go │ │ │ │ ├── create_demand.go │ │ │ │ ├── create_deployment_set.go │ │ │ │ ├── create_diagnostic_metric_set.go │ │ │ │ ├── create_diagnostic_report.go │ │ │ │ ├── create_disk.go │ │ │ │ ├── create_elasticity_assurance.go │ │ │ │ ├── create_forward_entry.go │ │ │ │ ├── create_ha_vip.go │ │ │ │ ├── create_hpc_cluster.go │ │ │ │ ├── create_image.go │ │ │ │ ├── create_image_component.go │ │ │ │ ├── create_image_pipeline.go │ │ │ │ ├── create_instance.go │ │ │ │ ├── create_key_pair.go │ │ │ │ ├── create_launch_template.go │ │ │ │ ├── create_launch_template_version.go │ │ │ │ ├── create_nat_gateway.go │ │ │ │ ├── create_network_interface.go │ │ │ │ ├── create_network_interface_permission.go │ │ │ │ ├── create_physical_connection.go │ │ │ │ ├── create_prefix_list.go │ │ │ │ ├── create_route_entry.go │ │ │ │ ├── create_router_interface.go │ │ │ │ ├── create_savings_plan.go │ │ │ │ ├── create_security_group.go │ │ │ │ ├── create_simulated_system_events.go │ │ │ │ ├── create_snapshot.go │ │ │ │ ├── create_snapshot_group.go │ │ │ │ ├── create_storage_set.go │ │ │ │ ├── create_v_switch.go │ │ │ │ ├── create_virtual_border_router.go │ │ │ │ ├── create_vpc.go │ │ │ │ ├── deactivate_router_interface.go │ │ │ │ ├── delete_activation.go │ │ │ │ ├── delete_auto_provisioning_group.go │ │ │ │ ├── delete_auto_snapshot_policy.go │ │ │ │ ├── delete_bandwidth_package.go │ │ │ │ ├── delete_command.go │ │ │ │ ├── delete_dedicated_host_cluster.go │ │ │ │ ├── delete_demand.go │ │ │ │ ├── delete_deployment_set.go │ │ │ │ ├── delete_diagnostic_metric_sets.go │ │ │ │ ├── delete_diagnostic_reports.go │ │ │ │ ├── delete_disk.go │ │ │ │ ├── delete_forward_entry.go │ │ │ │ ├── delete_ha_vip.go │ │ │ │ ├── delete_hpc_cluster.go │ │ │ │ ├── delete_image.go │ │ │ │ ├── delete_image_component.go │ │ │ │ ├── delete_image_pipeline.go │ │ │ │ ├── delete_instance.go │ │ │ │ ├── delete_instances.go │ │ │ │ ├── delete_key_pairs.go │ │ │ │ ├── delete_launch_template.go │ │ │ │ ├── delete_launch_template_version.go │ │ │ │ ├── delete_nat_gateway.go │ │ │ │ ├── delete_network_interface.go │ │ │ │ ├── delete_network_interface_permission.go │ │ │ │ ├── delete_physical_connection.go │ │ │ │ ├── delete_prefix_list.go │ │ │ │ ├── delete_route_entry.go │ │ │ │ ├── delete_router_interface.go │ │ │ │ ├── delete_security_group.go │ │ │ │ ├── delete_snapshot.go │ │ │ │ ├── delete_snapshot_group.go │ │ │ │ ├── delete_storage_set.go │ │ │ │ ├── delete_v_switch.go │ │ │ │ ├── delete_virtual_border_router.go │ │ │ │ ├── delete_vpc.go │ │ │ │ ├── deregister_managed_instance.go │ │ │ │ ├── describe_access_points.go │ │ │ │ ├── describe_account_attributes.go │ │ │ │ ├── describe_activations.go │ │ │ │ ├── describe_auto_provisioning_group_history.go │ │ │ │ ├── describe_auto_provisioning_group_instances.go │ │ │ │ ├── describe_auto_provisioning_groups.go │ │ │ │ ├── describe_auto_snapshot_policy_ex.go │ │ │ │ ├── describe_available_resource.go │ │ │ │ ├── describe_bandwidth_limitation.go │ │ │ │ ├── describe_bandwidth_packages.go │ │ │ │ ├── describe_capacity_reservation_instances.go │ │ │ │ ├── describe_capacity_reservations.go │ │ │ │ ├── describe_classic_link_instances.go │ │ │ │ ├── describe_cloud_assistant_status.go │ │ │ │ ├── describe_clusters.go │ │ │ │ ├── describe_commands.go │ │ │ │ ├── describe_dedicated_host_auto_renew.go │ │ │ │ ├── describe_dedicated_host_clusters.go │ │ │ │ ├── describe_dedicated_host_types.go │ │ │ │ ├── describe_dedicated_hosts.go │ │ │ │ ├── describe_demands.go │ │ │ │ ├── describe_deployment_set_supported_instance_type_family.go │ │ │ │ ├── describe_deployment_sets.go │ │ │ │ ├── describe_diagnostic_metric_sets.go │ │ │ │ ├── describe_diagnostic_metrics.go │ │ │ │ ├── describe_diagnostic_report_attributes.go │ │ │ │ ├── describe_diagnostic_reports.go │ │ │ │ ├── describe_disk_monitor_data.go │ │ │ │ ├── describe_disks.go │ │ │ │ ├── describe_disks_full_status.go │ │ │ │ ├── describe_eip_addresses.go │ │ │ │ ├── describe_eip_monitor_data.go │ │ │ │ ├── describe_elasticity_assurance_instances.go │ │ │ │ ├── describe_elasticity_assurances.go │ │ │ │ ├── describe_eni_monitor_data.go │ │ │ │ ├── describe_forward_table_entries.go │ │ │ │ ├── describe_ha_vips.go │ │ │ │ ├── describe_hpc_clusters.go │ │ │ │ ├── describe_image_components.go │ │ │ │ ├── describe_image_from_family.go │ │ │ │ ├── describe_image_pipeline_executions.go │ │ │ │ ├── describe_image_pipelines.go │ │ │ │ ├── describe_image_share_permission.go │ │ │ │ ├── describe_image_support_instance_types.go │ │ │ │ ├── describe_images.go │ │ │ │ ├── describe_instance_attachment_attributes.go │ │ │ │ ├── describe_instance_attribute.go │ │ │ │ ├── describe_instance_auto_renew_attribute.go │ │ │ │ ├── describe_instance_history_events.go │ │ │ │ ├── describe_instance_maintenance_attributes.go │ │ │ │ ├── describe_instance_modification_price.go │ │ │ │ ├── describe_instance_monitor_data.go │ │ │ │ ├── describe_instance_ram_role.go │ │ │ │ ├── describe_instance_status.go │ │ │ │ ├── describe_instance_topology.go │ │ │ │ ├── describe_instance_type_families.go │ │ │ │ ├── describe_instance_types.go │ │ │ │ ├── describe_instance_vnc_url.go │ │ │ │ ├── describe_instances.go │ │ │ │ ├── describe_instances_full_status.go │ │ │ │ ├── describe_invocation_results.go │ │ │ │ ├── describe_invocations.go │ │ │ │ ├── describe_key_pairs.go │ │ │ │ ├── describe_launch_template_versions.go │ │ │ │ ├── describe_launch_templates.go │ │ │ │ ├── describe_limitation.go │ │ │ │ ├── describe_managed_instances.go │ │ │ │ ├── describe_nat_gateways.go │ │ │ │ ├── describe_network_interface_attribute.go │ │ │ │ ├── describe_network_interface_permissions.go │ │ │ │ ├── describe_network_interfaces.go │ │ │ │ ├── describe_new_project_eip_monitor_data.go │ │ │ │ ├── describe_physical_connections.go │ │ │ │ ├── describe_prefix_list_associations.go │ │ │ │ ├── describe_prefix_list_attributes.go │ │ │ │ ├── describe_prefix_lists.go │ │ │ │ ├── describe_price.go │ │ │ │ ├── describe_recommend_instance_type.go │ │ │ │ ├── describe_regions.go │ │ │ │ ├── describe_renewal_price.go │ │ │ │ ├── describe_reserved_instance_auto_renew_attribute.go │ │ │ │ ├── describe_reserved_instances.go │ │ │ │ ├── describe_resource_by_tags.go │ │ │ │ ├── describe_resources_modification.go │ │ │ │ ├── describe_route_tables.go │ │ │ │ ├── describe_router_interfaces.go │ │ │ │ ├── describe_savings_plan_estimation.go │ │ │ │ ├── describe_savings_plan_price.go │ │ │ │ ├── describe_security_group_attribute.go │ │ │ │ ├── describe_security_group_references.go │ │ │ │ ├── describe_security_groups.go │ │ │ │ ├── describe_send_file_results.go │ │ │ │ ├── describe_snapshot_groups.go │ │ │ │ ├── describe_snapshot_links.go │ │ │ │ ├── describe_snapshot_monitor_data.go │ │ │ │ ├── describe_snapshot_package.go │ │ │ │ ├── describe_snapshots.go │ │ │ │ ├── describe_snapshots_usage.go │ │ │ │ ├── describe_spot_advice.go │ │ │ │ ├── describe_spot_price_history.go │ │ │ │ ├── describe_storage_capacity_units.go │ │ │ │ ├── describe_storage_set_details.go │ │ │ │ ├── describe_storage_sets.go │ │ │ │ ├── describe_tags.go │ │ │ │ ├── describe_task_attribute.go │ │ │ │ ├── describe_tasks.go │ │ │ │ ├── describe_user_business_behavior.go │ │ │ │ ├── describe_user_data.go │ │ │ │ ├── describe_v_routers.go │ │ │ │ ├── describe_v_switches.go │ │ │ │ ├── describe_virtual_border_routers.go │ │ │ │ ├── describe_virtual_border_routers_for_physical_connection.go │ │ │ │ ├── describe_vpcs.go │ │ │ │ ├── describe_zones.go │ │ │ │ ├── detach_classic_link_vpc.go │ │ │ │ ├── detach_disk.go │ │ │ │ ├── detach_instance_ram_role.go │ │ │ │ ├── detach_key_pair.go │ │ │ │ ├── detach_network_interface.go │ │ │ │ ├── disable_activation.go │ │ │ │ ├── eip_fill_params.go │ │ │ │ ├── eip_fill_product.go │ │ │ │ ├── eip_notify_paid.go │ │ │ │ ├── enable_physical_connection.go │ │ │ │ ├── endpoint.go │ │ │ │ ├── export_image.go │ │ │ │ ├── export_snapshot.go │ │ │ │ ├── get_instance_console_output.go │ │ │ │ ├── get_instance_screenshot.go │ │ │ │ ├── import_image.go │ │ │ │ ├── import_key_pair.go │ │ │ │ ├── install_cloud_assistant.go │ │ │ │ ├── invoke_command.go │ │ │ │ ├── join_resource_group.go │ │ │ │ ├── join_security_group.go │ │ │ │ ├── leave_security_group.go │ │ │ │ ├── list_plugin_status.go │ │ │ │ ├── list_tag_resources.go │ │ │ │ ├── modify_auto_provisioning_group.go │ │ │ │ ├── modify_auto_snapshot_policy.go │ │ │ │ ├── modify_auto_snapshot_policy_ex.go │ │ │ │ ├── modify_bandwidth_package_spec.go │ │ │ │ ├── modify_capacity_reservation.go │ │ │ │ ├── modify_command.go │ │ │ │ ├── modify_dedicated_host_attribute.go │ │ │ │ ├── modify_dedicated_host_auto_release_time.go │ │ │ │ ├── modify_dedicated_host_auto_renew_attribute.go │ │ │ │ ├── modify_dedicated_host_cluster_attribute.go │ │ │ │ ├── modify_dedicated_hosts_charge_type.go │ │ │ │ ├── modify_demand.go │ │ │ │ ├── modify_deployment_set_attribute.go │ │ │ │ ├── modify_diagnostic_metric_set.go │ │ │ │ ├── modify_disk_attribute.go │ │ │ │ ├── modify_disk_charge_type.go │ │ │ │ ├── modify_disk_deployment.go │ │ │ │ ├── modify_disk_spec.go │ │ │ │ ├── modify_eip_address_attribute.go │ │ │ │ ├── modify_elasticity_assurance.go │ │ │ │ ├── modify_forward_entry.go │ │ │ │ ├── modify_ha_vip_attribute.go │ │ │ │ ├── modify_hpc_cluster_attribute.go │ │ │ │ ├── modify_image_attribute.go │ │ │ │ ├── modify_image_share_group_permission.go │ │ │ │ ├── modify_image_share_permission.go │ │ │ │ ├── modify_instance_attachment_attributes.go │ │ │ │ ├── modify_instance_attribute.go │ │ │ │ ├── modify_instance_auto_release_time.go │ │ │ │ ├── modify_instance_auto_renew_attribute.go │ │ │ │ ├── modify_instance_charge_type.go │ │ │ │ ├── modify_instance_deployment.go │ │ │ │ ├── modify_instance_maintenance_attributes.go │ │ │ │ ├── modify_instance_metadata_options.go │ │ │ │ ├── modify_instance_network_spec.go │ │ │ │ ├── modify_instance_spec.go │ │ │ │ ├── modify_instance_vnc_passwd.go │ │ │ │ ├── modify_instance_vpc_attribute.go │ │ │ │ ├── modify_launch_template_default_version.go │ │ │ │ ├── modify_managed_instance.go │ │ │ │ ├── modify_network_interface_attribute.go │ │ │ │ ├── modify_physical_connection_attribute.go │ │ │ │ ├── modify_prefix_list.go │ │ │ │ ├── modify_prepay_instance_spec.go │ │ │ │ ├── modify_reserved_instance_attribute.go │ │ │ │ ├── modify_reserved_instance_auto_renew_attribute.go │ │ │ │ ├── modify_reserved_instances.go │ │ │ │ ├── modify_router_interface_attribute.go │ │ │ │ ├── modify_router_interface_spec.go │ │ │ │ ├── modify_security_group_attribute.go │ │ │ │ ├── modify_security_group_egress_rule.go │ │ │ │ ├── modify_security_group_policy.go │ │ │ │ ├── modify_security_group_rule.go │ │ │ │ ├── modify_snapshot_attribute.go │ │ │ │ ├── modify_snapshot_group.go │ │ │ │ ├── modify_storage_capacity_unit_attribute.go │ │ │ │ ├── modify_storage_set_attribute.go │ │ │ │ ├── modify_user_business_behavior.go │ │ │ │ ├── modify_v_router_attribute.go │ │ │ │ ├── modify_v_switch_attribute.go │ │ │ │ ├── modify_virtual_border_router_attribute.go │ │ │ │ ├── modify_vpc_attribute.go │ │ │ │ ├── purchase_reserved_instances_offering.go │ │ │ │ ├── purchase_storage_capacity_unit.go │ │ │ │ ├── re_activate_instances.go │ │ │ │ ├── re_init_disk.go │ │ │ │ ├── reboot_instance.go │ │ │ │ ├── reboot_instances.go │ │ │ │ ├── recover_virtual_border_router.go │ │ │ │ ├── redeploy_dedicated_host.go │ │ │ │ ├── redeploy_instance.go │ │ │ │ ├── release_capacity_reservation.go │ │ │ │ ├── release_dedicated_host.go │ │ │ │ ├── release_eip_address.go │ │ │ │ ├── release_public_ip_address.go │ │ │ │ ├── remove_bandwidth_package_ips.go │ │ │ │ ├── remove_tags.go │ │ │ │ ├── renew_dedicated_hosts.go │ │ │ │ ├── renew_instance.go │ │ │ │ ├── renew_reserved_instances.go │ │ │ │ ├── replace_system_disk.go │ │ │ │ ├── report_instances_status.go │ │ │ │ ├── reset_disk.go │ │ │ │ ├── reset_disks.go │ │ │ │ ├── resize_disk.go │ │ │ │ ├── revoke_security_group.go │ │ │ │ ├── revoke_security_group_egress.go │ │ │ │ ├── run_command.go │ │ │ │ ├── run_instances.go │ │ │ │ ├── send_file.go │ │ │ │ ├── start_elasticity_assurance.go │ │ │ │ ├── start_image_pipeline_execution.go │ │ │ │ ├── start_instance.go │ │ │ │ ├── start_instances.go │ │ │ │ ├── start_terminal_session.go │ │ │ │ ├── stop_instance.go │ │ │ │ ├── stop_instances.go │ │ │ │ ├── stop_invocation.go │ │ │ │ ├── struct_access_point_set.go │ │ │ │ ├── struct_access_point_type.go │ │ │ │ ├── struct_account.go │ │ │ │ ├── struct_account_attribute_item.go │ │ │ │ ├── struct_account_attribute_items.go │ │ │ │ ├── struct_accounts.go │ │ │ │ ├── struct_action_on_maintenance.go │ │ │ │ ├── struct_activation.go │ │ │ │ ├── struct_activation_list.go │ │ │ │ ├── struct_activity_detail.go │ │ │ │ ├── struct_activity_details.go │ │ │ │ ├── struct_add_accounts.go │ │ │ │ ├── struct_allocated_resource.go │ │ │ │ ├── struct_allocated_resources_in_describe_capacity_reservations.go │ │ │ │ ├── struct_allocated_resources_in_describe_elasticity_assurances.go │ │ │ │ ├── struct_assigned_private_ip_addresses_set.go │ │ │ │ ├── struct_associated_eip_addresses.go │ │ │ │ ├── struct_associated_instances.go │ │ │ │ ├── struct_associated_public_ip.go │ │ │ │ ├── struct_attach_instance_ram_role_result.go │ │ │ │ ├── struct_attach_instance_ram_role_results.go │ │ │ │ ├── struct_attachment.go │ │ │ │ ├── struct_attachments.go │ │ │ │ ├── struct_attribute_values.go │ │ │ │ ├── struct_auto_provisioning_group.go │ │ │ │ ├── struct_auto_provisioning_group_histories.go │ │ │ │ ├── struct_auto_provisioning_group_history.go │ │ │ │ ├── struct_auto_provisioning_groups.go │ │ │ │ ├── struct_auto_snapshot_policies.go │ │ │ │ ├── struct_auto_snapshot_policy.go │ │ │ │ ├── struct_available_dedicated_host_types.go │ │ │ │ ├── struct_available_disk_categories.go │ │ │ │ ├── struct_available_instance_type.go │ │ │ │ ├── struct_available_instance_types_in_describe_dedicated_host_clusters.go │ │ │ │ ├── struct_available_instance_types_in_describe_zones.go │ │ │ │ ├── struct_available_resource.go │ │ │ │ ├── struct_available_resource_creation.go │ │ │ │ ├── struct_available_resources_in_describe_available_resource.go │ │ │ │ ├── struct_available_resources_in_describe_resources_modification.go │ │ │ │ ├── struct_available_resources_in_describe_zones.go │ │ │ │ ├── struct_available_spot_resource.go │ │ │ │ ├── struct_available_spot_resources.go │ │ │ │ ├── struct_available_spot_zone.go │ │ │ │ ├── struct_available_spot_zones.go │ │ │ │ ├── struct_available_volume_categories.go │ │ │ │ ├── struct_available_zone.go │ │ │ │ ├── struct_available_zones_in_describe_available_resource.go │ │ │ │ ├── struct_available_zones_in_describe_resources_modification.go │ │ │ │ ├── struct_bandwidth.go │ │ │ │ ├── struct_bandwidth_package.go │ │ │ │ ├── struct_bandwidth_package_ids_in_create_nat_gateway.go │ │ │ │ ├── struct_bandwidth_package_ids_in_describe_nat_gateways.go │ │ │ │ ├── struct_bandwidth_packages.go │ │ │ │ ├── struct_bandwidths.go │ │ │ │ ├── struct_bond_interface_specification.go │ │ │ │ ├── struct_capacities.go │ │ │ │ ├── struct_capacity.go │ │ │ │ ├── struct_capacity_reservation_item.go │ │ │ │ ├── struct_capacity_reservation_item_in_describe_capacity_reservation_instances.go │ │ │ │ ├── struct_capacity_reservation_set.go │ │ │ │ ├── struct_capacity_reservation_usage.go │ │ │ │ ├── struct_capacity_reservation_usages.go │ │ │ │ ├── struct_cluster.go │ │ │ │ ├── struct_clusters.go │ │ │ │ ├── struct_command.go │ │ │ │ ├── struct_commands.go │ │ │ │ ├── struct_condition.go │ │ │ │ ├── struct_condition_supported_resource.go │ │ │ │ ├── struct_condition_supported_resources.go │ │ │ │ ├── struct_conditions.go │ │ │ │ ├── struct_cpu_options.go │ │ │ │ ├── struct_data.go │ │ │ │ ├── struct_data_disk.go │ │ │ │ ├── struct_data_disk_categories.go │ │ │ │ ├── struct_data_disks.go │ │ │ │ ├── struct_data_point.go │ │ │ │ ├── struct_dedicated_host.go │ │ │ │ ├── struct_dedicated_host_attribute.go │ │ │ │ ├── struct_dedicated_host_cluster.go │ │ │ │ ├── struct_dedicated_host_cluster_capacity.go │ │ │ │ ├── struct_dedicated_host_clusters.go │ │ │ │ ├── struct_dedicated_host_generations.go │ │ │ │ ├── struct_dedicated_host_id_sets.go │ │ │ │ ├── struct_dedicated_host_ids.go │ │ │ │ ├── struct_dedicated_host_renew_attribute.go │ │ │ │ ├── struct_dedicated_host_renew_attributes.go │ │ │ │ ├── struct_dedicated_host_type.go │ │ │ │ ├── struct_dedicated_host_types.go │ │ │ │ ├── struct_dedicated_hosts.go │ │ │ │ ├── struct_dedicated_instance_attribute.go │ │ │ │ ├── struct_demand.go │ │ │ │ ├── struct_demands.go │ │ │ │ ├── struct_deployment_set.go │ │ │ │ ├── struct_deployment_sets.go │ │ │ │ ├── struct_detach_instance_ram_role_result.go │ │ │ │ ├── struct_detach_instance_ram_role_results.go │ │ │ │ ├── struct_detail_infos_in_describe_price.go │ │ │ │ ├── struct_detail_infos_in_describe_renewal_price.go │ │ │ │ ├── struct_detection_options.go │ │ │ │ ├── struct_disk.go │ │ │ │ ├── struct_disk_device_mapping.go │ │ │ │ ├── struct_disk_device_mappings_in_describe_image_from_family.go │ │ │ │ ├── struct_disk_device_mappings_in_describe_images.go │ │ │ │ ├── struct_disk_event_set.go │ │ │ │ ├── struct_disk_event_type.go │ │ │ │ ├── struct_disk_full_status_set.go │ │ │ │ ├── struct_disk_full_status_type.go │ │ │ │ ├── struct_disk_monitor_data.go │ │ │ │ ├── struct_disks_in_describe_disks.go │ │ │ │ ├── struct_disks_in_describe_storage_set_details.go │ │ │ │ ├── struct_ecs_capacity_reservation_attr.go │ │ │ │ ├── struct_eip_address.go │ │ │ │ ├── struct_eip_address_in_describe_instance_attribute.go │ │ │ │ ├── struct_eip_address_in_describe_instances.go │ │ │ │ ├── struct_eip_addresses.go │ │ │ │ ├── struct_eip_monitor_data.go │ │ │ │ ├── struct_eip_monitor_datas_in_describe_eip_monitor_data.go │ │ │ │ ├── struct_eip_monitor_datas_in_describe_new_project_eip_monitor_data.go │ │ │ │ ├── struct_elasticity_assurance_item.go │ │ │ │ ├── struct_elasticity_assurance_item_in_describe_elasticity_assurance_instances.go │ │ │ │ ├── struct_elasticity_assurance_set.go │ │ │ │ ├── struct_eni_monitor_data.go │ │ │ │ ├── struct_entries.go │ │ │ │ ├── struct_entry.go │ │ │ │ ├── struct_event_cycle_status.go │ │ │ │ ├── struct_event_id_set.go │ │ │ │ ├── struct_event_type.go │ │ │ │ ├── struct_extended_attribute.go │ │ │ │ ├── struct_features.go │ │ │ │ ├── struct_fee_of_instance.go │ │ │ │ ├── struct_fee_of_instances_in_modify_dedicated_hosts_charge_type.go │ │ │ │ ├── struct_fee_of_instances_in_modify_instance_charge_type.go │ │ │ │ ├── struct_forward_table_entries.go │ │ │ │ ├── struct_forward_table_entry.go │ │ │ │ ├── struct_forward_table_ids_in_create_nat_gateway.go │ │ │ │ ├── struct_forward_table_ids_in_describe_nat_gateways.go │ │ │ │ ├── struct_ha_vip.go │ │ │ │ ├── struct_ha_vips.go │ │ │ │ ├── struct_health_status.go │ │ │ │ ├── struct_hibernation_options.go │ │ │ │ ├── struct_host_detail_info.go │ │ │ │ ├── struct_hpc_cluster.go │ │ │ │ ├── struct_hpc_clusters.go │ │ │ │ ├── struct_image.go │ │ │ │ ├── struct_image_component.go │ │ │ │ ├── struct_image_component_set.go │ │ │ │ ├── struct_image_options.go │ │ │ │ ├── struct_image_pipeline.go │ │ │ │ ├── struct_image_pipeline_execution.go │ │ │ │ ├── struct_image_pipeline_execution_set.go │ │ │ │ ├── struct_image_pipeline_set.go │ │ │ │ ├── struct_images.go │ │ │ │ ├── struct_inactive_disk.go │ │ │ │ ├── struct_inactive_disks_in_describe_instance_history_events.go │ │ │ │ ├── struct_inactive_disks_in_describe_instances_full_status.go │ │ │ │ ├── struct_inner_ip_address_in_describe_instance_attribute.go │ │ │ │ ├── struct_inner_ip_address_in_describe_instances.go │ │ │ │ ├── struct_instance.go │ │ │ │ ├── struct_instance_cloud_assistant_status.go │ │ │ │ ├── struct_instance_cloud_assistant_status_set.go │ │ │ │ ├── struct_instance_full_status_set.go │ │ │ │ ├── struct_instance_full_status_type.go │ │ │ │ ├── struct_instance_generations.go │ │ │ │ ├── struct_instance_id_set.go │ │ │ │ ├── struct_instance_id_sets.go │ │ │ │ ├── struct_instance_ids_in_create_auto_provisioning_group.go │ │ │ │ ├── struct_instance_ids_in_describe_deployment_sets.go │ │ │ │ ├── struct_instance_in_describe_managed_instances.go │ │ │ │ ├── struct_instance_monitor_data.go │ │ │ │ ├── struct_instance_plugin_status.go │ │ │ │ ├── struct_instance_plugin_status_set.go │ │ │ │ ├── struct_instance_ram_role_set.go │ │ │ │ ├── struct_instance_ram_role_sets_in_describe_instance_ram_role.go │ │ │ │ ├── struct_instance_ram_role_sets_in_detach_instance_ram_role.go │ │ │ │ ├── struct_instance_renew_attribute.go │ │ │ │ ├── struct_instance_renew_attributes.go │ │ │ │ ├── struct_instance_response.go │ │ │ │ ├── struct_instance_responses_in_reboot_instances.go │ │ │ │ ├── struct_instance_responses_in_start_instances.go │ │ │ │ ├── struct_instance_responses_in_stop_instances.go │ │ │ │ ├── struct_instance_status.go │ │ │ │ ├── struct_instance_statuses.go │ │ │ │ ├── struct_instance_system_event_set.go │ │ │ │ ├── struct_instance_system_event_type.go │ │ │ │ ├── struct_instance_tag.go │ │ │ │ ├── struct_instance_type.go │ │ │ │ ├── struct_instance_type_families_in_describe_instance_type_families.go │ │ │ │ ├── struct_instance_type_families_in_describe_zones.go │ │ │ │ ├── struct_instance_type_family.go │ │ │ │ ├── struct_instance_types_in_describe_image_support_instance_types.go │ │ │ │ ├── struct_instance_types_in_describe_instance_types.go │ │ │ │ ├── struct_instance_types_in_describe_zones.go │ │ │ │ ├── struct_instances_in_describe_auto_provisioning_group_instances.go │ │ │ │ ├── struct_instances_in_describe_dedicated_hosts.go │ │ │ │ ├── struct_instances_in_describe_instance_attachment_attributes.go │ │ │ │ ├── struct_instances_in_describe_instances.go │ │ │ │ ├── struct_instances_in_describe_managed_instances.go │ │ │ │ ├── struct_invocation.go │ │ │ │ ├── struct_invocation_result.go │ │ │ │ ├── struct_invocation_results.go │ │ │ │ ├── struct_invocations_in_describe_invocations.go │ │ │ │ ├── struct_invocations_in_describe_send_file_results.go │ │ │ │ ├── struct_invoke_instance.go │ │ │ │ ├── struct_invoke_instances_in_describe_invocations.go │ │ │ │ ├── struct_invoke_instances_in_describe_send_file_results.go │ │ │ │ ├── struct_ipv4_prefix_set.go │ │ │ │ ├── struct_ipv4_prefix_set_in_assign_private_ip_addresses.go │ │ │ │ ├── struct_ipv4_prefix_sets_in_create_network_interface.go │ │ │ │ ├── struct_ipv4_prefix_sets_in_describe_instances.go │ │ │ │ ├── struct_ipv4_prefix_sets_in_describe_network_interface_attribute.go │ │ │ │ ├── struct_ipv4_prefix_sets_in_describe_network_interfaces.go │ │ │ │ ├── struct_ipv6_prefix_set.go │ │ │ │ ├── struct_ipv6_prefix_sets_in_assign_ipv6_addresses.go │ │ │ │ ├── struct_ipv6_prefix_sets_in_create_network_interface.go │ │ │ │ ├── struct_ipv6_prefix_sets_in_describe_instances.go │ │ │ │ ├── struct_ipv6_prefix_sets_in_describe_network_interface_attribute.go │ │ │ │ ├── struct_ipv6_prefix_sets_in_describe_network_interfaces.go │ │ │ │ ├── struct_ipv6_set.go │ │ │ │ ├── struct_ipv6_sets_in_assign_ipv6_addresses.go │ │ │ │ ├── struct_ipv6_sets_in_create_network_interface.go │ │ │ │ ├── struct_ipv6_sets_in_describe_instances.go │ │ │ │ ├── struct_ipv6_sets_in_describe_network_interface_attribute.go │ │ │ │ ├── struct_ipv6_sets_in_describe_network_interfaces.go │ │ │ │ ├── struct_issue.go │ │ │ │ ├── struct_issues_in_describe_diagnostic_report_attributes.go │ │ │ │ ├── struct_issues_in_describe_diagnostic_reports.go │ │ │ │ ├── struct_item.go │ │ │ │ ├── struct_items.go │ │ │ │ ├── struct_key_pair.go │ │ │ │ ├── struct_key_pairs.go │ │ │ │ ├── struct_launch_result.go │ │ │ │ ├── struct_launch_results.go │ │ │ │ ├── struct_launch_template_config.go │ │ │ │ ├── struct_launch_template_configs.go │ │ │ │ ├── struct_launch_template_data.go │ │ │ │ ├── struct_launch_template_set.go │ │ │ │ ├── struct_launch_template_sets.go │ │ │ │ ├── struct_launch_template_version.go │ │ │ │ ├── struct_launch_template_version_numbers.go │ │ │ │ ├── struct_launch_template_version_set.go │ │ │ │ ├── struct_launch_template_version_sets.go │ │ │ │ ├── struct_launch_template_versions.go │ │ │ │ ├── struct_link.go │ │ │ │ ├── struct_links.go │ │ │ │ ├── struct_local_storage_capacities.go │ │ │ │ ├── struct_local_storage_capacity.go │ │ │ │ ├── struct_lock_reason.go │ │ │ │ ├── struct_maintenance_attribute.go │ │ │ │ ├── struct_maintenance_attributes.go │ │ │ │ ├── struct_maintenance_window.go │ │ │ │ ├── struct_maintenance_windows_.go │ │ │ │ ├── struct_member_network_interface_ids.go │ │ │ │ ├── struct_metadata_options.go │ │ │ │ ├── struct_metric.go │ │ │ │ ├── struct_metric_ids.go │ │ │ │ ├── struct_metric_result.go │ │ │ │ ├── struct_metric_results.go │ │ │ │ ├── struct_metric_set.go │ │ │ │ ├── struct_metric_sets.go │ │ │ │ ├── struct_metrics.go │ │ │ │ ├── struct_migration_options.go │ │ │ │ ├── struct_monitor_data_in_describe_disk_monitor_data.go │ │ │ │ ├── struct_monitor_data_in_describe_eni_monitor_data.go │ │ │ │ ├── struct_monitor_data_in_describe_instance_monitor_data.go │ │ │ │ ├── struct_monitor_data_in_describe_snapshot_monitor_data.go │ │ │ │ ├── struct_mount_instance.go │ │ │ │ ├── struct_mount_instances.go │ │ │ │ ├── struct_nat_gateway.go │ │ │ │ ├── struct_nat_gateways.go │ │ │ │ ├── struct_network_attributes.go │ │ │ │ ├── struct_network_card_info.go │ │ │ │ ├── struct_network_cards.go │ │ │ │ ├── struct_network_interface.go │ │ │ │ ├── struct_network_interface_permission.go │ │ │ │ ├── struct_network_interface_permissions.go │ │ │ │ ├── struct_network_interface_set.go │ │ │ │ ├── struct_network_interface_sets.go │ │ │ │ ├── struct_network_interfaces_in_describe_instances.go │ │ │ │ ├── struct_network_interfaces_in_describe_launch_template_versions.go │ │ │ │ ├── struct_network_types_in_describe_recommend_instance_type.go │ │ │ │ ├── struct_network_types_in_describe_zones.go │ │ │ │ ├── struct_next_hop.go │ │ │ │ ├── struct_next_hops.go │ │ │ │ ├── struct_operation_lock.go │ │ │ │ ├── struct_operation_locks_in_describe_dedicated_hosts.go │ │ │ │ ├── struct_operation_locks_in_describe_disks.go │ │ │ │ ├── struct_operation_locks_in_describe_eip_addresses.go │ │ │ │ ├── struct_operation_locks_in_describe_instance_attribute.go │ │ │ │ ├── struct_operation_locks_in_describe_instances.go │ │ │ │ ├── struct_operation_locks_in_describe_reserved_instances.go │ │ │ │ ├── struct_operation_progress.go │ │ │ │ ├── struct_operation_progress_set_in_delete_snapshot_group.go │ │ │ │ ├── struct_operation_progress_set_in_describe_task_attribute.go │ │ │ │ ├── struct_operation_progress_set_in_reset_disks.go │ │ │ │ ├── struct_parameter_definition.go │ │ │ │ ├── struct_parameter_definitions.go │ │ │ │ ├── struct_parameter_names.go │ │ │ │ ├── struct_pay_as_you_go_options.go │ │ │ │ ├── struct_permission.go │ │ │ │ ├── struct_permissions.go │ │ │ │ ├── struct_physical_connection_set.go │ │ │ │ ├── struct_physical_connection_type.go │ │ │ │ ├── struct_plugin_status.go │ │ │ │ ├── struct_plugin_status_set.go │ │ │ │ ├── struct_possible_values.go │ │ │ │ ├── struct_prefix_list.go │ │ │ │ ├── struct_prefix_list_association.go │ │ │ │ ├── struct_prefix_list_associations.go │ │ │ │ ├── struct_prefix_lists.go │ │ │ │ ├── struct_price.go │ │ │ │ ├── struct_price_info.go │ │ │ │ ├── struct_price_info_in_describe_savings_plan_price.go │ │ │ │ ├── struct_private_ip_address_in_describe_instance_attribute.go │ │ │ │ ├── struct_private_ip_address_in_describe_instances.go │ │ │ │ ├── struct_private_ip_set.go │ │ │ │ ├── struct_private_ip_set_in_assign_private_ip_addresses.go │ │ │ │ ├── struct_private_ip_sets_in_create_network_interface.go │ │ │ │ ├── struct_private_ip_sets_in_describe_instances.go │ │ │ │ ├── struct_private_ip_sets_in_describe_network_interface_attribute.go │ │ │ │ ├── struct_private_ip_sets_in_describe_network_interfaces.go │ │ │ │ ├── struct_public_ip_address_in_describe_instance_attribute.go │ │ │ │ ├── struct_public_ip_address_in_describe_instances.go │ │ │ │ ├── struct_public_ip_addresse.go │ │ │ │ ├── struct_public_ip_addresses.go │ │ │ │ ├── struct_rdma_ip_address.go │ │ │ │ ├── struct_recommend_instance_type.go │ │ │ │ ├── struct_referencing_security_group.go │ │ │ │ ├── struct_referencing_security_groups.go │ │ │ │ ├── struct_region.go │ │ │ │ ├── struct_regions.go │ │ │ │ ├── struct_related_item.go │ │ │ │ ├── struct_related_item_set_in_delete_snapshot_group.go │ │ │ │ ├── struct_related_item_set_in_describe_task_attribute.go │ │ │ │ ├── struct_related_item_set_in_reset_disks.go │ │ │ │ ├── struct_report.go │ │ │ │ ├── struct_reports.go │ │ │ │ ├── struct_reserved_instance.go │ │ │ │ ├── struct_reserved_instance_id_sets_in_modify_reserved_instances.go │ │ │ │ ├── struct_reserved_instance_id_sets_in_purchase_reserved_instances_offering.go │ │ │ │ ├── struct_reserved_instance_id_sets_in_renew_reserved_instances.go │ │ │ │ ├── struct_reserved_instance_renew_attribute.go │ │ │ │ ├── struct_reserved_instance_renew_attributes.go │ │ │ │ ├── struct_reserved_instances.go │ │ │ │ ├── struct_resource.go │ │ │ │ ├── struct_resource_price_model.go │ │ │ │ ├── struct_resource_type_count.go │ │ │ │ ├── struct_resources.go │ │ │ │ ├── struct_resources_info.go │ │ │ │ ├── struct_result.go │ │ │ │ ├── struct_results_in_attach_key_pair.go │ │ │ │ ├── struct_results_in_detach_key_pair.go │ │ │ │ ├── struct_route_entry.go │ │ │ │ ├── struct_route_entrys.go │ │ │ │ ├── struct_route_table.go │ │ │ │ ├── struct_route_table_ids.go │ │ │ │ ├── struct_route_tables.go │ │ │ │ ├── struct_router_interface_set.go │ │ │ │ ├── struct_router_interface_type.go │ │ │ │ ├── struct_rule.go │ │ │ │ ├── struct_rules_in_describe_instance_modification_price.go │ │ │ │ ├── struct_rules_in_describe_price.go │ │ │ │ ├── struct_rules_in_describe_renewal_price.go │ │ │ │ ├── struct_rules_in_describe_savings_plan_price.go │ │ │ │ ├── struct_rules_item.go │ │ │ │ ├── struct_scheduled_system_event_set.go │ │ │ │ ├── struct_scheduled_system_event_type.go │ │ │ │ ├── struct_security_group.go │ │ │ │ ├── struct_security_group_ids_in_create_network_interface.go │ │ │ │ ├── struct_security_group_ids_in_describe_instance_attribute.go │ │ │ │ ├── struct_security_group_ids_in_describe_instances.go │ │ │ │ ├── struct_security_group_ids_in_describe_launch_template_versions.go │ │ │ │ ├── struct_security_group_ids_in_describe_network_interface_attribute.go │ │ │ │ ├── struct_security_group_ids_in_describe_network_interfaces.go │ │ │ │ ├── struct_security_group_reference.go │ │ │ │ ├── struct_security_group_references.go │ │ │ │ ├── struct_security_groups.go │ │ │ │ ├── struct_share_group.go │ │ │ │ ├── struct_share_groups.go │ │ │ │ ├── struct_slave_interface_specification.go │ │ │ │ ├── struct_slave_interface_specification_in_describe_network_interface_attribute.go │ │ │ │ ├── struct_slave_interface_specification_set.go │ │ │ │ ├── struct_snapshot.go │ │ │ │ ├── struct_snapshot_group.go │ │ │ │ ├── struct_snapshot_groups.go │ │ │ │ ├── struct_snapshot_link.go │ │ │ │ ├── struct_snapshot_links.go │ │ │ │ ├── struct_snapshot_package.go │ │ │ │ ├── struct_snapshot_packages.go │ │ │ │ ├── struct_snapshots_in_describe_snapshot_groups.go │ │ │ │ ├── struct_snapshots_in_describe_snapshots.go │ │ │ │ ├── struct_socket_capacities.go │ │ │ │ ├── struct_socket_capacity.go │ │ │ │ ├── struct_spot_options.go │ │ │ │ ├── struct_spot_price_type.go │ │ │ │ ├── struct_spot_prices.go │ │ │ │ ├── struct_status.go │ │ │ │ ├── struct_storage_capacity_unit.go │ │ │ │ ├── struct_storage_capacity_unit_ids.go │ │ │ │ ├── struct_storage_capacity_units.go │ │ │ │ ├── struct_storage_set.go │ │ │ │ ├── struct_storage_sets.go │ │ │ │ ├── struct_sub_rules_in_describe_price.go │ │ │ │ ├── struct_sub_rules_in_describe_renewal_price.go │ │ │ │ ├── struct_supply_info.go │ │ │ │ ├── struct_supply_infos.go │ │ │ │ ├── struct_supported_custom_instance_type_families.go │ │ │ │ ├── struct_supported_instance_type_families_in_describe_dedicated_host_types.go │ │ │ │ ├── struct_supported_instance_type_families_in_describe_dedicated_hosts.go │ │ │ │ ├── struct_supported_instance_types_list_in_describe_dedicated_host_types.go │ │ │ │ ├── struct_supported_instance_types_list_in_describe_dedicated_hosts.go │ │ │ │ ├── struct_supported_resource.go │ │ │ │ ├── struct_supported_resources_in_describe_available_resource.go │ │ │ │ ├── struct_supported_resources_in_describe_resources_modification.go │ │ │ │ ├── struct_supported_values.go │ │ │ │ ├── struct_system_disk_categories.go │ │ │ │ ├── struct_tag.go │ │ │ │ ├── struct_tag_resource.go │ │ │ │ ├── struct_tag_resources.go │ │ │ │ ├── struct_tags_in_create_network_interface.go │ │ │ │ ├── struct_tags_in_describe_activations.go │ │ │ │ ├── struct_tags_in_describe_auto_snapshot_policy_ex.go │ │ │ │ ├── struct_tags_in_describe_capacity_reservations.go │ │ │ │ ├── struct_tags_in_describe_commands.go │ │ │ │ ├── struct_tags_in_describe_dedicated_host_clusters.go │ │ │ │ ├── struct_tags_in_describe_dedicated_hosts.go │ │ │ │ ├── struct_tags_in_describe_disks.go │ │ │ │ ├── struct_tags_in_describe_elasticity_assurances.go │ │ │ │ ├── struct_tags_in_describe_image_components.go │ │ │ │ ├── struct_tags_in_describe_image_from_family.go │ │ │ │ ├── struct_tags_in_describe_image_pipeline_executions.go │ │ │ │ ├── struct_tags_in_describe_image_pipelines.go │ │ │ │ ├── struct_tags_in_describe_images.go │ │ │ │ ├── struct_tags_in_describe_instances.go │ │ │ │ ├── struct_tags_in_describe_invocation_results.go │ │ │ │ ├── struct_tags_in_describe_invocations.go │ │ │ │ ├── struct_tags_in_describe_key_pairs.go │ │ │ │ ├── struct_tags_in_describe_launch_template_versions.go │ │ │ │ ├── struct_tags_in_describe_launch_templates.go │ │ │ │ ├── struct_tags_in_describe_managed_instances.go │ │ │ │ ├── struct_tags_in_describe_network_interface_attribute.go │ │ │ │ ├── struct_tags_in_describe_network_interfaces.go │ │ │ │ ├── struct_tags_in_describe_reserved_instances.go │ │ │ │ ├── struct_tags_in_describe_security_groups.go │ │ │ │ ├── struct_tags_in_describe_send_file_results.go │ │ │ │ ├── struct_tags_in_describe_snapshot_groups.go │ │ │ │ ├── struct_tags_in_describe_snapshots.go │ │ │ │ ├── struct_tags_in_describe_storage_capacity_units.go │ │ │ │ ├── struct_tags_in_describe_tags.go │ │ │ │ ├── struct_target_capacity_specification.go │ │ │ │ ├── struct_task.go │ │ │ │ ├── struct_task_set.go │ │ │ │ ├── struct_to_region_ids.go │ │ │ │ ├── struct_topology.go │ │ │ │ ├── struct_topologys.go │ │ │ │ ├── struct_user_cidrs.go │ │ │ │ ├── struct_v_router.go │ │ │ │ ├── struct_v_routers.go │ │ │ │ ├── struct_v_switch.go │ │ │ │ ├── struct_v_switch_ids.go │ │ │ │ ├── struct_v_switches.go │ │ │ │ ├── struct_value_item.go │ │ │ │ ├── struct_virtual_border_router_for_physical_connection_set.go │ │ │ │ ├── struct_virtual_border_router_for_physical_connection_type.go │ │ │ │ ├── struct_virtual_border_router_set.go │ │ │ │ ├── struct_virtual_border_router_type.go │ │ │ │ ├── struct_vpc.go │ │ │ │ ├── struct_vpc_attributes.go │ │ │ │ ├── struct_vpcs.go │ │ │ │ ├── struct_zone.go │ │ │ │ ├── struct_zones_in_describe_recommend_instance_type.go │ │ │ │ ├── struct_zones_in_describe_zones.go │ │ │ │ ├── tag_resources.go │ │ │ │ ├── terminate_physical_connection.go │ │ │ │ ├── terminate_virtual_border_router.go │ │ │ │ ├── unassign_ipv6_addresses.go │ │ │ │ ├── unassign_private_ip_addresses.go │ │ │ │ ├── unassociate_eip_address.go │ │ │ │ ├── unassociate_ha_vip.go │ │ │ │ └── untag_resources.go │ │ │ │ ├── location │ │ │ │ ├── client.go │ │ │ │ ├── describe_endpoint.go │ │ │ │ ├── describe_endpoints.go │ │ │ │ ├── describe_regions.go │ │ │ │ ├── describe_services.go │ │ │ │ ├── list_endpoints.go │ │ │ │ ├── list_endpoints_by_ip.go │ │ │ │ ├── struct_endpoint.go │ │ │ │ ├── struct_endpoint_list_in_list_endpoints.go │ │ │ │ ├── struct_endpoint_list_in_list_endpoints_by_ip.go │ │ │ │ ├── struct_endpoints.go │ │ │ │ ├── struct_item_endpoint.go │ │ │ │ ├── struct_protocols_in_describe_endpoint.go │ │ │ │ ├── struct_protocols_in_describe_endpoints.go │ │ │ │ ├── struct_protocols_in_list_endpoints.go │ │ │ │ ├── struct_protocols_in_list_endpoints_by_ip.go │ │ │ │ ├── struct_region_ids.go │ │ │ │ └── struct_services.go │ │ │ │ └── slb │ │ │ │ ├── add_access_control_list_entry.go │ │ │ │ ├── add_backend_servers.go │ │ │ │ ├── add_listener_white_list_item.go │ │ │ │ ├── add_tags.go │ │ │ │ ├── add_v_server_group_backend_servers.go │ │ │ │ ├── client.go │ │ │ │ ├── create_access_control_list.go │ │ │ │ ├── create_domain_extension.go │ │ │ │ ├── create_load_balancer.go │ │ │ │ ├── create_load_balancer_http_listener.go │ │ │ │ ├── create_load_balancer_https_listener.go │ │ │ │ ├── create_load_balancer_tcp_listener.go │ │ │ │ ├── create_load_balancer_udp_listener.go │ │ │ │ ├── create_master_slave_server_group.go │ │ │ │ ├── create_rules.go │ │ │ │ ├── create_tls_cipher_policy.go │ │ │ │ ├── create_v_server_group.go │ │ │ │ ├── delete_access_control_list.go │ │ │ │ ├── delete_access_logs_download_attribute.go │ │ │ │ ├── delete_ca_certificate.go │ │ │ │ ├── delete_domain_extension.go │ │ │ │ ├── delete_load_balancer.go │ │ │ │ ├── delete_load_balancer_listener.go │ │ │ │ ├── delete_master_slave_server_group.go │ │ │ │ ├── delete_rules.go │ │ │ │ ├── delete_server_certificate.go │ │ │ │ ├── delete_tls_cipher_policy.go │ │ │ │ ├── delete_v_server_group.go │ │ │ │ ├── describe_access_control_list_attribute.go │ │ │ │ ├── describe_access_control_lists.go │ │ │ │ ├── describe_access_logs_download_attribute.go │ │ │ │ ├── describe_available_resource.go │ │ │ │ ├── describe_ca_certificates.go │ │ │ │ ├── describe_domain_extension_attribute.go │ │ │ │ ├── describe_domain_extensions.go │ │ │ │ ├── describe_health_status.go │ │ │ │ ├── describe_high_defination_monitor.go │ │ │ │ ├── describe_listener_access_control_attribute.go │ │ │ │ ├── describe_load_balancer_attribute.go │ │ │ │ ├── describe_load_balancer_http_listener_attribute.go │ │ │ │ ├── describe_load_balancer_https_listener_attribute.go │ │ │ │ ├── describe_load_balancer_listeners.go │ │ │ │ ├── describe_load_balancer_tcp_listener_attribute.go │ │ │ │ ├── describe_load_balancer_udp_listener_attribute.go │ │ │ │ ├── describe_load_balancers.go │ │ │ │ ├── describe_master_slave_server_group_attribute.go │ │ │ │ ├── describe_master_slave_server_groups.go │ │ │ │ ├── describe_regions.go │ │ │ │ ├── describe_rule_attribute.go │ │ │ │ ├── describe_rules.go │ │ │ │ ├── describe_server_certificates.go │ │ │ │ ├── describe_tags.go │ │ │ │ ├── describe_v_server_group_attribute.go │ │ │ │ ├── describe_v_server_groups.go │ │ │ │ ├── describe_zones.go │ │ │ │ ├── enable_high_defination_monitor.go │ │ │ │ ├── endpoint.go │ │ │ │ ├── list_tag_resources.go │ │ │ │ ├── list_tls_cipher_policies.go │ │ │ │ ├── modify_high_defination_monitor.go │ │ │ │ ├── modify_load_balancer_instance_charge_type.go │ │ │ │ ├── modify_load_balancer_instance_spec.go │ │ │ │ ├── modify_load_balancer_internet_spec.go │ │ │ │ ├── modify_load_balancer_pay_type.go │ │ │ │ ├── modify_v_server_group_backend_servers.go │ │ │ │ ├── move_resource_group.go │ │ │ │ ├── remove_access_control_list_entry.go │ │ │ │ ├── remove_backend_servers.go │ │ │ │ ├── remove_listener_white_list_item.go │ │ │ │ ├── remove_tags.go │ │ │ │ ├── remove_v_server_group_backend_servers.go │ │ │ │ ├── set_access_control_list_attribute.go │ │ │ │ ├── set_access_logs_download_attribute.go │ │ │ │ ├── set_backend_servers.go │ │ │ │ ├── set_ca_certificate_name.go │ │ │ │ ├── set_domain_extension_attribute.go │ │ │ │ ├── set_listener_access_control_status.go │ │ │ │ ├── set_load_balancer_delete_protection.go │ │ │ │ ├── set_load_balancer_http_listener_attribute.go │ │ │ │ ├── set_load_balancer_https_listener_attribute.go │ │ │ │ ├── set_load_balancer_modification_protection.go │ │ │ │ ├── set_load_balancer_name.go │ │ │ │ ├── set_load_balancer_status.go │ │ │ │ ├── set_load_balancer_tcp_listener_attribute.go │ │ │ │ ├── set_load_balancer_udp_listener_attribute.go │ │ │ │ ├── set_rule.go │ │ │ │ ├── set_server_certificate_name.go │ │ │ │ ├── set_tls_cipher_policy_attribute.go │ │ │ │ ├── set_v_server_group_attribute.go │ │ │ │ ├── start_load_balancer_listener.go │ │ │ │ ├── stop_load_balancer_listener.go │ │ │ │ ├── struct_acl.go │ │ │ │ ├── struct_acl_entry.go │ │ │ │ ├── struct_acl_entrys.go │ │ │ │ ├── struct_acl_ids_in_describe_load_balancer_http_listener_attribute.go │ │ │ │ ├── struct_acl_ids_in_describe_load_balancer_https_listener_attribute.go │ │ │ │ ├── struct_acl_ids_in_describe_load_balancer_listeners.go │ │ │ │ ├── struct_acl_ids_in_describe_load_balancer_tcp_listener_attribute.go │ │ │ │ ├── struct_acl_ids_in_describe_load_balancer_udp_listener_attribute.go │ │ │ │ ├── struct_acls.go │ │ │ │ ├── struct_associated_objects.go │ │ │ │ ├── struct_available_resource.go │ │ │ │ ├── struct_available_resources.go │ │ │ │ ├── struct_backend_server.go │ │ │ │ ├── struct_backend_server_in_add_v_server_group_backend_servers.go │ │ │ │ ├── struct_backend_server_in_create_v_server_group.go │ │ │ │ ├── struct_backend_server_in_describe_load_balancer_attribute.go │ │ │ │ ├── struct_backend_server_in_describe_v_server_group_attribute.go │ │ │ │ ├── struct_backend_server_in_modify_v_server_group_backend_servers.go │ │ │ │ ├── struct_backend_server_in_remove_backend_servers.go │ │ │ │ ├── struct_backend_server_in_remove_v_server_group_backend_servers.go │ │ │ │ ├── struct_backend_server_in_set_v_server_group_attribute.go │ │ │ │ ├── struct_backend_servers_in_add_backend_servers.go │ │ │ │ ├── struct_backend_servers_in_add_v_server_group_backend_servers.go │ │ │ │ ├── struct_backend_servers_in_create_v_server_group.go │ │ │ │ ├── struct_backend_servers_in_describe_health_status.go │ │ │ │ ├── struct_backend_servers_in_describe_load_balancer_attribute.go │ │ │ │ ├── struct_backend_servers_in_describe_v_server_group_attribute.go │ │ │ │ ├── struct_backend_servers_in_modify_v_server_group_backend_servers.go │ │ │ │ ├── struct_backend_servers_in_remove_backend_servers.go │ │ │ │ ├── struct_backend_servers_in_remove_v_server_group_backend_servers.go │ │ │ │ ├── struct_backend_servers_in_set_backend_servers.go │ │ │ │ ├── struct_backend_servers_in_set_v_server_group_attribute.go │ │ │ │ ├── struct_ca_certificate.go │ │ │ │ ├── struct_ca_certificates.go │ │ │ │ ├── struct_certificate.go │ │ │ │ ├── struct_certificates_in_describe_domain_extension_attribute.go │ │ │ │ ├── struct_certificates_in_describe_domain_extensions.go │ │ │ │ ├── struct_certificates_in_describe_load_balancer_https_listener_attribute.go │ │ │ │ ├── struct_ciphers.go │ │ │ │ ├── struct_domain_extension.go │ │ │ │ ├── struct_domain_extensions_in_describe_domain_extensions.go │ │ │ │ ├── struct_domain_extensions_in_describe_load_balancer_https_listener_attribute.go │ │ │ │ ├── struct_http_listener_config.go │ │ │ │ ├── struct_https_listener_config.go │ │ │ │ ├── struct_ineffective_order_list.go │ │ │ │ ├── struct_labels.go │ │ │ │ ├── struct_listener.go │ │ │ │ ├── struct_listener_in_describe_load_balancer_listeners.go │ │ │ │ ├── struct_listener_port_and_protocal.go │ │ │ │ ├── struct_listener_port_and_protocol.go │ │ │ │ ├── struct_listener_ports.go │ │ │ │ ├── struct_listener_ports_and_protocal.go │ │ │ │ ├── struct_listener_ports_and_protocol.go │ │ │ │ ├── struct_listeners_in_describe_load_balancer_listeners.go │ │ │ │ ├── struct_listeners_in_describe_master_slave_server_groups.go │ │ │ │ ├── struct_listeners_in_describe_v_server_groups.go │ │ │ │ ├── struct_load_balancer.go │ │ │ │ ├── struct_load_balancers.go │ │ │ │ ├── struct_logs_download_attribute.go │ │ │ │ ├── struct_logs_download_attributes.go │ │ │ │ ├── struct_master_slave_backend_server.go │ │ │ │ ├── struct_master_slave_backend_servers_in_create_master_slave_server_group.go │ │ │ │ ├── struct_master_slave_backend_servers_in_describe_master_slave_server_group_attribute.go │ │ │ │ ├── struct_master_slave_server_group.go │ │ │ │ ├── struct_master_slave_server_groups.go │ │ │ │ ├── struct_port_range.go │ │ │ │ ├── struct_port_ranges_in_describe_load_balancer_listeners.go │ │ │ │ ├── struct_port_ranges_in_describe_load_balancer_tcp_listener_attribute.go │ │ │ │ ├── struct_port_ranges_in_describe_load_balancer_udp_listener_attribute.go │ │ │ │ ├── struct_region.go │ │ │ │ ├── struct_regions.go │ │ │ │ ├── struct_relate_listener.go │ │ │ │ ├── struct_relate_listeners.go │ │ │ │ ├── struct_related_listener.go │ │ │ │ ├── struct_related_listeners.go │ │ │ │ ├── struct_rule.go │ │ │ │ ├── struct_rules_in_create_rules.go │ │ │ │ ├── struct_rules_in_describe_load_balancer_http_listener_attribute.go │ │ │ │ ├── struct_rules_in_describe_load_balancer_https_listener_attribute.go │ │ │ │ ├── struct_rules_in_describe_rules.go │ │ │ │ ├── struct_rules_in_describe_v_server_groups.go │ │ │ │ ├── struct_server_certificate.go │ │ │ │ ├── struct_server_certificates_in_describe_domain_extension_attribute.go │ │ │ │ ├── struct_server_certificates_in_describe_domain_extensions.go │ │ │ │ ├── struct_server_certificates_in_describe_load_balancer_https_listener_attribute.go │ │ │ │ ├── struct_server_certificates_in_describe_server_certificates.go │ │ │ │ ├── struct_slave_zone.go │ │ │ │ ├── struct_slave_zones.go │ │ │ │ ├── struct_subject_alternative_names_in_describe_server_certificates.go │ │ │ │ ├── struct_subject_alternative_names_in_upload_server_certificate.go │ │ │ │ ├── struct_support_resource.go │ │ │ │ ├── struct_support_resources.go │ │ │ │ ├── struct_tag.go │ │ │ │ ├── struct_tag_resource.go │ │ │ │ ├── struct_tag_resources.go │ │ │ │ ├── struct_tag_set.go │ │ │ │ ├── struct_tag_sets.go │ │ │ │ ├── struct_tags_in_describe_access_control_list_attribute.go │ │ │ │ ├── struct_tags_in_describe_access_control_lists.go │ │ │ │ ├── struct_tags_in_describe_ca_certificates.go │ │ │ │ ├── struct_tags_in_describe_load_balancer_attribute.go │ │ │ │ ├── struct_tags_in_describe_load_balancer_http_listener_attribute.go │ │ │ │ ├── struct_tags_in_describe_load_balancer_https_listener_attribute.go │ │ │ │ ├── struct_tags_in_describe_load_balancer_listeners.go │ │ │ │ ├── struct_tags_in_describe_load_balancer_tcp_listener_attribute.go │ │ │ │ ├── struct_tags_in_describe_load_balancer_udp_listener_attribute.go │ │ │ │ ├── struct_tags_in_describe_load_balancers.go │ │ │ │ ├── struct_tags_in_describe_master_slave_server_group_attribute.go │ │ │ │ ├── struct_tags_in_describe_master_slave_server_groups.go │ │ │ │ ├── struct_tags_in_describe_server_certificates.go │ │ │ │ ├── struct_tags_in_describe_v_server_group_attribute.go │ │ │ │ ├── struct_tags_in_describe_v_server_groups.go │ │ │ │ ├── struct_tcp_listener_config.go │ │ │ │ ├── struct_tcps_listener_config.go │ │ │ │ ├── struct_tls_cipher_policies.go │ │ │ │ ├── struct_tls_cipher_policy.go │ │ │ │ ├── struct_tls_versions.go │ │ │ │ ├── struct_udp_listener_config.go │ │ │ │ ├── struct_v_server_group.go │ │ │ │ ├── struct_v_server_groups.go │ │ │ │ ├── struct_zone.go │ │ │ │ ├── struct_zones.go │ │ │ │ ├── tag_resources.go │ │ │ │ ├── untag_resources.go │ │ │ │ ├── upload_ca_certificate.go │ │ │ │ └── upload_server_certificate.go │ │ ├── aliyun-oss-go-sdk │ │ │ ├── LICENSE │ │ │ └── oss │ │ │ │ ├── auth.go │ │ │ │ ├── bucket.go │ │ │ │ ├── client.go │ │ │ │ ├── conf.go │ │ │ │ ├── conn.go │ │ │ │ ├── const.go │ │ │ │ ├── crc.go │ │ │ │ ├── download.go │ │ │ │ ├── error.go │ │ │ │ ├── limit_reader_1_6.go │ │ │ │ ├── limit_reader_1_7.go │ │ │ │ ├── livechannel.go │ │ │ │ ├── mime.go │ │ │ │ ├── model.go │ │ │ │ ├── multicopy.go │ │ │ │ ├── multipart.go │ │ │ │ ├── option.go │ │ │ │ ├── progress.go │ │ │ │ ├── redirect_1_6.go │ │ │ │ ├── redirect_1_7.go │ │ │ │ ├── select_object.go │ │ │ │ ├── select_object_type.go │ │ │ │ ├── transport_1_6.go │ │ │ │ ├── transport_1_7.go │ │ │ │ ├── type.go │ │ │ │ ├── upload.go │ │ │ │ └── utils.go │ │ └── credentials-go │ │ │ ├── LICENSE │ │ │ └── credentials │ │ │ ├── access_key_credential.go │ │ │ ├── bearer_token_credential.go │ │ │ ├── credential.go │ │ │ ├── credential_model.go │ │ │ ├── credential_updater.go │ │ │ ├── ecs_ram_role.go │ │ │ ├── env_provider.go │ │ │ ├── instance_provider.go │ │ │ ├── oidc_credential.go │ │ │ ├── oidc_credential_provider.go │ │ │ ├── oidc_token │ │ │ ├── profile_provider.go │ │ │ ├── provider.go │ │ │ ├── provider_chain.go │ │ │ ├── request │ │ │ └── common_request.go │ │ │ ├── response │ │ │ └── common_response.go │ │ │ ├── rsa_key_pair_credential.go │ │ │ ├── session_credential.go │ │ │ ├── sts_credential.go │ │ │ ├── sts_role_arn_credential.go │ │ │ ├── uri_credential.go │ │ │ └── utils │ │ │ ├── runtime.go │ │ │ └── utils.go │ ├── bmatcuk │ │ └── doublestar │ │ │ ├── .gitignore │ │ │ ├── .travis.yml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ └── doublestar.go │ ├── charlievieth │ │ └── fs │ │ │ ├── LICENSE │ │ │ ├── fs.go │ │ │ ├── fs_unix.go │ │ │ └── fs_windows.go │ ├── clbanning │ │ └── mxj │ │ │ └── v2 │ │ │ ├── .travis.yml │ │ │ ├── LICENSE │ │ │ ├── anyxml.go │ │ │ ├── atomFeedString.xml │ │ │ ├── doc.go │ │ │ ├── escapechars.go │ │ │ ├── exists.go │ │ │ ├── files.go │ │ │ ├── files_test.badjson │ │ │ ├── files_test.badxml │ │ │ ├── files_test.json │ │ │ ├── files_test.xml │ │ │ ├── files_test_dup.json │ │ │ ├── files_test_dup.xml │ │ │ ├── files_test_indent.json │ │ │ ├── files_test_indent.xml │ │ │ ├── gob.go │ │ │ ├── json.go │ │ │ ├── keyvalues.go │ │ │ ├── leafnode.go │ │ │ ├── misc.go │ │ │ ├── mxj.go │ │ │ ├── newmap.go │ │ │ ├── readme.md │ │ │ ├── remove.go │ │ │ ├── rename.go │ │ │ ├── set.go │ │ │ ├── setfieldsep.go │ │ │ ├── songtext.xml │ │ │ ├── strict.go │ │ │ ├── struct.go │ │ │ ├── updatevalues.go │ │ │ ├── xml.go │ │ │ ├── xmlseq.go │ │ │ └── xmlseq2.go │ ├── cloudfoundry │ │ └── bosh-utils │ │ │ ├── LICENSE │ │ │ ├── NOTICE │ │ │ ├── errors │ │ │ ├── errors.go │ │ │ └── multi_error.go │ │ │ ├── logger │ │ │ ├── async.go │ │ │ └── logger.go │ │ │ └── system │ │ │ ├── cmd_runner_interface.go │ │ │ ├── exec_cmd_runner.go │ │ │ ├── exec_cmd_runner_unix.go │ │ │ ├── exec_cmd_runner_windows.go │ │ │ ├── exec_error.go │ │ │ ├── exec_process.go │ │ │ ├── exec_process_unix.go │ │ │ ├── exec_process_windows.go │ │ │ ├── file_system_interface.go │ │ │ ├── ip_helper.go │ │ │ ├── os_file_system.go │ │ │ ├── os_file_system_unix.go │ │ │ └── os_file_system_windows.go │ ├── cppforlife │ │ └── bosh-cpi-go │ │ │ ├── LICENSE │ │ │ ├── NOTICE │ │ │ ├── apiv1 │ │ │ ├── action_factory.go │ │ │ ├── agent_env.go │ │ │ ├── agent_env_factory.go │ │ │ ├── agent_options.go │ │ │ ├── cloud_id.go │ │ │ ├── cloud_kvs.go │ │ │ ├── cloud_props.go │ │ │ ├── disk_hint.go │ │ │ ├── interfaces.go │ │ │ ├── interfaces_disks.go │ │ │ ├── interfaces_snapshots.go │ │ │ ├── interfaces_stemcells.go │ │ │ ├── interfaces_vms.go │ │ │ ├── networks.go │ │ │ ├── stemcell_api_version.go │ │ │ └── vm_cloud_props.go │ │ │ └── rpc │ │ │ ├── cli.go │ │ │ ├── factory.go │ │ │ ├── interfaces.go │ │ │ ├── json_caller.go │ │ │ └── json_dispatcher.go │ ├── google │ │ ├── go-cmp │ │ │ ├── LICENSE │ │ │ └── cmp │ │ │ │ ├── compare.go │ │ │ │ ├── export_panic.go │ │ │ │ ├── export_unsafe.go │ │ │ │ ├── internal │ │ │ │ ├── diff │ │ │ │ │ ├── debug_disable.go │ │ │ │ │ ├── debug_enable.go │ │ │ │ │ └── diff.go │ │ │ │ ├── flags │ │ │ │ │ └── flags.go │ │ │ │ ├── function │ │ │ │ │ └── func.go │ │ │ │ └── value │ │ │ │ │ ├── name.go │ │ │ │ │ ├── pointer_purego.go │ │ │ │ │ ├── pointer_unsafe.go │ │ │ │ │ └── sort.go │ │ │ │ ├── options.go │ │ │ │ ├── path.go │ │ │ │ ├── report.go │ │ │ │ ├── report_compare.go │ │ │ │ ├── report_references.go │ │ │ │ ├── report_reflect.go │ │ │ │ ├── report_slices.go │ │ │ │ ├── report_text.go │ │ │ │ └── report_value.go │ │ └── uuid │ │ │ ├── CHANGELOG.md │ │ │ ├── CONTRIBUTING.md │ │ │ ├── CONTRIBUTORS │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── dce.go │ │ │ ├── doc.go │ │ │ ├── hash.go │ │ │ ├── marshal.go │ │ │ ├── node.go │ │ │ ├── node_js.go │ │ │ ├── node_net.go │ │ │ ├── null.go │ │ │ ├── sql.go │ │ │ ├── time.go │ │ │ ├── util.go │ │ │ ├── uuid.go │ │ │ ├── version1.go │ │ │ └── version4.go │ ├── jmespath │ │ └── go-jmespath │ │ │ ├── .gitignore │ │ │ ├── .travis.yml │ │ │ ├── LICENSE │ │ │ ├── Makefile │ │ │ ├── README.md │ │ │ ├── api.go │ │ │ ├── astnodetype_string.go │ │ │ ├── functions.go │ │ │ ├── interpreter.go │ │ │ ├── lexer.go │ │ │ ├── parser.go │ │ │ ├── toktype_string.go │ │ │ └── util.go │ ├── json-iterator │ │ └── go │ │ │ ├── .codecov.yml │ │ │ ├── .gitignore │ │ │ ├── .travis.yml │ │ │ ├── Gopkg.lock │ │ │ ├── Gopkg.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── adapter.go │ │ │ ├── any.go │ │ │ ├── any_array.go │ │ │ ├── any_bool.go │ │ │ ├── any_float.go │ │ │ ├── any_int32.go │ │ │ ├── any_int64.go │ │ │ ├── any_invalid.go │ │ │ ├── any_nil.go │ │ │ ├── any_number.go │ │ │ ├── any_object.go │ │ │ ├── any_str.go │ │ │ ├── any_uint32.go │ │ │ ├── any_uint64.go │ │ │ ├── build.sh │ │ │ ├── config.go │ │ │ ├── fuzzy_mode_convert_table.md │ │ │ ├── iter.go │ │ │ ├── iter_array.go │ │ │ ├── iter_float.go │ │ │ ├── iter_int.go │ │ │ ├── iter_object.go │ │ │ ├── iter_skip.go │ │ │ ├── iter_skip_sloppy.go │ │ │ ├── iter_skip_strict.go │ │ │ ├── iter_str.go │ │ │ ├── jsoniter.go │ │ │ ├── pool.go │ │ │ ├── reflect.go │ │ │ ├── reflect_array.go │ │ │ ├── reflect_dynamic.go │ │ │ ├── reflect_extension.go │ │ │ ├── reflect_json_number.go │ │ │ ├── reflect_json_raw_message.go │ │ │ ├── reflect_map.go │ │ │ ├── reflect_marshaler.go │ │ │ ├── reflect_native.go │ │ │ ├── reflect_optional.go │ │ │ ├── reflect_slice.go │ │ │ ├── reflect_struct_decoder.go │ │ │ ├── reflect_struct_encoder.go │ │ │ ├── stream.go │ │ │ ├── stream_float.go │ │ │ ├── stream_int.go │ │ │ ├── stream_str.go │ │ │ └── test.sh │ ├── modern-go │ │ ├── concurrent │ │ │ ├── .gitignore │ │ │ ├── .travis.yml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── executor.go │ │ │ ├── go_above_19.go │ │ │ ├── go_below_19.go │ │ │ ├── log.go │ │ │ ├── test.sh │ │ │ └── unbounded_executor.go │ │ └── reflect2 │ │ │ ├── .gitignore │ │ │ ├── .travis.yml │ │ │ ├── Gopkg.lock │ │ │ ├── Gopkg.toml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── go_above_118.go │ │ │ ├── go_above_19.go │ │ │ ├── go_below_118.go │ │ │ ├── reflect2.go │ │ │ ├── reflect2_amd64.s │ │ │ ├── reflect2_kind.go │ │ │ ├── relfect2_386.s │ │ │ ├── relfect2_amd64p32.s │ │ │ ├── relfect2_arm.s │ │ │ ├── relfect2_arm64.s │ │ │ ├── relfect2_mips64x.s │ │ │ ├── relfect2_mipsx.s │ │ │ ├── relfect2_ppc64x.s │ │ │ ├── relfect2_s390x.s │ │ │ ├── safe_field.go │ │ │ ├── safe_map.go │ │ │ ├── safe_slice.go │ │ │ ├── safe_struct.go │ │ │ ├── safe_type.go │ │ │ ├── type_map.go │ │ │ ├── unsafe_array.go │ │ │ ├── unsafe_eface.go │ │ │ ├── unsafe_field.go │ │ │ ├── unsafe_iface.go │ │ │ ├── unsafe_link.go │ │ │ ├── unsafe_map.go │ │ │ ├── unsafe_ptr.go │ │ │ ├── unsafe_slice.go │ │ │ ├── unsafe_struct.go │ │ │ └── unsafe_type.go │ ├── onsi │ │ ├── ginkgo │ │ │ ├── .gitignore │ │ │ ├── .travis.yml │ │ │ ├── CHANGELOG.md │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── config │ │ │ │ └── config.go │ │ │ ├── ginkgo_dsl.go │ │ │ ├── internal │ │ │ │ ├── codelocation │ │ │ │ │ └── code_location.go │ │ │ │ ├── containernode │ │ │ │ │ └── container_node.go │ │ │ │ ├── failer │ │ │ │ │ └── failer.go │ │ │ │ ├── leafnodes │ │ │ │ │ ├── benchmarker.go │ │ │ │ │ ├── interfaces.go │ │ │ │ │ ├── it_node.go │ │ │ │ │ ├── measure_node.go │ │ │ │ │ ├── runner.go │ │ │ │ │ ├── setup_nodes.go │ │ │ │ │ ├── suite_nodes.go │ │ │ │ │ ├── synchronized_after_suite_node.go │ │ │ │ │ └── synchronized_before_suite_node.go │ │ │ │ ├── remote │ │ │ │ │ ├── aggregator.go │ │ │ │ │ ├── forwarding_reporter.go │ │ │ │ │ ├── output_interceptor.go │ │ │ │ │ ├── output_interceptor_unix.go │ │ │ │ │ ├── output_interceptor_win.go │ │ │ │ │ └── server.go │ │ │ │ ├── spec │ │ │ │ │ ├── index_computer.go │ │ │ │ │ ├── spec.go │ │ │ │ │ └── specs.go │ │ │ │ ├── specrunner │ │ │ │ │ ├── random_id.go │ │ │ │ │ └── spec_runner.go │ │ │ │ ├── suite │ │ │ │ │ └── suite.go │ │ │ │ ├── testingtproxy │ │ │ │ │ └── testing_t_proxy.go │ │ │ │ └── writer │ │ │ │ │ ├── fake_writer.go │ │ │ │ │ └── writer.go │ │ │ ├── reporters │ │ │ │ ├── default_reporter.go │ │ │ │ ├── fake_reporter.go │ │ │ │ ├── junit_reporter.go │ │ │ │ ├── reporter.go │ │ │ │ ├── stenographer │ │ │ │ │ ├── console_logging.go │ │ │ │ │ ├── fake_stenographer.go │ │ │ │ │ └── stenographer.go │ │ │ │ └── teamcity_reporter.go │ │ │ └── types │ │ │ │ ├── code_location.go │ │ │ │ ├── synchronization.go │ │ │ │ └── types.go │ │ └── gomega │ │ │ ├── .gitignore │ │ │ ├── CHANGELOG.md │ │ │ ├── CONTRIBUTING.md │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── RELEASING.md │ │ │ ├── format │ │ │ └── format.go │ │ │ ├── gomega_dsl.go │ │ │ ├── internal │ │ │ ├── assertion.go │ │ │ ├── async_assertion.go │ │ │ ├── duration_bundle.go │ │ │ ├── gomega.go │ │ │ ├── gutil │ │ │ │ ├── post_ioutil.go │ │ │ │ └── using_ioutil.go │ │ │ ├── polling_signal_error.go │ │ │ └── vetoptdesc.go │ │ │ ├── matchers.go │ │ │ ├── matchers │ │ │ ├── and.go │ │ │ ├── assignable_to_type_of_matcher.go │ │ │ ├── attributes_slice.go │ │ │ ├── be_a_directory.go │ │ │ ├── be_a_regular_file.go │ │ │ ├── be_an_existing_file.go │ │ │ ├── be_closed_matcher.go │ │ │ ├── be_comparable_to_matcher.go │ │ │ ├── be_element_of_matcher.go │ │ │ ├── be_empty_matcher.go │ │ │ ├── be_equivalent_to_matcher.go │ │ │ ├── be_false_matcher.go │ │ │ ├── be_identical_to.go │ │ │ ├── be_key_of_matcher.go │ │ │ ├── be_nil_matcher.go │ │ │ ├── be_numerically_matcher.go │ │ │ ├── be_sent_matcher.go │ │ │ ├── be_temporally_matcher.go │ │ │ ├── be_true_matcher.go │ │ │ ├── be_zero_matcher.go │ │ │ ├── consist_of.go │ │ │ ├── contain_element_matcher.go │ │ │ ├── contain_elements_matcher.go │ │ │ ├── contain_substring_matcher.go │ │ │ ├── equal_matcher.go │ │ │ ├── have_cap_matcher.go │ │ │ ├── have_each_matcher.go │ │ │ ├── have_exact_elements.go │ │ │ ├── have_existing_field_matcher.go │ │ │ ├── have_field.go │ │ │ ├── have_http_body_matcher.go │ │ │ ├── have_http_header_with_value_matcher.go │ │ │ ├── have_http_status_matcher.go │ │ │ ├── have_key_matcher.go │ │ │ ├── have_key_with_value_matcher.go │ │ │ ├── have_len_matcher.go │ │ │ ├── have_occurred_matcher.go │ │ │ ├── have_prefix_matcher.go │ │ │ ├── have_suffix_matcher.go │ │ │ ├── have_value.go │ │ │ ├── match_error_matcher.go │ │ │ ├── match_json_matcher.go │ │ │ ├── match_regexp_matcher.go │ │ │ ├── match_xml_matcher.go │ │ │ ├── match_yaml_matcher.go │ │ │ ├── not.go │ │ │ ├── or.go │ │ │ ├── panic_matcher.go │ │ │ ├── receive_matcher.go │ │ │ ├── satisfy_matcher.go │ │ │ ├── semi_structured_data_support.go │ │ │ ├── succeed_matcher.go │ │ │ ├── support │ │ │ │ └── goraph │ │ │ │ │ ├── bipartitegraph │ │ │ │ │ ├── bipartitegraph.go │ │ │ │ │ └── bipartitegraphmatching.go │ │ │ │ │ ├── edge │ │ │ │ │ └── edge.go │ │ │ │ │ ├── node │ │ │ │ │ └── node.go │ │ │ │ │ └── util │ │ │ │ │ └── util.go │ │ │ ├── type_support.go │ │ │ └── with_transform.go │ │ │ └── types │ │ │ └── types.go │ ├── opentracing │ │ └── opentracing-go │ │ │ ├── .gitignore │ │ │ ├── .golangci.yml │ │ │ ├── CHANGELOG.md │ │ │ ├── LICENSE │ │ │ ├── Makefile │ │ │ ├── README.md │ │ │ ├── ext.go │ │ │ ├── ext │ │ │ ├── field.go │ │ │ └── tags.go │ │ │ ├── globaltracer.go │ │ │ ├── gocontext.go │ │ │ ├── log │ │ │ ├── field.go │ │ │ └── util.go │ │ │ ├── noop.go │ │ │ ├── propagation.go │ │ │ ├── span.go │ │ │ └── tracer.go │ └── tjfoc │ │ └── gmsm │ │ ├── LICENSE │ │ └── sm3 │ │ ├── ifile │ │ └── sm3.go │ ├── golang.org │ └── x │ │ ├── net │ │ ├── LICENSE │ │ ├── PATENTS │ │ ├── html │ │ │ ├── atom │ │ │ │ ├── atom.go │ │ │ │ └── table.go │ │ │ ├── charset │ │ │ │ └── charset.go │ │ │ ├── const.go │ │ │ ├── doc.go │ │ │ ├── doctype.go │ │ │ ├── entity.go │ │ │ ├── escape.go │ │ │ ├── foreign.go │ │ │ ├── node.go │ │ │ ├── parse.go │ │ │ ├── render.go │ │ │ └── token.go │ │ ├── internal │ │ │ └── socks │ │ │ │ ├── client.go │ │ │ │ └── socks.go │ │ └── proxy │ │ │ ├── dial.go │ │ │ ├── direct.go │ │ │ ├── per_host.go │ │ │ ├── proxy.go │ │ │ └── socks5.go │ │ ├── text │ │ ├── LICENSE │ │ ├── PATENTS │ │ ├── encoding │ │ │ ├── charmap │ │ │ │ ├── charmap.go │ │ │ │ └── tables.go │ │ │ ├── encoding.go │ │ │ ├── htmlindex │ │ │ │ ├── htmlindex.go │ │ │ │ ├── map.go │ │ │ │ └── tables.go │ │ │ ├── internal │ │ │ │ ├── identifier │ │ │ │ │ ├── identifier.go │ │ │ │ │ └── mib.go │ │ │ │ └── internal.go │ │ │ ├── japanese │ │ │ │ ├── all.go │ │ │ │ ├── eucjp.go │ │ │ │ ├── iso2022jp.go │ │ │ │ ├── shiftjis.go │ │ │ │ └── tables.go │ │ │ ├── korean │ │ │ │ ├── euckr.go │ │ │ │ └── tables.go │ │ │ ├── simplifiedchinese │ │ │ │ ├── all.go │ │ │ │ ├── gbk.go │ │ │ │ ├── hzgb2312.go │ │ │ │ └── tables.go │ │ │ ├── traditionalchinese │ │ │ │ ├── big5.go │ │ │ │ └── tables.go │ │ │ └── unicode │ │ │ │ ├── override.go │ │ │ │ └── unicode.go │ │ ├── internal │ │ │ ├── language │ │ │ │ ├── common.go │ │ │ │ ├── compact.go │ │ │ │ ├── compact │ │ │ │ │ ├── compact.go │ │ │ │ │ ├── language.go │ │ │ │ │ ├── parents.go │ │ │ │ │ ├── tables.go │ │ │ │ │ └── tags.go │ │ │ │ ├── compose.go │ │ │ │ ├── coverage.go │ │ │ │ ├── language.go │ │ │ │ ├── lookup.go │ │ │ │ ├── match.go │ │ │ │ ├── parse.go │ │ │ │ ├── tables.go │ │ │ │ └── tags.go │ │ │ ├── tag │ │ │ │ └── tag.go │ │ │ └── utf8internal │ │ │ │ └── utf8internal.go │ │ ├── language │ │ │ ├── coverage.go │ │ │ ├── doc.go │ │ │ ├── language.go │ │ │ ├── match.go │ │ │ ├── parse.go │ │ │ ├── tables.go │ │ │ └── tags.go │ │ ├── runes │ │ │ ├── cond.go │ │ │ └── runes.go │ │ └── transform │ │ │ └── transform.go │ │ └── time │ │ ├── AUTHORS │ │ ├── CONTRIBUTORS │ │ ├── LICENSE │ │ ├── PATENTS │ │ └── rate │ │ └── rate.go │ ├── gopkg.in │ ├── ini.v1 │ │ ├── .gitignore │ │ ├── .golangci.yml │ │ ├── LICENSE │ │ ├── Makefile │ │ ├── README.md │ │ ├── codecov.yml │ │ ├── data_source.go │ │ ├── deprecated.go │ │ ├── error.go │ │ ├── file.go │ │ ├── helper.go │ │ ├── ini.go │ │ ├── key.go │ │ ├── parser.go │ │ ├── section.go │ │ └── struct.go │ └── yaml.v3 │ │ ├── LICENSE │ │ ├── NOTICE │ │ ├── README.md │ │ ├── apic.go │ │ ├── decode.go │ │ ├── emitterc.go │ │ ├── encode.go │ │ ├── parserc.go │ │ ├── readerc.go │ │ ├── resolve.go │ │ ├── scannerc.go │ │ ├── sorter.go │ │ ├── writerc.go │ │ ├── yaml.go │ │ ├── yamlh.go │ │ └── yamlprivateh.go │ └── modules.txt └── test_input ├── cpi.json ├── create_disk.json ├── create_stemcell.json └── create_vm.json /.envrc: -------------------------------------------------------------------------------- 1 | export GOPATH=$PWD 2 | export PATH=$PATH:$GOPATH/bin -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /pkg 2 | /bin 3 | blobs 4 | *\.test 5 | .idea 6 | src/github.com 7 | src/golang.org 8 | src/gopkg.in 9 | *.DS_Store 10 | .dev_builds 11 | .final_builds 12 | dev_releases 13 | ci/vars*.* 14 | ci/*develop* 15 | **/.terraform/* 16 | 17 | # .tfstate files 18 | *.tfstate 19 | *.tfstate.* 20 | terraform.log 21 | *.bak 22 | *.tgz -------------------------------------------------------------------------------- /.ruby-version: -------------------------------------------------------------------------------- 1 | 3.0.2 2 | -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- 1 | source 'https://rubygems.org' 2 | 3 | group :development, :test do 4 | gem 'bosh-template' 5 | gem 'rspec' 6 | gem 'rspec-its' 7 | end 8 | -------------------------------------------------------------------------------- /Gemfile.lock: -------------------------------------------------------------------------------- 1 | GEM 2 | remote: https://rubygems.org/ 3 | specs: 4 | bosh-template (2.2.1) 5 | semi_semantic (~> 1.2.0) 6 | diff-lcs (1.4.4) 7 | rspec (3.10.0) 8 | rspec-core (~> 3.10.0) 9 | rspec-expectations (~> 3.10.0) 10 | rspec-mocks (~> 3.10.0) 11 | rspec-core (3.10.1) 12 | rspec-support (~> 3.10.0) 13 | rspec-expectations (3.10.1) 14 | diff-lcs (>= 1.2.0, < 2.0) 15 | rspec-support (~> 3.10.0) 16 | rspec-its (1.3.0) 17 | rspec-core (>= 3.0.0) 18 | rspec-expectations (>= 3.0.0) 19 | rspec-mocks (3.10.2) 20 | diff-lcs (>= 1.2.0, < 2.0) 21 | rspec-support (~> 3.10.0) 22 | rspec-support (3.10.2) 23 | semi_semantic (1.2.0) 24 | 25 | PLATFORMS 26 | x86_64-darwin-20 27 | 28 | DEPENDENCIES 29 | bosh-template 30 | rspec 31 | rspec-its 32 | 33 | BUNDLED WITH 34 | 2.2.26 35 | -------------------------------------------------------------------------------- /NOTICE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2015-Present CloudFoundry.org Foundation, Inc. All Rights Reserved. 2 | 3 | This project contains software that is Copyright (c) 2015 Pivotal Software, Inc. 4 | 5 | This project is licensed to you under the Apache License, Version 2.0 (the "License"). 6 | You may not use this project except in compliance with the License. 7 | 8 | This project may include a number of subcomponents with separate copyright notices 9 | and license terms. Your use of these subcomponents is subject to the terms and 10 | conditions of the subcomponent's license, as noted in the LICENSE file. -------------------------------------------------------------------------------- /ci/assets/e2e-test-release/README.md: -------------------------------------------------------------------------------- 1 | ### Done 2 | + check slb attach to ecs success 3 | - setup iaas 4 | - deploy bosh 5 | - create release(define Jobs, compile packages, run scripts) 6 | - upload cloud config 7 | - deploy release 8 | 9 | ### TODO 10 | + spot instance. 11 | - CPI will support it. 12 | - refers: https://help.aliyun.com/document_detail/25499.html?spm=5176.product25365.6.826.4G5N3N 13 | + create ecs by heavy stemcell. 14 | - Alicloud does not support, we may do it by work around. 15 | + ram profile attached to ecs 16 | - Alicloud does not support. 17 | + raw ephemeral disk. 18 | - Alicloud does not support. 19 | - refers: https://bosh.io/docs/aws-instance-storage.html 20 | 21 | ### Nice to have 22 | + install dependency offline -------------------------------------------------------------------------------- /ci/assets/e2e-test-release/cloud-config.yml: -------------------------------------------------------------------------------- 1 | networks: 2 | - name: private 3 | type: dynamic 4 | cloud_properties: 5 | vswitch_id: ((vswitch_id)) 6 | security_group_id: ((security_group_id)) 7 | - name: vip 8 | type: vip 9 | 10 | vm_types: 11 | - name: default 12 | cloud_properties: &default_cloud_properties 13 | instance_type: ecs.sn2.medium 14 | availability_zone: ((zone)) 15 | - name: slb_registration_pool 16 | cloud_properties: 17 | <<: *default_cloud_properties 18 | slbs: [((slb))] 19 | - name: spot_instance_pool 20 | cloud_properties: 21 | <<: *default_cloud_properties 22 | instance_type: ecs.sn1ne.large 23 | spot_strategy: "SpotWithPriceLimit" 24 | spot_price_limit: 0.10 # 10x the normal bid price 25 | 26 | compilation: 27 | reuse_compilation_vms: true 28 | workers: 1 29 | network: private 30 | cloud_properties: 31 | instance_type: ecs.sn2.medium 32 | availability_zone: ((zone)) 33 | -------------------------------------------------------------------------------- /ci/assets/e2e-test-release/config/final.yml: -------------------------------------------------------------------------------- 1 | --- 2 | name: e2e-test 3 | 4 | blobstore: 5 | provider: local 6 | options: 7 | blobstore_path: ./blobs -------------------------------------------------------------------------------- /ci/assets/e2e-test-release/jobs/slb-registration-test/monit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cloudfoundry/bosh-alicloud-cpi-release/8659b46aac02650124e89ed89c620cf7bc82c245/ci/assets/e2e-test-release/jobs/slb-registration-test/monit -------------------------------------------------------------------------------- /ci/assets/e2e-test-release/jobs/slb-registration-test/spec: -------------------------------------------------------------------------------- 1 | --- 2 | name: slb-registration-test 3 | 4 | templates: 5 | run.erb: bin/run 6 | 7 | packages: 8 | - jq 9 | - aliyuncli 10 | 11 | 12 | properties: 13 | load_balancer_id: 14 | description: The id of the SLB with which the errand should be registered 15 | ecs_region: 16 | description: The Alicloud region in which the errand is run 17 | access_key: 18 | description: The Alicloud Access Key 19 | secret_key: 20 | description: The Alicloud Access Secret Key 21 | -------------------------------------------------------------------------------- /ci/assets/e2e-test-release/jobs/slb-registration-test/templates/run.erb: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | set -e -o pipefail 3 | 4 | export PATH=$(readlink -nf /var/vcap/packages/jq):/usr/local/bin:/var/vcap/packages/aliyuncli/bin/:${PATH} 5 | 6 | slb_id=<%= p('load_balancer_id') %> 7 | region=<%= p('ecs_region') %> 8 | key=<%= p('access_key') %> 9 | secret=<%= p('secret_key') %> 10 | 11 | echo "fetching instance ID" 12 | instance_id=$(curl http://100.100.100.200/latest/meta-data/instance-id) 13 | echo "instance id: $instance_id" 14 | 15 | echo "checking if our instance $instance_id is registered with $slb_id" 16 | aliyun slb DescribeLoadBalancerAttribute --LoadBalancerId "$slb_id" --access-key-id $key --access-key-secret $secret --region $region | jq --arg instance_id $instance_id -e '.BackendServers.BackendServer[0] | select(.ServerId == $instance_id)' 17 | -------------------------------------------------------------------------------- /ci/assets/e2e-test-release/jobs/spot-instance-test/monit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cloudfoundry/bosh-alicloud-cpi-release/8659b46aac02650124e89ed89c620cf7bc82c245/ci/assets/e2e-test-release/jobs/spot-instance-test/monit -------------------------------------------------------------------------------- /ci/assets/e2e-test-release/jobs/spot-instance-test/spec: -------------------------------------------------------------------------------- 1 | --- 2 | name: spot-instance-test 3 | 4 | packages: 5 | - jq 6 | - aliyuncli 7 | 8 | templates: 9 | run.erb: bin/run 10 | 11 | properties: 12 | ecs_region: 13 | description: The Alicloud region in which the errand is run 14 | access_key: 15 | description: The Alicloud Access Key 16 | secret_key: 17 | description: The Alicloud Access Secret Key 18 | -------------------------------------------------------------------------------- /ci/assets/e2e-test-release/jobs/spot-instance-test/templates/run.erb: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | set -e -o pipefail 3 | 4 | export PATH=$(readlink -nf /var/vcap/packages/jq):/usr/local/bin:/var/vcap/packages/aliyuncli/bin/:${PATH} 5 | 6 | region=<%= p('ecs_region') %> 7 | key=<%= p('access_key') %> 8 | secret=<%= p('secret_key') %> 9 | 10 | echo "fetching instance ID" 11 | instance_id=$(curl http://100.100.100.200/latest/meta-data/instance-id) 12 | echo "instance id: $instance_id" 13 | 14 | echo "checking if our instance $instance_id is a spot instance" 15 | instance_info="$(aliyun ecs DescribeInstances --InstanceIds \[\"${instance_id}\"\] --access-key-id $key --access-key-secret $secret --region $region)" 16 | spot_strategy="$(echo ${instance_info} | jq -r '.Instances.Instance[0].SpotStrategy')" 17 | 18 | if [ "${spot_strategy}" != "SpotWithPriceLimit" ]; then 19 | echo "Expected Instance SpotStrategy to be 'SpotWithPriceLimit' but was '${spot_strategy}'" 20 | exit 1 21 | fi 22 | 23 | echo "Success!" 24 | -------------------------------------------------------------------------------- /ci/assets/e2e-test-release/packages/aliyuncli/packaging: -------------------------------------------------------------------------------- 1 | set -e 2 | 3 | mkdir -p ${BOSH_INSTALL_TARGET}/bin 4 | 5 | tar xzvf aliyuncli/aliyun-cli-linux-amd64.tgz -C ${BOSH_INSTALL_TARGET}/bin 6 | -------------------------------------------------------------------------------- /ci/assets/e2e-test-release/packages/aliyuncli/spec: -------------------------------------------------------------------------------- 1 | --- 2 | name: aliyuncli 3 | 4 | files: 5 | - aliyuncli/aliyun-cli-linux-amd64.tgz 6 | -------------------------------------------------------------------------------- /ci/assets/e2e-test-release/packages/jq/packaging: -------------------------------------------------------------------------------- 1 | # abort script on any command that exits with a non zero value 2 | set -e 3 | 4 | cp jq/jq-linux64 ${BOSH_INSTALL_TARGET}/jq 5 | 6 | chmod +x ${BOSH_INSTALL_TARGET}/jq 7 | -------------------------------------------------------------------------------- /ci/assets/e2e-test-release/packages/jq/spec: -------------------------------------------------------------------------------- 1 | --- 2 | name: jq 3 | 4 | dependencies: [] 5 | 6 | files: 7 | - jq/jq-linux64 8 | -------------------------------------------------------------------------------- /ci/assets/e2e-test-release/src/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cloudfoundry/bosh-alicloud-cpi-release/8659b46aac02650124e89ed89c620cf7bc82c245/ci/assets/e2e-test-release/src/.gitkeep -------------------------------------------------------------------------------- /ci/configure: -------------------------------------------------------------------------------- 1 | fly -t xenial sp -p bosh-alicloud-cpi \ 2 | -c pipeline.yml \ 3 | --load-vars-from=vars-pipeline.yaml 4 | -------------------------------------------------------------------------------- /ci/docker/boshcpi.alicloud-cpi-release/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cloudfoundry/bosh-alicloud-cpi-release/8659b46aac02650124e89ed89c620cf7bc82c245/ci/docker/boshcpi.alicloud-cpi-release/README.md -------------------------------------------------------------------------------- /ci/docker/boshcpi.alicloud-cpi-release/build-image.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | 5 | DOCKER_IMAGE=${DOCKER_IMAGE:-oucwangyue/alicloud-cpi-release} 6 | 7 | docker login 8 | 9 | echo "Building docker image..." 10 | docker build -t $DOCKER_IMAGE . 11 | 12 | echo "Pushing docker image..." 13 | docker push $DOCKER_IMAGE -------------------------------------------------------------------------------- /ci/tasks/build-candidate.yml: -------------------------------------------------------------------------------- 1 | --- 2 | platform: linux 3 | image_resource: 4 | type: registry-image 5 | source: 6 | repository: foundationalinfrastructure/gce-cpi-release 7 | 8 | inputs: 9 | - name: bosh-cpi-src 10 | - name: version-semver 11 | - name: bosh-cli 12 | 13 | outputs: 14 | - name: candidate 15 | 16 | run: 17 | path: bosh-cpi-src/ci/tasks/build-candidate.sh -------------------------------------------------------------------------------- /ci/tasks/ensure-terminated.yml: -------------------------------------------------------------------------------- 1 | --- 2 | platform: linux 3 | image_resource: 4 | type: registry-image 5 | source: 6 | repository: foundationalinfrastructure/gce-cpi-release 7 | inputs: 8 | - name: bosh-cpi-src 9 | - name: environment 10 | - name: jq-blob 11 | - name: aliyun-cli 12 | run: 13 | path: bosh-cpi-src/ci/tasks/ensure-terminated.sh 14 | params: 15 | ALICLOUD_ACCESS_KEY_ID: "" 16 | ALICLOUD_ACCESS_KEY_SECRET: "" 17 | ALICLOUD_DEFAULT_REGION: "" -------------------------------------------------------------------------------- /ci/tasks/promote-candidate.yml: -------------------------------------------------------------------------------- 1 | --- 2 | platform: linux 3 | image_resource: 4 | type: registry-image 5 | source: 6 | repository: foundationalinfrastructure/gce-cpi-release 7 | inputs: 8 | - name: bosh-cpi-src 9 | - name: bosh-cpi-release 10 | - name: release-version-semver 11 | - name: bosh-cli 12 | outputs: 13 | - name: promoted 14 | run: 15 | path: bosh-cpi-src/ci/tasks/promote-candidate.sh 16 | params: 17 | ALICLOUD_ACCESS_KEY_ID: "" 18 | ALICLOUD_ACCESS_KEY_SECRET: "" -------------------------------------------------------------------------------- /ci/tasks/put-environment.yml: -------------------------------------------------------------------------------- 1 | --- 2 | platform: linux 3 | 4 | image_resource: 5 | type: registry-image 6 | source: 7 | repository: foundationalinfrastructure/gce-cpi-release 8 | 9 | inputs: 10 | - name: bosh-cpi-src 11 | 12 | outputs: 13 | - name: environment 14 | 15 | run: 16 | path: bosh-cpi-src/ci/tasks/put-environment.sh 17 | params: 18 | access_key: "" 19 | secret_key: "" 20 | region: "" 21 | env_name: "" 22 | public_key: "" 23 | delete_on_failure: false 24 | generate_random_name: false 25 | action: "" 26 | terraform_role_arn: "" 27 | terraform_source: "" 28 | output_module: "" 29 | remote_state_access_key: "" 30 | remote_state_secret_key: "" 31 | remote_state_region: "" 32 | remote_state_bucket: "" 33 | remote_state_file_path: "" 34 | remote_state_file_name: "" 35 | -------------------------------------------------------------------------------- /ci/tasks/run-e2e.yml: -------------------------------------------------------------------------------- 1 | --- 2 | platform: linux 3 | 4 | image_resource: 5 | type: docker-image 6 | source: {repository: oucwangyue/alicloud-cpi-release} 7 | 8 | inputs: 9 | - name: bosh-cpi-src 10 | - name: environment 11 | - name: stemcell 12 | - name: heavy-stemcell 13 | - name: bosh-cli 14 | - name: director-state 15 | - name: jq-blob 16 | - name: aliyun-cli 17 | 18 | run: 19 | path: bosh-cpi-src/ci/tasks/run-e2e.sh 20 | 21 | params: 22 | BOSH_DEBUG_LEVEL: info 23 | ALICLOUD_ACCESS_KEY_ID: "" 24 | ALICLOUD_SECRET_ACCESS_KEY: "" -------------------------------------------------------------------------------- /ci/tasks/run-integration.yml: -------------------------------------------------------------------------------- 1 | --- 2 | platform: linux 3 | image_resource: 4 | type: registry-image 5 | source: 6 | repository: foundationalinfrastructure/gce-cpi-release 7 | inputs: 8 | - name: bosh-cpi-src 9 | - name: stemcell 10 | - name: environment 11 | - name: aliyun-cli 12 | run: 13 | path: bosh-cpi-src/ci/tasks/run-integration.sh 14 | params: 15 | ALICLOUD_ACCESS_KEY_ID: "" 16 | ALICLOUD_ACCESS_KEY_SECRET: "" 17 | -------------------------------------------------------------------------------- /ci/tasks/unit-tests.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | 5 | : ${ALICLOUD_ACCESS_KEY_ID:?} 6 | : ${ALICLOUD_ACCESS_KEY_SECRET:?} 7 | : ${ALICLOUD_DEFAULT_REGION:?} 8 | 9 | source bosh-cpi-src/ci/tasks/utils.sh 10 | 11 | export GOPATH=${PWD}/bosh-cpi-src 12 | export PATH=${GOPATH}/bin:$PATH 13 | 14 | export ACCESS_KEY_ID=${ALICLOUD_ACCESS_KEY_ID} 15 | export ACCESS_KEY_SECRET=${ALICLOUD_ACCESS_KEY_SECRET} 16 | export ACCESS_KEY_CONFIG=${ALICLOUD_ACCESS_KEY_SECRET} 17 | 18 | check_go_version $GOPATH 19 | check_param $ACCESS_KEY_ID 20 | #check_param $ACCESS_KEY_SECRET 21 | 22 | 23 | cd ${PWD}/bosh-cpi-src 24 | 25 | 26 | # logs 27 | echo "begin unit test..." 28 | 29 | make 30 | make test 31 | -------------------------------------------------------------------------------- /ci/tasks/unit-tests.yml: -------------------------------------------------------------------------------- 1 | --- 2 | platform: linux 3 | image_resource: 4 | type: registry-image 5 | source: 6 | repository: foundationalinfrastructure/gce-cpi-release 7 | inputs: 8 | - name: bosh-cpi-src 9 | 10 | run: 11 | path: sh 12 | args: 13 | - -exc 14 | - | 15 | chmod +x bosh-cpi-src/ci/tasks/unit-tests.sh 16 | bash bosh-cpi-src/ci/tasks/unit-tests.sh 17 | 18 | params: 19 | ALICLOUD_ACCESS_KEY_ID: "" 20 | ALICLOUD_ACCESS_KEY_SECRET: "" 21 | ALICLOUD_DEFAULT_REGION: "" -------------------------------------------------------------------------------- /config/blobs.yml: -------------------------------------------------------------------------------- 1 | go1.24.2.linux-amd64.tar.gz: 2 | size: 78516109 3 | sha: sha256:68097bd680839cbc9d464a0edce4f7c333975e27a90246890e9f1078c7e702ad 4 | -------------------------------------------------------------------------------- /config/final.yml: -------------------------------------------------------------------------------- 1 | --- 2 | name: bosh-alicloud-cpi 3 | 4 | blobstore: 5 | provider: local 6 | options: 7 | blobstore_path: ./blobs -------------------------------------------------------------------------------- /docs/bosh/init-alicloud.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cloudfoundry/bosh-alicloud-cpi-release/8659b46aac02650124e89ed89c620cf7bc82c245/docs/bosh/init-alicloud.md -------------------------------------------------------------------------------- /docs/bosh/releases-in-china.yml: -------------------------------------------------------------------------------- 1 | --- 2 | 3 | # CPI 4 | - type: replace 5 | path: /releases/name=bosh-alicloud-cpi/url? 6 | value: http://bosh.oss-cn-hangzhou.aliyuncs.com/bosh-alicloud-cpi-release-r16.tgz 7 | 8 | # light stemcell 9 | - type: replace 10 | path: /resource_pools/name=vms/stemcell/url? 11 | value: http://bosh.oss-cn-hangzhou.aliyuncs.com/light-bosh-stemcell-1016-alicloud-kvm-ubuntu-trusty-go_agent.tgz 12 | 13 | -------------------------------------------------------------------------------- /jobs/alicloud_cpi/monit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cloudfoundry/bosh-alicloud-cpi-release/8659b46aac02650124e89ed89c620cf7bc82c245/jobs/alicloud_cpi/monit -------------------------------------------------------------------------------- /jobs/alicloud_cpi/templates/bin/cpi.erb: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | 5 | # Set directories 6 | PACKAGES_DIR=${BOSH_PACKAGES_DIR:-/var/vcap/packages} 7 | JOBS_DIR=${BOSH_JOBS_DIR:-/var/vcap/jobs} 8 | LOGS_DIR=/var/vcap/sys/log/alicloud_cpi 9 | 10 | export DIR=`ls ${JOBS_DIR}` 11 | 12 | # Invoke CPI 13 | cmd="${PACKAGES_DIR}/bosh-alicloud-cpi/bin/alicloud_cpi -configFile=${JOBS_DIR}/alicloud_cpi/config/cpi.json" 14 | 15 | if [ -d ${LOGS_DIR} ]; then 16 | exec $cmd 2>>${LOGS_DIR}/cpi.stderr.log <&0 17 | else 18 | exec $cmd <&0 19 | fi -------------------------------------------------------------------------------- /jobs/alicloud_cpi/templates/bin/pre-start.erb: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | echo " ========================================" 4 | echo " pre-start.erb " 5 | echo " ========================================" 6 | 7 | # Set directories 8 | LOGS_DIR=/var/vcap/sys/log 9 | 10 | if [ -d ${LOGS_DIR} ]; then 11 | mkdir -p ${LOGS_DIR}/alicloud_cpi 12 | fi 13 | chown -R vcap:vcap ${LOGS_DIR}/alicloud_cpi 14 | -------------------------------------------------------------------------------- /packages/bosh-alicloud-cpi/spec: -------------------------------------------------------------------------------- 1 | --- 2 | name: bosh-alicloud-cpi 3 | 4 | dependencies: 5 | - golang 6 | files: 7 | - Makefile 8 | - bosh-alicloud-cpi/**/* -------------------------------------------------------------------------------- /packages/golang/packaging: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e # exit immediately if a simple command exits with a non-zero status 4 | set -u # report the usage of uninitialized variables 5 | 6 | # Grab the latest versions that are in the directory 7 | PLATFORM=`uname | tr '[:upper:]' '[:lower:]'` 8 | 9 | # Extract Go Programming Language package 10 | tar xzvf ${BOSH_COMPILE_TARGET}/go*.${PLATFORM}-amd64.tar.gz 11 | 12 | # Copy Go Programming Language package 13 | mkdir -p ${BOSH_INSTALL_TARGET}/bin 14 | cp -R ${BOSH_COMPILE_TARGET}/go/* ${BOSH_INSTALL_TARGET} 15 | -------------------------------------------------------------------------------- /packages/golang/spec: -------------------------------------------------------------------------------- 1 | --- 2 | name: golang 3 | 4 | files: 5 | - go1.*.linux-amd64.tar.gz # from https://golang.org/dl/ 6 | -------------------------------------------------------------------------------- /releases/bosh-alicloud-cpi/bosh-alicloud-cpi-1.yml: -------------------------------------------------------------------------------- 1 | name: alicloud_cpi 2 | version: "1" 3 | commit_hash: 736ffb5 4 | uncommitted_changes: false 5 | jobs: 6 | - name: alicloud_cpi 7 | version: 51fb52356e12817b5b3931424783f642d91e8937 8 | fingerprint: 51fb52356e12817b5b3931424783f642d91e8937 9 | sha1: f2a1d04991d72d04c863842b02f8259df85a198f 10 | license: 11 | version: 9bb85bd388bb9bbd1b279f7921e71cd318007cb6 12 | fingerprint: 9bb85bd388bb9bbd1b279f7921e71cd318007cb6 13 | sha1: 4efe35196e4b9aba7dcb62851951a9880af663b4 14 | -------------------------------------------------------------------------------- /releases/bosh-alicloud-cpi/bosh-alicloud-cpi-10.yml: -------------------------------------------------------------------------------- 1 | name: bosh-alicloud-cpi 2 | version: "10" 3 | commit_hash: 0f98b59 4 | uncommitted_changes: true 5 | jobs: 6 | - name: alicloud_cpi 7 | version: 76858dfa5aaf1c58cedaba1d7a80c84333ed0ba3 8 | fingerprint: 76858dfa5aaf1c58cedaba1d7a80c84333ed0ba3 9 | sha1: da0999d0dbbe1810473e05f2e0cc4ee6624308e0 10 | packages: 11 | - name: bosh-alicloud-cpi 12 | version: 346f26aed5c09c9db539ef4f5a0ab3a710200eca 13 | fingerprint: 346f26aed5c09c9db539ef4f5a0ab3a710200eca 14 | sha1: ce6779a23d824fed837727e74bc64b42f94db561 15 | dependencies: 16 | - golang 17 | - name: golang 18 | version: 03d27673d09c82e7a4183d651e6c293b4a501de7 19 | fingerprint: 03d27673d09c82e7a4183d651e6c293b4a501de7 20 | sha1: ca71981598520b5b928af57471d408c210cc7794 21 | dependencies: [] 22 | license: 23 | version: 180c96ab2e4e366b5e2866b11a6ea9b3a18d5fe8 24 | fingerprint: 180c96ab2e4e366b5e2866b11a6ea9b3a18d5fe8 25 | sha1: b0f7b3e4c7c789f745603552d7affcfeb6a13869 26 | -------------------------------------------------------------------------------- /releases/bosh-alicloud-cpi/bosh-alicloud-cpi-11.yml: -------------------------------------------------------------------------------- 1 | name: bosh-alicloud-cpi 2 | version: "11" 3 | commit_hash: 0f98b59 4 | uncommitted_changes: true 5 | jobs: 6 | - name: alicloud_cpi 7 | version: 76858dfa5aaf1c58cedaba1d7a80c84333ed0ba3 8 | fingerprint: 76858dfa5aaf1c58cedaba1d7a80c84333ed0ba3 9 | sha1: da0999d0dbbe1810473e05f2e0cc4ee6624308e0 10 | packages: 11 | - name: bosh-alicloud-cpi 12 | version: 346f26aed5c09c9db539ef4f5a0ab3a710200eca 13 | fingerprint: 346f26aed5c09c9db539ef4f5a0ab3a710200eca 14 | sha1: ce6779a23d824fed837727e74bc64b42f94db561 15 | dependencies: 16 | - golang 17 | - name: golang 18 | version: 03d27673d09c82e7a4183d651e6c293b4a501de7 19 | fingerprint: 03d27673d09c82e7a4183d651e6c293b4a501de7 20 | sha1: ca71981598520b5b928af57471d408c210cc7794 21 | dependencies: [] 22 | license: 23 | version: 180c96ab2e4e366b5e2866b11a6ea9b3a18d5fe8 24 | fingerprint: 180c96ab2e4e366b5e2866b11a6ea9b3a18d5fe8 25 | sha1: b0f7b3e4c7c789f745603552d7affcfeb6a13869 26 | -------------------------------------------------------------------------------- /releases/bosh-alicloud-cpi/bosh-alicloud-cpi-12.yml: -------------------------------------------------------------------------------- 1 | name: bosh-alicloud-cpi 2 | version: "12" 3 | commit_hash: 0f98b59 4 | uncommitted_changes: true 5 | jobs: 6 | - name: alicloud_cpi 7 | version: 76858dfa5aaf1c58cedaba1d7a80c84333ed0ba3 8 | fingerprint: 76858dfa5aaf1c58cedaba1d7a80c84333ed0ba3 9 | sha1: da0999d0dbbe1810473e05f2e0cc4ee6624308e0 10 | packages: 11 | - name: bosh-alicloud-cpi 12 | version: 346f26aed5c09c9db539ef4f5a0ab3a710200eca 13 | fingerprint: 346f26aed5c09c9db539ef4f5a0ab3a710200eca 14 | sha1: ce6779a23d824fed837727e74bc64b42f94db561 15 | dependencies: 16 | - golang 17 | - name: golang 18 | version: 03d27673d09c82e7a4183d651e6c293b4a501de7 19 | fingerprint: 03d27673d09c82e7a4183d651e6c293b4a501de7 20 | sha1: ca71981598520b5b928af57471d408c210cc7794 21 | dependencies: [] 22 | license: 23 | version: 180c96ab2e4e366b5e2866b11a6ea9b3a18d5fe8 24 | fingerprint: 180c96ab2e4e366b5e2866b11a6ea9b3a18d5fe8 25 | sha1: b0f7b3e4c7c789f745603552d7affcfeb6a13869 26 | -------------------------------------------------------------------------------- /releases/bosh-alicloud-cpi/bosh-alicloud-cpi-13.yml: -------------------------------------------------------------------------------- 1 | name: bosh-alicloud-cpi 2 | version: "13" 3 | commit_hash: 0f98b59 4 | uncommitted_changes: true 5 | jobs: 6 | - name: alicloud_cpi 7 | version: 76858dfa5aaf1c58cedaba1d7a80c84333ed0ba3 8 | fingerprint: 76858dfa5aaf1c58cedaba1d7a80c84333ed0ba3 9 | sha1: da0999d0dbbe1810473e05f2e0cc4ee6624308e0 10 | packages: 11 | - name: bosh-alicloud-cpi 12 | version: 346f26aed5c09c9db539ef4f5a0ab3a710200eca 13 | fingerprint: 346f26aed5c09c9db539ef4f5a0ab3a710200eca 14 | sha1: ce6779a23d824fed837727e74bc64b42f94db561 15 | dependencies: 16 | - golang 17 | - name: golang 18 | version: 03d27673d09c82e7a4183d651e6c293b4a501de7 19 | fingerprint: 03d27673d09c82e7a4183d651e6c293b4a501de7 20 | sha1: ca71981598520b5b928af57471d408c210cc7794 21 | dependencies: [] 22 | license: 23 | version: 180c96ab2e4e366b5e2866b11a6ea9b3a18d5fe8 24 | fingerprint: 180c96ab2e4e366b5e2866b11a6ea9b3a18d5fe8 25 | sha1: b0f7b3e4c7c789f745603552d7affcfeb6a13869 26 | -------------------------------------------------------------------------------- /releases/bosh-alicloud-cpi/bosh-alicloud-cpi-14.yml: -------------------------------------------------------------------------------- 1 | name: bosh-alicloud-cpi 2 | version: "14" 3 | commit_hash: 0f98b59 4 | uncommitted_changes: true 5 | jobs: 6 | - name: alicloud_cpi 7 | version: 76858dfa5aaf1c58cedaba1d7a80c84333ed0ba3 8 | fingerprint: 76858dfa5aaf1c58cedaba1d7a80c84333ed0ba3 9 | sha1: da0999d0dbbe1810473e05f2e0cc4ee6624308e0 10 | packages: 11 | - name: bosh-alicloud-cpi 12 | version: 346f26aed5c09c9db539ef4f5a0ab3a710200eca 13 | fingerprint: 346f26aed5c09c9db539ef4f5a0ab3a710200eca 14 | sha1: ce6779a23d824fed837727e74bc64b42f94db561 15 | dependencies: 16 | - golang 17 | - name: golang 18 | version: 03d27673d09c82e7a4183d651e6c293b4a501de7 19 | fingerprint: 03d27673d09c82e7a4183d651e6c293b4a501de7 20 | sha1: ca71981598520b5b928af57471d408c210cc7794 21 | dependencies: [] 22 | license: 23 | version: 180c96ab2e4e366b5e2866b11a6ea9b3a18d5fe8 24 | fingerprint: 180c96ab2e4e366b5e2866b11a6ea9b3a18d5fe8 25 | sha1: b0f7b3e4c7c789f745603552d7affcfeb6a13869 26 | -------------------------------------------------------------------------------- /releases/bosh-alicloud-cpi/bosh-alicloud-cpi-15.yml: -------------------------------------------------------------------------------- 1 | name: bosh-alicloud-cpi 2 | version: "15" 3 | commit_hash: 0f98b59 4 | uncommitted_changes: true 5 | jobs: 6 | - name: alicloud_cpi 7 | version: 76858dfa5aaf1c58cedaba1d7a80c84333ed0ba3 8 | fingerprint: 76858dfa5aaf1c58cedaba1d7a80c84333ed0ba3 9 | sha1: da0999d0dbbe1810473e05f2e0cc4ee6624308e0 10 | packages: 11 | - name: bosh-alicloud-cpi 12 | version: 346f26aed5c09c9db539ef4f5a0ab3a710200eca 13 | fingerprint: 346f26aed5c09c9db539ef4f5a0ab3a710200eca 14 | sha1: ce6779a23d824fed837727e74bc64b42f94db561 15 | dependencies: 16 | - golang 17 | - name: golang 18 | version: 03d27673d09c82e7a4183d651e6c293b4a501de7 19 | fingerprint: 03d27673d09c82e7a4183d651e6c293b4a501de7 20 | sha1: ca71981598520b5b928af57471d408c210cc7794 21 | dependencies: [] 22 | license: 23 | version: 180c96ab2e4e366b5e2866b11a6ea9b3a18d5fe8 24 | fingerprint: 180c96ab2e4e366b5e2866b11a6ea9b3a18d5fe8 25 | sha1: b0f7b3e4c7c789f745603552d7affcfeb6a13869 26 | -------------------------------------------------------------------------------- /releases/bosh-alicloud-cpi/bosh-alicloud-cpi-16.yml: -------------------------------------------------------------------------------- 1 | name: bosh-alicloud-cpi 2 | version: "16" 3 | commit_hash: 0f13157 4 | uncommitted_changes: false 5 | jobs: 6 | - name: alicloud_cpi 7 | version: 3c837ec6a92026e749a0685a7dcded4690d38458 8 | fingerprint: 3c837ec6a92026e749a0685a7dcded4690d38458 9 | sha1: 4ea162ce7fce4d3fb178d7285825736a117d7425 10 | packages: 11 | - name: bosh-alicloud-cpi 12 | version: 7f790a4446142fa8b15c563988593403c14ba2f3 13 | fingerprint: 7f790a4446142fa8b15c563988593403c14ba2f3 14 | sha1: 89a24983274a8cc66bdb8c8abaee513c4756e0c7 15 | dependencies: 16 | - golang 17 | - name: golang 18 | version: 03d27673d09c82e7a4183d651e6c293b4a501de7 19 | fingerprint: 03d27673d09c82e7a4183d651e6c293b4a501de7 20 | sha1: 89f9a96609d9027ade1335a0056c43701c4b7319 21 | dependencies: [] 22 | license: 23 | version: 180c96ab2e4e366b5e2866b11a6ea9b3a18d5fe8 24 | fingerprint: 180c96ab2e4e366b5e2866b11a6ea9b3a18d5fe8 25 | sha1: 4fb3ffbf4c486e8cdfd27113a3f7a0f77cb48daa 26 | -------------------------------------------------------------------------------- /releases/bosh-alicloud-cpi/bosh-alicloud-cpi-17.yml: -------------------------------------------------------------------------------- 1 | name: bosh-alicloud-cpi 2 | version: "17" 3 | commit_hash: f6b8558 4 | uncommitted_changes: false 5 | jobs: 6 | - name: alicloud_cpi 7 | version: 3c837ec6a92026e749a0685a7dcded4690d38458 8 | fingerprint: 3c837ec6a92026e749a0685a7dcded4690d38458 9 | sha1: 4ea162ce7fce4d3fb178d7285825736a117d7425 10 | packages: 11 | - name: bosh-alicloud-cpi 12 | version: 33ea06cf3bd0de8b890a67b1db9115d8384cea61 13 | fingerprint: 33ea06cf3bd0de8b890a67b1db9115d8384cea61 14 | sha1: 10a06b9e6c6ed9928f793f87d122796a7d5b220b 15 | dependencies: 16 | - golang 17 | - name: golang 18 | version: 03d27673d09c82e7a4183d651e6c293b4a501de7 19 | fingerprint: 03d27673d09c82e7a4183d651e6c293b4a501de7 20 | sha1: 89f9a96609d9027ade1335a0056c43701c4b7319 21 | dependencies: [] 22 | license: 23 | version: 180c96ab2e4e366b5e2866b11a6ea9b3a18d5fe8 24 | fingerprint: 180c96ab2e4e366b5e2866b11a6ea9b3a18d5fe8 25 | sha1: 4fb3ffbf4c486e8cdfd27113a3f7a0f77cb48daa 26 | -------------------------------------------------------------------------------- /releases/bosh-alicloud-cpi/bosh-alicloud-cpi-18.yml: -------------------------------------------------------------------------------- 1 | name: bosh-alicloud-cpi 2 | version: "18" 3 | commit_hash: d5da51d 4 | uncommitted_changes: false 5 | jobs: 6 | - name: alicloud_cpi 7 | version: 3c837ec6a92026e749a0685a7dcded4690d38458 8 | fingerprint: 3c837ec6a92026e749a0685a7dcded4690d38458 9 | sha1: 4ea162ce7fce4d3fb178d7285825736a117d7425 10 | packages: 11 | - name: bosh-alicloud-cpi 12 | version: 7f57fbd53a846c3dab34ead5cfe52c8ba3638d90 13 | fingerprint: 7f57fbd53a846c3dab34ead5cfe52c8ba3638d90 14 | sha1: dd5b1335d38f83d340a1039ecd47f1ac8ff9cfaa 15 | dependencies: 16 | - golang 17 | - name: golang 18 | version: 03d27673d09c82e7a4183d651e6c293b4a501de7 19 | fingerprint: 03d27673d09c82e7a4183d651e6c293b4a501de7 20 | sha1: 89f9a96609d9027ade1335a0056c43701c4b7319 21 | dependencies: [] 22 | license: 23 | version: 180c96ab2e4e366b5e2866b11a6ea9b3a18d5fe8 24 | fingerprint: 180c96ab2e4e366b5e2866b11a6ea9b3a18d5fe8 25 | sha1: 4fb3ffbf4c486e8cdfd27113a3f7a0f77cb48daa 26 | -------------------------------------------------------------------------------- /releases/bosh-alicloud-cpi/bosh-alicloud-cpi-2.yml: -------------------------------------------------------------------------------- 1 | name: bosh-alicloud-cpi 2 | version: "2" 3 | commit_hash: 31a479a 4 | uncommitted_changes: false 5 | jobs: 6 | - name: bosh-alicloud-cpi 7 | version: 58c14df2bae9865623674ae0017eb4c99cd6c6b5 8 | fingerprint: 58c14df2bae9865623674ae0017eb4c99cd6c6b5 9 | sha1: 875da810180749575fc7738e2d08d20f6fe913c9 10 | packages: 11 | - name: bosh-alicloud-cpi 12 | version: 10da8891f49e83b560b0c2de571a9581c14eb4f5 13 | fingerprint: 10da8891f49e83b560b0c2de571a9581c14eb4f5 14 | sha1: 719576581b0371a59261393277f6fd7304ec879b 15 | dependencies: 16 | - golang 17 | - name: golang 18 | version: c31dbd461c7aa01dbd772f3857234138638ed9ed 19 | fingerprint: c31dbd461c7aa01dbd772f3857234138638ed9ed 20 | sha1: 0687dc8ec46ee8fd49c88d795f21b2c474365cf8 21 | dependencies: [] 22 | license: 23 | version: 9bb85bd388bb9bbd1b279f7921e71cd318007cb6 24 | fingerprint: 9bb85bd388bb9bbd1b279f7921e71cd318007cb6 25 | sha1: 4efe35196e4b9aba7dcb62851951a9880af663b4 26 | -------------------------------------------------------------------------------- /releases/bosh-alicloud-cpi/bosh-alicloud-cpi-3.yml: -------------------------------------------------------------------------------- 1 | name: bosh-alicloud-cpi 2 | version: "3" 3 | commit_hash: b351051 4 | uncommitted_changes: false 5 | jobs: 6 | - name: alicloud_cpi 7 | version: 2f2754180ed45a1e978e63bee3907ad387ac2e2c 8 | fingerprint: 2f2754180ed45a1e978e63bee3907ad387ac2e2c 9 | sha1: e35fc9599367508ea5ad23456dd2fb3a46bce29a 10 | packages: 11 | - name: bosh-alicloud-cpi 12 | version: ba039a0bb580bd08bf19cb9459158fee2bc30094 13 | fingerprint: ba039a0bb580bd08bf19cb9459158fee2bc30094 14 | sha1: eb93227a037d67b2f1225663e46990cca181e755 15 | dependencies: 16 | - golang 17 | - name: golang 18 | version: 3f60ca9303a388cc02492810b66b44fbebae3f26 19 | fingerprint: 3f60ca9303a388cc02492810b66b44fbebae3f26 20 | sha1: 2aab33280adce5c9c7e11b831839cb8fffd3cab5 21 | dependencies: [] 22 | license: 23 | version: 9bb85bd388bb9bbd1b279f7921e71cd318007cb6 24 | fingerprint: 9bb85bd388bb9bbd1b279f7921e71cd318007cb6 25 | sha1: 06bd9f611a1e5656698d8da506ca97c7374b9e03 26 | -------------------------------------------------------------------------------- /releases/bosh-alicloud-cpi/bosh-alicloud-cpi-4.yml: -------------------------------------------------------------------------------- 1 | name: bosh-alicloud-cpi 2 | version: "4" 3 | commit_hash: "9928805" 4 | uncommitted_changes: false 5 | jobs: 6 | - name: alicloud_cpi 7 | version: 2f2754180ed45a1e978e63bee3907ad387ac2e2c 8 | fingerprint: 2f2754180ed45a1e978e63bee3907ad387ac2e2c 9 | sha1: e35fc9599367508ea5ad23456dd2fb3a46bce29a 10 | packages: 11 | - name: bosh-alicloud-cpi 12 | version: ba039a0bb580bd08bf19cb9459158fee2bc30094 13 | fingerprint: ba039a0bb580bd08bf19cb9459158fee2bc30094 14 | sha1: eb93227a037d67b2f1225663e46990cca181e755 15 | dependencies: 16 | - golang 17 | - name: golang 18 | version: 3f60ca9303a388cc02492810b66b44fbebae3f26 19 | fingerprint: 3f60ca9303a388cc02492810b66b44fbebae3f26 20 | sha1: 2aab33280adce5c9c7e11b831839cb8fffd3cab5 21 | dependencies: [] 22 | license: 23 | version: 9bb85bd388bb9bbd1b279f7921e71cd318007cb6 24 | fingerprint: 9bb85bd388bb9bbd1b279f7921e71cd318007cb6 25 | sha1: 06bd9f611a1e5656698d8da506ca97c7374b9e03 26 | -------------------------------------------------------------------------------- /releases/bosh-alicloud-cpi/bosh-alicloud-cpi-5.yml: -------------------------------------------------------------------------------- 1 | name: bosh-alicloud-cpi 2 | version: "5" 3 | commit_hash: 3664d6c 4 | uncommitted_changes: false 5 | jobs: 6 | - name: alicloud_cpi 7 | version: 2f2754180ed45a1e978e63bee3907ad387ac2e2c 8 | fingerprint: 2f2754180ed45a1e978e63bee3907ad387ac2e2c 9 | sha1: e35fc9599367508ea5ad23456dd2fb3a46bce29a 10 | packages: 11 | - name: bosh-alicloud-cpi 12 | version: ba039a0bb580bd08bf19cb9459158fee2bc30094 13 | fingerprint: ba039a0bb580bd08bf19cb9459158fee2bc30094 14 | sha1: eb93227a037d67b2f1225663e46990cca181e755 15 | dependencies: 16 | - golang 17 | - name: golang 18 | version: 3f60ca9303a388cc02492810b66b44fbebae3f26 19 | fingerprint: 3f60ca9303a388cc02492810b66b44fbebae3f26 20 | sha1: 2aab33280adce5c9c7e11b831839cb8fffd3cab5 21 | dependencies: [] 22 | license: 23 | version: 9bb85bd388bb9bbd1b279f7921e71cd318007cb6 24 | fingerprint: 9bb85bd388bb9bbd1b279f7921e71cd318007cb6 25 | sha1: 06bd9f611a1e5656698d8da506ca97c7374b9e03 26 | -------------------------------------------------------------------------------- /releases/bosh-alicloud-cpi/bosh-alicloud-cpi-6.yml: -------------------------------------------------------------------------------- 1 | name: bosh-alicloud-cpi 2 | version: "6" 3 | commit_hash: f7d4074 4 | uncommitted_changes: true 5 | jobs: 6 | - name: alicloud_cpi 7 | version: 702d27da6b13b4fca4344550607287c9d88614fb 8 | fingerprint: 702d27da6b13b4fca4344550607287c9d88614fb 9 | sha1: d7fa8dfba3dca6cf58fba69c4f88d57b0846745d 10 | packages: 11 | - name: bosh-alicloud-cpi 12 | version: ae7679ef249724420bb371f30a62654a9b432867 13 | fingerprint: ae7679ef249724420bb371f30a62654a9b432867 14 | sha1: 9f5cfd2455241060334ed3043ffa4fad71fcdfce 15 | dependencies: 16 | - golang 17 | - name: golang 18 | version: 3f60ca9303a388cc02492810b66b44fbebae3f26 19 | fingerprint: 3f60ca9303a388cc02492810b66b44fbebae3f26 20 | sha1: 952e5505b420c20a5560833700d06fc4856e43f5 21 | dependencies: [] 22 | license: 23 | version: 9bb85bd388bb9bbd1b279f7921e71cd318007cb6 24 | fingerprint: 9bb85bd388bb9bbd1b279f7921e71cd318007cb6 25 | sha1: fb6a8f62303483d5a04f5d5d072fdf49da38f71f 26 | -------------------------------------------------------------------------------- /releases/bosh-alicloud-cpi/bosh-alicloud-cpi-7.yml: -------------------------------------------------------------------------------- 1 | name: bosh-alicloud-cpi 2 | version: "7" 3 | commit_hash: 58dff99 4 | uncommitted_changes: true 5 | jobs: 6 | - name: alicloud_cpi 7 | version: 702d27da6b13b4fca4344550607287c9d88614fb 8 | fingerprint: 702d27da6b13b4fca4344550607287c9d88614fb 9 | sha1: d7fa8dfba3dca6cf58fba69c4f88d57b0846745d 10 | packages: 11 | - name: bosh-alicloud-cpi 12 | version: 3aa5d2da319e756e0a13453d459c1c07b39cc450 13 | fingerprint: 3aa5d2da319e756e0a13453d459c1c07b39cc450 14 | sha1: fc8f104272d8c4f9ea750046e55c958c3e8a11d8 15 | dependencies: 16 | - golang 17 | - name: golang 18 | version: 3f60ca9303a388cc02492810b66b44fbebae3f26 19 | fingerprint: 3f60ca9303a388cc02492810b66b44fbebae3f26 20 | sha1: 952e5505b420c20a5560833700d06fc4856e43f5 21 | dependencies: [] 22 | license: 23 | version: 9bb85bd388bb9bbd1b279f7921e71cd318007cb6 24 | fingerprint: 9bb85bd388bb9bbd1b279f7921e71cd318007cb6 25 | sha1: fb6a8f62303483d5a04f5d5d072fdf49da38f71f 26 | -------------------------------------------------------------------------------- /scripts/check-ruby-version: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" 4 | 5 | PROJECT_RUBY_VERSION=$(< "${script_dir}/../.ruby-version") 6 | 7 | if [[ ! -f /usr/local/share/chruby/chruby.sh ]]; then 8 | brew install chruby 9 | fi 10 | source /usr/local/share/chruby/chruby.sh 11 | 12 | chruby "${PROJECT_RUBY_VERSION}" 13 | if [[ $? -eq 1 ]]; then 14 | echo "Ruby version ${PROJECT_RUBY_VERSION} not found. Installing..." 15 | 16 | which "ruby-install" > /dev/null 2>&1 17 | if [[ $? -eq 1 ]]; then 18 | brew install "ruby-install" 19 | fi 20 | 21 | echo "Installing Ruby version ${PROJECT_RUBY_VERSION} ..." 22 | ruby-install "ruby" "${PROJECT_RUBY_VERSION}" 23 | chruby "${PROJECT_RUBY_VERSION}" 24 | 25 | echo "Ruby version ${PROJECT_RUBY_VERSION} successfully installed." 26 | fi 27 | echo "Using ruby version ${PROJECT_RUBY_VERSION}" 28 | 29 | echo "Installing bundler..." 30 | gem install "bundler" 31 | -------------------------------------------------------------------------------- /scripts/test-unit-erb: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | 5 | script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" 6 | 7 | cd "${script_dir}/.." || exit 1 8 | 9 | ${script_dir}/check-ruby-version 10 | bundle install 11 | bundle exec rspec 12 | -------------------------------------------------------------------------------- /setup-ginkgo: -------------------------------------------------------------------------------- 1 | go install bosh-alicloud-cpi/vendor/github.com/onsi/ginkgo/ginkgo 2 | -------------------------------------------------------------------------------- /src/Makefile: -------------------------------------------------------------------------------- 1 | BINDIR := $(CURDIR)/bin 2 | MAINDIR := bosh-alicloud-cpi 3 | MAINFILE := $(CURDIR)/src/$(MAINDIR)/main/main.go 4 | EXECUTABLE := $(BINDIR)/alicloud_cpi 5 | 6 | GOPATH := $(CURDIR) 7 | 8 | GO_OPTION ?= 9 | ifeq ($(VERBOSE), 1) 10 | GO_OPTIONS += -v 11 | endif 12 | 13 | BUILD_OPTIONS = -a 14 | 15 | all: clean build 16 | 17 | clean: 18 | rm -f $(BINDIR)/* 19 | 20 | build: 21 | mkdir -p $(BINDIR) 22 | go build $(GO_OPTIONS) $(BUILD_OPTIONS) -o ${EXECUTABLE} $(MAINFILE) -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/calculate_vm_properties.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | 5 | package action 6 | 7 | import ( 8 | "github.com/cppforlife/bosh-cpi-go/apiv1" 9 | ) 10 | 11 | type CalculateVMCloudPropertiesMethod struct { 12 | CallContext 13 | } 14 | 15 | func NewCalculateVMCloudPropertiesMethod(cc CallContext) CalculateVMCloudPropertiesMethod { 16 | return CalculateVMCloudPropertiesMethod{cc} 17 | } 18 | 19 | func (a CalculateVMCloudPropertiesMethod) CalculateVMCloudProperties(resources apiv1.VMResources) (apiv1.VMCloudProps, error) { 20 | return apiv1.NewVMCloudPropsFromMap(nil), nil 21 | 22 | } 23 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/call_context.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | "bosh-alicloud-cpi/alicloud" 8 | //"bosh-alicloud-cpi/registry" 9 | 10 | boshlog "github.com/cloudfoundry/bosh-utils/logger" 11 | ) 12 | 13 | type CallContext struct { 14 | Input string 15 | Logger boshlog.Logger 16 | Config alicloud.Config 17 | ConfigConcern bool 18 | } 19 | 20 | type Services struct { 21 | Stemcells alicloud.StemcellManager 22 | Osses alicloud.OssManager 23 | Instances alicloud.InstanceManager 24 | Disks alicloud.DiskManager 25 | Networks alicloud.NetworkManager 26 | Registry alicloud.RegistryManager 27 | } 28 | 29 | func NewCallContext(input []byte, logger boshlog.Logger, config alicloud.Config) CallContext { 30 | return CallContext{ 31 | Input: string(input), 32 | Logger: logger, 33 | Config: config, 34 | ConfigConcern: false, 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/caller_test.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | . "github.com/onsi/ginkgo" 8 | . "github.com/onsi/gomega" 9 | ) 10 | 11 | var _ = Describe("caller", func() { 12 | It("foo", func() { 13 | Expect(true).To(Equal(true)) 14 | }) 15 | }) 16 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/delete_snapshot.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | "bosh-alicloud-cpi/alicloud" 8 | 9 | bosherr "github.com/cloudfoundry/bosh-utils/errors" 10 | "github.com/cppforlife/bosh-cpi-go/apiv1" 11 | ) 12 | 13 | type DeleteSnapshotMethod struct { 14 | CallContext 15 | disks alicloud.DiskManager 16 | } 17 | 18 | func NewDeleteSnapshotMethod(cc CallContext, disks alicloud.DiskManager) DeleteSnapshotMethod { 19 | return DeleteSnapshotMethod{cc, disks} 20 | } 21 | 22 | func (a DeleteSnapshotMethod) DeleteSnapshot(snapshotCID apiv1.SnapshotCID) error { 23 | cid := snapshotCID.AsString() 24 | 25 | err := a.disks.DeleteSnapshot(cid) 26 | 27 | if err != nil { 28 | return bosherr.WrapErrorf(err, "delete snapshot %s failed", cid) 29 | } 30 | 31 | return nil 32 | } 33 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/delete_snapshot_test.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | "bosh-alicloud-cpi/mock" 8 | 9 | . "github.com/onsi/ginkgo" 10 | . "github.com/onsi/gomega" 11 | ) 12 | 13 | var _ = Describe("cpi:delete_snapshot", func() { 14 | It("can delete exists snapshot", func() { 15 | ssid := mockContext.NewSnapshot("") 16 | _, err := caller.Call("delete_snapshot", ssid) 17 | Expect(err).NotTo(HaveOccurred()) 18 | 19 | _, ok := mockContext.Snapshots[ssid] 20 | Expect(ok).Should(BeFalse()) 21 | }) 22 | 23 | It("raise error with non exists snapshot", func() { 24 | ssid := mock.NewSnapshotId() 25 | _, err := caller.Call("delete_snapshot", ssid) 26 | Expect(err).To(HaveOccurred()) 27 | }) 28 | }) 29 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/delete_stemcell.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | "bosh-alicloud-cpi/alicloud" 8 | 9 | bosherr "github.com/cloudfoundry/bosh-utils/errors" 10 | "github.com/cppforlife/bosh-cpi-go/apiv1" 11 | ) 12 | 13 | type DeleteStemcellMethod struct { 14 | CallContext 15 | stemcells alicloud.StemcellManager 16 | } 17 | 18 | func NewDeleteStemcellMethod(cc CallContext, stemcells alicloud.StemcellManager) DeleteStemcellMethod { 19 | return DeleteStemcellMethod{cc, stemcells} 20 | } 21 | 22 | func (a DeleteStemcellMethod) DeleteStemcell(cid apiv1.StemcellCID) error { 23 | if err := a.stemcells.DeleteStemcell(cid.AsString()); err != nil { 24 | return bosherr.WrapErrorf(err, "Deleting stemcell '%s'", cid) 25 | } 26 | 27 | return nil 28 | } 29 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/delete_vm_test.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | "bosh-alicloud-cpi/mock" 8 | 9 | . "github.com/onsi/ginkgo" 10 | . "github.com/onsi/gomega" 11 | ) 12 | 13 | var _ = Describe("cpi:delete_vm", func() { 14 | It("can delete existent vm", func() { 15 | cid, _ := mockContext.NewInstance() 16 | 17 | _, err := caller.Call("delete_vm", cid) 18 | Expect(err).NotTo(HaveOccurred()) 19 | }) 20 | 21 | It("no error with non-exist vm", func() { 22 | cid := mock.NewInstanceId() 23 | _, err := caller.Call("delete_vm", cid) 24 | Expect(err).NotTo(HaveOccurred()) 25 | }) 26 | }) 27 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/get_disks.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | "bosh-alicloud-cpi/alicloud" 8 | 9 | bosherr "github.com/cloudfoundry/bosh-utils/errors" 10 | "github.com/cppforlife/bosh-cpi-go/apiv1" 11 | ) 12 | 13 | type GetDisksMethod struct { 14 | CallContext 15 | disks alicloud.DiskManager 16 | } 17 | 18 | func NewGetDisksMethod(cc CallContext, disks alicloud.DiskManager) GetDisksMethod { 19 | return GetDisksMethod{cc, disks} 20 | } 21 | 22 | func (a GetDisksMethod) GetDisks(cid apiv1.VMCID) ([]apiv1.DiskCID, error) { 23 | 24 | instCid := cid.AsString() 25 | 26 | disks, err := a.disks.GetDisks(instCid) 27 | 28 | if err != nil { 29 | return nil, bosherr.WrapErrorf(err, "DescribeDisks failed cid=%s", instCid) 30 | } 31 | 32 | var results []apiv1.DiskCID 33 | for _, v := range disks { 34 | results = append(results, apiv1.NewDiskCID(v.DiskId)) 35 | } 36 | 37 | return results, nil 38 | } 39 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/get_disks_test.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | . "github.com/onsi/ginkgo" 8 | . "github.com/onsi/gomega" 9 | ) 10 | 11 | var _ = Describe("cpi:get_disks", func() { 12 | It("can get with existent disk", func() { 13 | //r := caller.Run([]byte(` 14 | // 15 | // 16 | //`), ) 17 | 18 | instCid, _ := mockContext.NewInstance() 19 | cid1, _ := mockContext.NewDisk(instCid) 20 | cid2, _ := mockContext.NewDisk(instCid) 21 | 22 | r, err := caller.CallGeneric("get_disks", instCid) 23 | Expect(err).NotTo(HaveOccurred()) 24 | 25 | disks := r.([]interface{}) 26 | Expect(disks).Should(ConsistOf(cid1, cid2)) 27 | }) 28 | }) 29 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/has_disk.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | bosherr "github.com/cloudfoundry/bosh-utils/errors" 8 | "github.com/cppforlife/bosh-cpi-go/apiv1" 9 | 10 | "bosh-alicloud-cpi/alicloud" 11 | ) 12 | 13 | type HasDiskMethod struct { 14 | CallContext 15 | disks alicloud.DiskManager 16 | } 17 | 18 | func NewHasDiskMethod(cc CallContext, disks alicloud.DiskManager) HasDiskMethod { 19 | return HasDiskMethod{cc, disks} 20 | } 21 | 22 | func (a HasDiskMethod) HasDisk(diskCID apiv1.DiskCID) (bool, error) { 23 | 24 | diskCid := diskCID.AsString() 25 | disk, err := a.disks.GetDisk(diskCid) 26 | 27 | if err != nil { 28 | return false, bosherr.WrapErrorf(err, "DescribeDisks failed cid=%s", diskCid) 29 | } 30 | 31 | if disk == nil { 32 | return false, nil 33 | } else { 34 | return true, nil 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/has_disk_test.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | "bosh-alicloud-cpi/mock" 8 | 9 | . "github.com/onsi/ginkgo" 10 | . "github.com/onsi/gomega" 11 | ) 12 | 13 | var _ = Describe("cpi:has_disk", func() { 14 | It("can run with existent disk", func() { 15 | cid, _ := mockContext.NewDisk("") 16 | r, err := caller.CallGeneric("has_disk", cid) 17 | Expect(err).NotTo(HaveOccurred()) 18 | 19 | b := r.(bool) 20 | Expect(b).To(BeTrue()) 21 | }) 22 | It("can run with non-existed disk", func() { 23 | cid := mock.NewDiskId() 24 | r, err := caller.CallGeneric("has_disk", cid) 25 | Expect(err).NotTo(HaveOccurred()) 26 | 27 | b := r.(bool) 28 | Expect(b).To(BeFalse()) 29 | }) 30 | }) 31 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/has_vm.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | "bosh-alicloud-cpi/alicloud" 8 | 9 | bosherr "github.com/cloudfoundry/bosh-utils/errors" 10 | "github.com/cppforlife/bosh-cpi-go/apiv1" 11 | ) 12 | 13 | type HasVMMethod struct { 14 | CallContext 15 | instances alicloud.InstanceManager 16 | } 17 | 18 | func NewHasVMMethod(cc CallContext, instances alicloud.InstanceManager) HasVMMethod { 19 | return HasVMMethod{cc, instances} 20 | } 21 | 22 | func (a HasVMMethod) HasVM(cid apiv1.VMCID) (bool, error) { 23 | // 24 | // 25 | instCid := cid.AsString() 26 | inst, err := a.instances.GetInstance(instCid) 27 | 28 | if err != nil { 29 | return false, bosherr.WrapErrorf(err, "Finding VM Failed '%s'", cid) 30 | } 31 | 32 | if inst != nil { 33 | return true, nil 34 | } else { 35 | return false, nil 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/has_vm_test.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | "bosh-alicloud-cpi/mock" 8 | 9 | . "github.com/onsi/ginkgo" 10 | . "github.com/onsi/gomega" 11 | ) 12 | 13 | var _ = Describe("cpi:has_vm", func() { 14 | It("can run with existent vm", func() { 15 | cid, _ := mockContext.NewInstance() 16 | r, err := caller.CallGeneric("has_vm", cid) 17 | Expect(err).NotTo(HaveOccurred()) 18 | 19 | b := r.(bool) 20 | Expect(b).To(BeTrue()) 21 | }) 22 | 23 | It("can run with non-existent vm", func() { 24 | cid := mock.NewInstanceId() 25 | r, err := caller.CallGeneric("has_vm", cid) 26 | Expect(err).NotTo(HaveOccurred()) 27 | 28 | b := r.(bool) 29 | Expect(b).To(BeFalse()) 30 | }) 31 | }) 32 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/info.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | "github.com/cppforlife/bosh-cpi-go/apiv1" 8 | ) 9 | 10 | type InfoMethod struct{} 11 | 12 | func NewInfoMethod() InfoMethod { 13 | return InfoMethod{} 14 | } 15 | 16 | func (a InfoMethod) Info() (apiv1.Info, error) { 17 | return apiv1.Info{StemcellFormats: []string{"general-tar", "alicloud-tar", "alicloud-raw"}}, nil 18 | } 19 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/info_test.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | "bosh-alicloud-cpi/mock" 8 | 9 | . "github.com/onsi/ginkgo" 10 | . "github.com/onsi/gomega" 11 | ) 12 | 13 | var _ = Describe("cpi:info", func() { 14 | It("can run with input", func() { 15 | r := caller.Run([]byte(`{ 16 | "method":"info", 17 | "arguments":[], 18 | "context":{"director_uuid":"18badfe3-ec32-46eb-bbb5-fbdec1cfc5fa","request_id":"cpi-570352"} 19 | }`)) 20 | Expect(r.GetError()).NotTo(HaveOccurred()) 21 | }) 22 | 23 | It("can run with non-existent vm", func() { 24 | cid := mock.NewInstanceId() 25 | r, err := caller.CallGeneric("has_vm", cid) 26 | Expect(err).NotTo(HaveOccurred()) 27 | 28 | b := r.(bool) 29 | Expect(b).To(BeFalse()) 30 | }) 31 | }) 32 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/reboot_vm_test.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | . "github.com/onsi/ginkgo" 8 | . "github.com/onsi/gomega" 9 | ) 10 | 11 | var _ = Describe("cpi:reboot_vm", func() { 12 | It("can run reboot vm", func() { 13 | //r := caller.Run([]byte(` 14 | // 15 | // 16 | //`), ) 17 | Expect(nil).NotTo(HaveOccurred()) 18 | }) 19 | }) 20 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/resize_disk.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | "bosh-alicloud-cpi/alicloud" 8 | 9 | bosherr "github.com/cloudfoundry/bosh-utils/errors" 10 | "github.com/cppforlife/bosh-cpi-go/apiv1" 11 | ) 12 | 13 | type ResizeDiskMethod struct { 14 | CallContext 15 | disks alicloud.DiskManager 16 | } 17 | 18 | func NewResizeDiskMethod(cc CallContext, disks alicloud.DiskManager) ResizeDiskMethod { 19 | return ResizeDiskMethod{cc, disks} 20 | } 21 | 22 | func (a HasDiskMethod) ResizeDisk(diskCID apiv1.DiskCID, size int) error { 23 | sizeGB := ConvertToGB(float64(size)) 24 | err := a.disks.ResizeDisk(diskCID.AsString(), sizeGB) 25 | if err != nil { 26 | return bosherr.WrapErrorf(err, "ResizeDisk %s to %dMB failed", diskCID.AsString(), size) 27 | } 28 | return nil 29 | } 30 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/resize_disk_test.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | . "github.com/onsi/ginkgo" 8 | . "github.com/onsi/gomega" 9 | ) 10 | 11 | var _ = Describe("cpi:resize_disk", func() { 12 | It("can run", func() { 13 | cid, _ := mockContext.NewDisk("") 14 | _, err := caller.Call("resize_disk", cid, 51200) 15 | Expect(err).NotTo(HaveOccurred()) 16 | 17 | disk, ok := mockContext.Disks[cid] 18 | Expect(ok).Should(BeTrue()) 19 | Expect(disk.Size).Should(Equal(50)) 20 | }) 21 | }) 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/snapshot_disk.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | "bosh-alicloud-cpi/alicloud" 8 | 9 | bosherr "github.com/cloudfoundry/bosh-utils/errors" 10 | "github.com/cppforlife/bosh-cpi-go/apiv1" 11 | ) 12 | 13 | type SnapshotDiskMethod struct { 14 | CallContext 15 | disks alicloud.DiskManager 16 | } 17 | 18 | func NewSnapshotDiskMethod(cc CallContext, disks alicloud.DiskManager) SnapshotDiskMethod { 19 | return SnapshotDiskMethod{cc, disks} 20 | } 21 | 22 | func (a SnapshotDiskMethod) SnapshotDisk(diskCID apiv1.DiskCID, meta apiv1.DiskMeta) (apiv1.SnapshotCID, error) { 23 | diskCid := diskCID.AsString() 24 | 25 | // 26 | // TODO, get snapshot name from meta 27 | ssid, err := a.disks.CreateSnapshot(diskCid, "") 28 | if err != nil { 29 | return apiv1.SnapshotCID{}, bosherr.WrapErrorf(err, "create snapshot for %s failed", diskCid) 30 | } 31 | 32 | return apiv1.NewSnapshotCID(ssid), nil 33 | } 34 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/snapshot_disk_test.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import ( 7 | . "github.com/onsi/ginkgo" 8 | . "github.com/onsi/gomega" 9 | ) 10 | 11 | var _ = Describe("cpi:snapshot_disk", func() { 12 | It("can create snapshot with exists disk", func() { 13 | diskCid, _ := mockContext.NewDisk("") 14 | ssid, err := caller.Call("snapshot_disk", diskCid, nil) 15 | Expect(err).NotTo(HaveOccurred()) 16 | 17 | s, ok := mockContext.Snapshots[ssid] 18 | Expect(ok).Should(BeTrue()) 19 | Expect(s).Should(Equal(diskCid)) 20 | }) 21 | }) 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/action/validators.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package action 5 | 6 | import "fmt" 7 | 8 | func validAllowedStringValues(v string, arr []string) error { 9 | existed := false 10 | for _, str := range arr { 11 | if str == v { 12 | existed = true 13 | break 14 | } 15 | } 16 | 17 | if !existed { 18 | return fmt.Errorf("the value %s is not in array %#v", v, arr) 19 | } 20 | return nil 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/alicloud/alicloud_suite_test.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package alicloud 5 | 6 | import ( 7 | "testing" 8 | 9 | . "github.com/onsi/ginkgo" 10 | . "github.com/onsi/gomega" 11 | ) 12 | 13 | func TestAlicloud(t *testing.T) { 14 | RegisterFailHandler(Fail) 15 | RunSpecs(t, "Alicloud Suite") 16 | } 17 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/alicloud/disk_manager_test.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package alicloud 5 | 6 | import ( 7 | "bosh-alicloud-cpi/alicloud" 8 | 9 | . "github.com/onsi/ginkgo" 10 | . "github.com/onsi/gomega" 11 | ) 12 | 13 | var _ = Describe("DiskManager", func() { 14 | It("should amend disk path", func() { 15 | By("cloud_efficiency /dev/xvdc -> /dev/vdc") 16 | Expect(AmendDiskPath("/dev/xvdc", alicloud.DiskCategoryCloudEfficiency)).To(Equal("/dev/vdc")) 17 | By("cloud_efficiency /dev/vdc -> /dev/vdc") 18 | Expect(AmendDiskPath("/dev/vdc", alicloud.DiskCategoryCloudEfficiency)).To(Equal("/dev/vdc")) 19 | By("ssd /dev/xvdc -> /dev/xvdc") 20 | Expect(AmendDiskPath("/dev/xvdc", alicloud.DiskCategoryCloudSSD)).To(Equal("/dev/vdc")) 21 | By("ssd /dev/vdc -> /dev/vdc") 22 | Expect(AmendDiskPath("/dev/vdc", alicloud.DiskCategoryCloudEfficiency)).To(Equal("/dev/vdc")) 23 | }) 24 | }) 25 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/integration/assertions.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package integration 5 | 6 | //import ( 7 | // . "github.com/onsi/gomega" 8 | //) 9 | // 10 | //func assertSucceeds(request string) { 11 | // response, err := execCPI(request) 12 | // Expect(err).ToNot(HaveOccurred()) 13 | // Expect(response.Error).To(BeNil()) 14 | //} 15 | // 16 | //func assertSucceedsWithResult(request string) interface{} { 17 | // response, err := execCPI(request) 18 | // Expect(err).ToNot(HaveOccurred()) 19 | // print(response.Error.Message) 20 | // Expect(response.Error).To(BeNil()) 21 | // Expect(response.Result).ToNot(BeNil()) 22 | // return response.Result 23 | //} 24 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/mock/context_test.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package mock 5 | 6 | import ( 7 | . "github.com/onsi/ginkgo" 8 | . "github.com/onsi/gomega" 9 | ) 10 | 11 | var _ = Describe("mock:TestContext", func() { 12 | It("foo", func() { 13 | Expect(true).To(Equal(true)) 14 | }) 15 | }) 16 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/mock/mock_suite_test.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package mock 5 | 6 | import ( 7 | "testing" 8 | 9 | . "github.com/onsi/ginkgo" 10 | . "github.com/onsi/gomega" 11 | ) 12 | 13 | func TestBooks(t *testing.T) { 14 | RegisterFailHandler(Fail) 15 | RunSpecs(t, "Mock Suite") 16 | } 17 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/registry/agent_settings_test.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package registry 5 | 6 | import ( 7 | . "github.com/onsi/ginkgo" 8 | . "github.com/onsi/gomega" 9 | ) 10 | 11 | var _ = Describe("Sample", func() { 12 | BeforeEach(func() { 13 | 14 | }) 15 | 16 | It("Short", func() { 17 | s := "Hello" 18 | Expect(s).To(Equal("Hello")) 19 | }) 20 | 21 | //It("Integration", func() { 22 | // s := testing.Short() 23 | // Expect(s).To(Equal(true)) 24 | //}) 25 | }) 26 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/registry/client.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package registry 5 | 6 | // Client represents a BOSH Registry Client. 7 | type Client interface { 8 | Delete(instanceID string) error 9 | Fetch(instanceID string) (AgentSettings, error) 10 | Update(instanceID string, agentSettings AgentSettings) error 11 | } 12 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/registry/registry_suite_test.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2017-2019 Alibaba Group Holding Limited 3 | */ 4 | package registry 5 | 6 | import ( 7 | "testing" 8 | 9 | . "github.com/onsi/ginkgo" 10 | . "github.com/onsi/gomega" 11 | ) 12 | 13 | func TestBooks(t *testing.T) { 14 | RegisterFailHandler(Fail) 15 | RunSpecs(t, "Registry Suite") 16 | } 17 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/alibabacloud-go/debug/debug/assert.go: -------------------------------------------------------------------------------- 1 | package debug 2 | 3 | import ( 4 | "reflect" 5 | "testing" 6 | ) 7 | 8 | func assertEqual(t *testing.T, a, b interface{}) { 9 | if !reflect.DeepEqual(a, b) { 10 | t.Errorf("%v != %v", a, b) 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/alibabacloud-go/debug/debug/debug.go: -------------------------------------------------------------------------------- 1 | package debug 2 | 3 | import ( 4 | "fmt" 5 | "os" 6 | "strings" 7 | ) 8 | 9 | type Debug func(format string, v ...interface{}) 10 | 11 | var hookGetEnv = func() string { 12 | return os.Getenv("DEBUG") 13 | } 14 | 15 | var hookPrint = func(input string) { 16 | fmt.Println(input) 17 | } 18 | 19 | func Init(flag string) Debug { 20 | enable := false 21 | 22 | env := hookGetEnv() 23 | parts := strings.Split(env, ",") 24 | for _, part := range parts { 25 | if part == flag { 26 | enable = true 27 | break 28 | } 29 | } 30 | 31 | return func(format string, v ...interface{}) { 32 | if enable { 33 | hookPrint(fmt.Sprintf(format, v...)) 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/credential.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (the "License"); 3 | * you may not use this file except in compliance with the License. 4 | * You may obtain a copy of the License at 5 | * 6 | * http://www.apache.org/licenses/LICENSE-2.0 7 | * 8 | * Unless required by applicable law or agreed to in writing, software 9 | * distributed under the License is distributed on an "AS IS" BASIS, 10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11 | * See the License for the specific language governing permissions and 12 | * limitations under the License. 13 | */ 14 | 15 | package auth 16 | 17 | type Credential interface { 18 | } 19 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/credentials/bearer_token_credential.go: -------------------------------------------------------------------------------- 1 | package credentials 2 | 3 | type BearerTokenCredential struct { 4 | BearerToken string 5 | } 6 | 7 | // NewBearerTokenCredential return a BearerTokenCredential object 8 | func NewBearerTokenCredential(token string) *BearerTokenCredential { 9 | return &BearerTokenCredential{ 10 | BearerToken: token, 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/credentials/ecs_ram_role.go: -------------------------------------------------------------------------------- 1 | package credentials 2 | 3 | func (oldCred *StsRoleNameOnEcsCredential) ToEcsRamRoleCredential() *EcsRamRoleCredential { 4 | return &EcsRamRoleCredential{ 5 | RoleName: oldCred.RoleName, 6 | } 7 | } 8 | 9 | type EcsRamRoleCredential struct { 10 | RoleName string 11 | } 12 | 13 | func NewEcsRamRoleCredential(roleName string) *EcsRamRoleCredential { 14 | return &EcsRamRoleCredential{ 15 | RoleName: roleName, 16 | } 17 | } 18 | 19 | // Deprecated: Use EcsRamRoleCredential in this package instead. 20 | type StsRoleNameOnEcsCredential struct { 21 | RoleName string 22 | } 23 | 24 | // Deprecated: Use NewEcsRamRoleCredential in this package instead. 25 | func NewStsRoleNameOnEcsCredential(roleName string) *StsRoleNameOnEcsCredential { 26 | return &StsRoleNameOnEcsCredential{ 27 | RoleName: roleName, 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/credentials/provider/env.go: -------------------------------------------------------------------------------- 1 | package provider 2 | 3 | import ( 4 | "errors" 5 | "os" 6 | 7 | "github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/credentials" 8 | 9 | "github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth" 10 | ) 11 | 12 | type EnvProvider struct{} 13 | 14 | var ProviderEnv = new(EnvProvider) 15 | 16 | func NewEnvProvider() Provider { 17 | return &EnvProvider{} 18 | } 19 | 20 | func (p *EnvProvider) Resolve() (auth.Credential, error) { 21 | accessKeyID, ok1 := os.LookupEnv(ENVAccessKeyID) 22 | accessKeySecret, ok2 := os.LookupEnv(ENVAccessKeySecret) 23 | if !ok1 || !ok2 { 24 | return nil, nil 25 | } 26 | if accessKeyID == "" || accessKeySecret == "" { 27 | return nil, errors.New("Environmental variable (ALIBABACLOUD_ACCESS_KEY_ID or ALIBABACLOUD_ACCESS_KEY_SECRET) is empty") 28 | } 29 | return credentials.NewAccessKeyCredential(accessKeyID, accessKeySecret), nil 30 | } 31 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/credentials/provider/provider.go: -------------------------------------------------------------------------------- 1 | package provider 2 | 3 | import ( 4 | "github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth" 5 | ) 6 | 7 | //Environmental virables that may be used by the provider 8 | const ( 9 | ENVAccessKeyID = "ALIBABA_CLOUD_ACCESS_KEY_ID" 10 | ENVAccessKeySecret = "ALIBABA_CLOUD_ACCESS_KEY_SECRET" 11 | ENVCredentialFile = "ALIBABA_CLOUD_CREDENTIALS_FILE" 12 | ENVEcsMetadata = "ALIBABA_CLOUD_ECS_METADATA" 13 | PATHCredentialFile = "~/.alibabacloud/credentials" 14 | ) 15 | 16 | // When you want to customize the provider, you only need to implement the method of the interface. 17 | type Provider interface { 18 | Resolve() (auth.Credential, error) 19 | } 20 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/credentials/provider/provider_chain.go: -------------------------------------------------------------------------------- 1 | package provider 2 | 3 | import ( 4 | "errors" 5 | 6 | "github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth" 7 | ) 8 | 9 | type ProviderChain struct { 10 | Providers []Provider 11 | } 12 | 13 | var defaultproviders = []Provider{ProviderEnv, ProviderProfile, ProviderInstance} 14 | var DefaultChain = NewProviderChain(defaultproviders) 15 | 16 | func NewProviderChain(providers []Provider) Provider { 17 | return &ProviderChain{ 18 | Providers: providers, 19 | } 20 | } 21 | 22 | func (p *ProviderChain) Resolve() (auth.Credential, error) { 23 | for _, provider := range p.Providers { 24 | creds, err := provider.Resolve() 25 | if err != nil { 26 | return nil, err 27 | } else if err == nil && creds == nil { 28 | continue 29 | } 30 | return creds, err 31 | } 32 | return nil, errors.New("No credential found") 33 | 34 | } 35 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/credentials/rsa_key_pair_credential.go: -------------------------------------------------------------------------------- 1 | package credentials 2 | 3 | type RsaKeyPairCredential struct { 4 | PrivateKey string 5 | PublicKeyId string 6 | SessionExpiration int 7 | } 8 | 9 | func NewRsaKeyPairCredential(privateKey, publicKeyId string, sessionExpiration int) *RsaKeyPairCredential { 10 | return &RsaKeyPairCredential{ 11 | PrivateKey: privateKey, 12 | PublicKeyId: publicKeyId, 13 | SessionExpiration: sessionExpiration, 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/credentials/sts_credential.go: -------------------------------------------------------------------------------- 1 | package credentials 2 | 3 | type StsTokenCredential struct { 4 | AccessKeyId string 5 | AccessKeySecret string 6 | AccessKeyStsToken string 7 | } 8 | 9 | func NewStsTokenCredential(accessKeyId, accessKeySecret, accessKeyStsToken string) *StsTokenCredential { 10 | return &StsTokenCredential{ 11 | AccessKeyId: accessKeyId, 12 | AccessKeySecret: accessKeySecret, 13 | AccessKeyStsToken: accessKeyStsToken, 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/signers/session_credential.go: -------------------------------------------------------------------------------- 1 | package signers 2 | 3 | type SessionCredential struct { 4 | AccessKeyId string 5 | AccessKeySecret string 6 | StsToken string 7 | } 8 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/sdk/errors/error.go: -------------------------------------------------------------------------------- 1 | /* 2 | * Licensed under the Apache License, Version 2.0 (the "License"); 3 | * you may not use this file except in compliance with the License. 4 | * You may obtain a copy of the License at 5 | * 6 | * http://www.apache.org/licenses/LICENSE-2.0 7 | * 8 | * Unless required by applicable law or agreed to in writing, software 9 | * distributed under the License is distributed on an "AS IS" BASIS, 10 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11 | * See the License for the specific language governing permissions and 12 | * limitations under the License. 13 | */ 14 | 15 | package errors 16 | 17 | type Error interface { 18 | error 19 | HttpStatus() int 20 | ErrorCode() string 21 | Message() string 22 | OriginError() error 23 | } 24 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/sdk/utils/debug.go: -------------------------------------------------------------------------------- 1 | package utils 2 | 3 | import ( 4 | "fmt" 5 | "os" 6 | "strings" 7 | ) 8 | 9 | type Debug func(format string, v ...interface{}) 10 | 11 | var hookGetEnv = func() string { 12 | return os.Getenv("DEBUG") 13 | } 14 | 15 | var hookPrint = func(input string) { 16 | fmt.Println(input) 17 | } 18 | 19 | func Init(flag string) Debug { 20 | enable := false 21 | 22 | env := hookGetEnv() 23 | parts := strings.Split(env, ",") 24 | for _, part := range parts { 25 | if part == flag { 26 | enable = true 27 | break 28 | } 29 | } 30 | 31 | return func(format string, v ...interface{}) { 32 | if enable { 33 | hookPrint(fmt.Sprintf(format, v...)) 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_accounts.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Accounts is a nested struct in ecs response 19 | type Accounts struct { 20 | Account []Account `json:"Account" xml:"Account"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_add_accounts.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // AddAccounts is a nested struct in ecs response 19 | type AddAccounts struct { 20 | AddAccount []string `json:"AddAccount" xml:"AddAccount"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_attachments.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Attachments is a nested struct in ecs response 19 | type Attachments struct { 20 | Attachment []Attachment `json:"Attachment" xml:"Attachment"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_bandwidths.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Bandwidths is a nested struct in ecs response 19 | type Bandwidths struct { 20 | Bandwidth []Bandwidth `json:"Bandwidth" xml:"Bandwidth"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_capacities.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Capacities is a nested struct in ecs response 19 | type Capacities struct { 20 | Capacity []Capacity `json:"Capacity" xml:"Capacity"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_cluster.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Cluster is a nested struct in ecs response 19 | type Cluster struct { 20 | ClusterId string `json:"ClusterId" xml:"ClusterId"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_clusters.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Clusters is a nested struct in ecs response 19 | type Clusters struct { 20 | Cluster []Cluster `json:"Cluster" xml:"Cluster"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_commands.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Commands is a nested struct in ecs response 19 | type Commands struct { 20 | Command []Command `json:"Command" xml:"Command"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_condition.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Condition is a nested struct in ecs response 19 | type Condition struct { 20 | Key string `json:"Key" xml:"Key"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_conditions.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Conditions is a nested struct in ecs response 19 | type Conditions struct { 20 | Condition []Condition `json:"Condition" xml:"Condition"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_data_disks.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // DataDisks is a nested struct in ecs response 19 | type DataDisks struct { 20 | DataDisk []DataDisk `json:"DataDisk" xml:"DataDisk"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_demands.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Demands is a nested struct in ecs response 19 | type Demands struct { 20 | Demand []Demand `json:"Demand" xml:"Demand"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_entries.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Entries is a nested struct in ecs response 19 | type Entries struct { 20 | Entry []Entry `json:"Entry" xml:"Entry"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_event_id_set.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // EventIdSet is a nested struct in ecs response 19 | type EventIdSet struct { 20 | EventId []string `json:"EventId" xml:"EventId"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_features.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Features is a nested struct in ecs response 19 | type Features struct { 20 | NvmeSupport string `json:"NvmeSupport" xml:"NvmeSupport"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_ha_vips.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // HaVips is a nested struct in ecs response 19 | type HaVips struct { 20 | HaVip []HaVip `json:"HaVip" xml:"HaVip"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_hpc_clusters.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // HpcClusters is a nested struct in ecs response 19 | type HpcClusters struct { 20 | HpcCluster []HpcCluster `json:"HpcCluster" xml:"HpcCluster"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_images.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Images is a nested struct in ecs response 19 | type Images struct { 20 | Image []Image `json:"Image" xml:"Image"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_ipv6_set.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Ipv6Set is a nested struct in ecs response 19 | type Ipv6Set struct { 20 | Ipv6Address string `json:"Ipv6Address" xml:"Ipv6Address"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_items.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Items is a nested struct in ecs response 19 | type Items struct { 20 | Item []Item `json:"Item" xml:"Item"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_key_pairs.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // KeyPairs is a nested struct in ecs response 19 | type KeyPairs struct { 20 | KeyPair []KeyPair `json:"KeyPair" xml:"KeyPair"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_links.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Links is a nested struct in ecs response 19 | type Links struct { 20 | Link []Link `json:"Link" xml:"Link"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_metric_ids.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // MetricIds is a nested struct in ecs response 19 | type MetricIds struct { 20 | MetricId []string `json:"MetricId" xml:"MetricId"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_metric_sets.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // MetricSets is a nested struct in ecs response 19 | type MetricSets struct { 20 | MetricSet []MetricSet `json:"MetricSet" xml:"MetricSet"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_metrics.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Metrics is a nested struct in ecs response 19 | type Metrics struct { 20 | Metric []Metric `json:"Metric" xml:"Metric"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_nat_gateways.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // NatGateways is a nested struct in ecs response 19 | type NatGateways struct { 20 | NatGateway []NatGateway `json:"NatGateway" xml:"NatGateway"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_next_hops.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // NextHops is a nested struct in ecs response 19 | type NextHops struct { 20 | NextHop []NextHop `json:"NextHop" xml:"NextHop"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_operation_lock.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // OperationLock is a nested struct in ecs response 19 | type OperationLock struct { 20 | LockReason string `json:"LockReason" xml:"LockReason"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_permissions.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Permissions is a nested struct in ecs response 19 | type Permissions struct { 20 | Permission []Permission `json:"Permission" xml:"Permission"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_prefix_lists.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // PrefixLists is a nested struct in ecs response 19 | type PrefixLists struct { 20 | PrefixList []PrefixList `json:"PrefixList" xml:"PrefixList"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_rdma_ip_address.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // RdmaIpAddress is a nested struct in ecs response 19 | type RdmaIpAddress struct { 20 | IpAddress []string `json:"IpAddress" xml:"IpAddress"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_regions.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Regions is a nested struct in ecs response 19 | type Regions struct { 20 | Region []Region `json:"Region" xml:"Region"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_reports.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Reports is a nested struct in ecs response 19 | type Reports struct { 20 | Report []Report `json:"Report" xml:"Report"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_resources.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Resources is a nested struct in ecs response 19 | type Resources struct { 20 | Resource []Resource `json:"Resource" xml:"Resource"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_route_entrys.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // RouteEntrys is a nested struct in ecs response 19 | type RouteEntrys struct { 20 | RouteEntry []RouteEntry `json:"RouteEntry" xml:"RouteEntry"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_route_tables.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // RouteTables is a nested struct in ecs response 19 | type RouteTables struct { 20 | RouteTable []RouteTable `json:"RouteTable" xml:"RouteTable"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_share_group.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // ShareGroup is a nested struct in ecs response 19 | type ShareGroup struct { 20 | Group string `json:"Group" xml:"Group"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_share_groups.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // ShareGroups is a nested struct in ecs response 19 | type ShareGroups struct { 20 | ShareGroup []ShareGroup `json:"ShareGroup" xml:"ShareGroup"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_storage_sets.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // StorageSets is a nested struct in ecs response 19 | type StorageSets struct { 20 | StorageSet []StorageSet `json:"StorageSet" xml:"StorageSet"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_supply_infos.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // SupplyInfos is a nested struct in ecs response 19 | type SupplyInfos struct { 20 | SupplyInfo []SupplyInfo `json:"SupplyInfo" xml:"SupplyInfo"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_tags_in_describe_disks.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // TagsInDescribeDisks is a nested struct in ecs response 19 | type TagsInDescribeDisks struct { 20 | Tag []Tag `json:"Tag" xml:"Tag"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_tags_in_describe_tags.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // TagsInDescribeTags is a nested struct in ecs response 19 | type TagsInDescribeTags struct { 20 | Tag []Tag `json:"Tag" xml:"Tag"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_task_set.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // TaskSet is a nested struct in ecs response 19 | type TaskSet struct { 20 | Task []Task `json:"Task" xml:"Task"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_to_region_ids.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // ToRegionIds is a nested struct in ecs response 19 | type ToRegionIds struct { 20 | ToRegionId []string `json:"ToRegionId" xml:"ToRegionId"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_topologys.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Topologys is a nested struct in ecs response 19 | type Topologys struct { 20 | Topology []Topology `json:"Topology" xml:"Topology"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_user_cidrs.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // UserCidrs is a nested struct in ecs response 19 | type UserCidrs struct { 20 | UserCidr []string `json:"UserCidr" xml:"UserCidr"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_v_routers.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // VRouters is a nested struct in ecs response 19 | type VRouters struct { 20 | VRouter []VRouter `json:"VRouter" xml:"VRouter"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_v_switch_ids.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // VSwitchIds is a nested struct in ecs response 19 | type VSwitchIds struct { 20 | VSwitchId []string `json:"VSwitchId" xml:"VSwitchId"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_v_switches.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // VSwitches is a nested struct in ecs response 19 | type VSwitches struct { 20 | VSwitch []VSwitch `json:"VSwitch" xml:"VSwitch"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/ecs/struct_vpcs.go: -------------------------------------------------------------------------------- 1 | package ecs 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Vpcs is a nested struct in ecs response 19 | type Vpcs struct { 20 | Vpc []Vpc `json:"Vpc" xml:"Vpc"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/location/struct_services.go: -------------------------------------------------------------------------------- 1 | package location 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Services is a nested struct in location response 19 | type Services struct { 20 | Services []string `json:"Services" xml:"Services"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/slb/struct_acl_entrys.go: -------------------------------------------------------------------------------- 1 | package slb 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // AclEntrys is a nested struct in slb response 19 | type AclEntrys struct { 20 | AclEntry []AclEntry `json:"AclEntry" xml:"AclEntry"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/slb/struct_acls.go: -------------------------------------------------------------------------------- 1 | package slb 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Acls is a nested struct in slb response 19 | type Acls struct { 20 | Acl []Acl `json:"Acl" xml:"Acl"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/slb/struct_ciphers.go: -------------------------------------------------------------------------------- 1 | package slb 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Ciphers is a nested struct in slb response 19 | type Ciphers struct { 20 | Cipher []string `json:"Cipher" xml:"Cipher"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/slb/struct_labels.go: -------------------------------------------------------------------------------- 1 | package slb 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Labels is a nested struct in slb response 19 | type Labels struct { 20 | Label []string `json:"Label" xml:"Label"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/slb/struct_regions.go: -------------------------------------------------------------------------------- 1 | package slb 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Regions is a nested struct in slb response 19 | type Regions struct { 20 | Region []Region `json:"Region" xml:"Region"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/slb/struct_slave_zones.go: -------------------------------------------------------------------------------- 1 | package slb 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // SlaveZones is a nested struct in slb response 19 | type SlaveZones struct { 20 | SlaveZone []SlaveZone `json:"SlaveZone" xml:"SlaveZone"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/slb/struct_tag_sets.go: -------------------------------------------------------------------------------- 1 | package slb 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // TagSets is a nested struct in slb response 19 | type TagSets struct { 20 | TagSet []TagSet `json:"TagSet" xml:"TagSet"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/alibaba-cloud-sdk-go/services/slb/struct_zones.go: -------------------------------------------------------------------------------- 1 | package slb 2 | 3 | //Licensed under the Apache License, Version 2.0 (the "License"); 4 | //you may not use this file except in compliance with the License. 5 | //You may obtain a copy of the License at 6 | // 7 | //http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | //Unless required by applicable law or agreed to in writing, software 10 | //distributed under the License is distributed on an "AS IS" BASIS, 11 | //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | //See the License for the specific language governing permissions and 13 | //limitations under the License. 14 | // 15 | // Code generated by Alibaba Cloud SDK Code Generator. 16 | // Changes may cause incorrect behavior and will be lost if the code is regenerated. 17 | 18 | // Zones is a nested struct in slb response 19 | type Zones struct { 20 | Zone []Zone `json:"Zone" xml:"Zone"` 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/aliyun-oss-go-sdk/oss/limit_reader_1_6.go: -------------------------------------------------------------------------------- 1 | //go:build !go1.7 2 | // +build !go1.7 3 | 4 | // "golang.org/x/time/rate" is depended on golang context package go1.7 onward 5 | // this file is only for build,not supports limit upload speed 6 | package oss 7 | 8 | import ( 9 | "fmt" 10 | "io" 11 | ) 12 | 13 | const ( 14 | perTokenBandwidthSize int = 1024 15 | ) 16 | 17 | type OssLimiter struct { 18 | } 19 | 20 | type LimitSpeedReader struct { 21 | io.ReadCloser 22 | reader io.Reader 23 | ossLimiter *OssLimiter 24 | } 25 | 26 | func GetOssLimiter(uploadSpeed int) (ossLimiter *OssLimiter, err error) { 27 | err = fmt.Errorf("rate.Limiter is not supported below version go1.7") 28 | return nil, err 29 | } 30 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/aliyun-oss-go-sdk/oss/redirect_1_6.go: -------------------------------------------------------------------------------- 1 | //go:build !go1.7 2 | // +build !go1.7 3 | 4 | package oss 5 | 6 | import "net/http" 7 | 8 | // http.ErrUseLastResponse only is defined go1.7 onward 9 | 10 | func disableHTTPRedirect(client *http.Client) { 11 | 12 | } 13 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/aliyun-oss-go-sdk/oss/redirect_1_7.go: -------------------------------------------------------------------------------- 1 | //go:build go1.7 2 | // +build go1.7 3 | 4 | package oss 5 | 6 | import "net/http" 7 | 8 | // http.ErrUseLastResponse only is defined go1.7 onward 9 | func disableHTTPRedirect(client *http.Client) { 10 | client.CheckRedirect = func(req *http.Request, via []*http.Request) error { 11 | return http.ErrUseLastResponse 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/credentials-go/credentials/credential_updater.go: -------------------------------------------------------------------------------- 1 | package credentials 2 | 3 | import ( 4 | "net/http" 5 | "time" 6 | ) 7 | 8 | const defaultInAdvanceScale = 0.95 9 | 10 | var hookDo = func(fn func(req *http.Request) (*http.Response, error)) func(req *http.Request) (*http.Response, error) { 11 | return fn 12 | } 13 | 14 | type credentialUpdater struct { 15 | credentialExpiration int 16 | lastUpdateTimestamp int64 17 | inAdvanceScale float64 18 | } 19 | 20 | func (updater *credentialUpdater) needUpdateCredential() (result bool) { 21 | if updater.inAdvanceScale == 0 { 22 | updater.inAdvanceScale = defaultInAdvanceScale 23 | } 24 | return time.Now().Unix()-updater.lastUpdateTimestamp >= int64(float64(updater.credentialExpiration)*updater.inAdvanceScale) 25 | } 26 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/credentials-go/credentials/instance_provider.go: -------------------------------------------------------------------------------- 1 | package credentials 2 | 3 | import ( 4 | "os" 5 | 6 | "github.com/alibabacloud-go/tea/tea" 7 | ) 8 | 9 | type instanceCredentialsProvider struct{} 10 | 11 | var providerInstance = new(instanceCredentialsProvider) 12 | 13 | func newInstanceCredentialsProvider() Provider { 14 | return &instanceCredentialsProvider{} 15 | } 16 | 17 | func (p *instanceCredentialsProvider) resolve() (*Config, error) { 18 | roleName, ok := os.LookupEnv(ENVEcsMetadata) 19 | if !ok { 20 | return nil, nil 21 | } 22 | 23 | config := &Config{ 24 | Type: tea.String("ecs_ram_role"), 25 | RoleName: tea.String(roleName), 26 | } 27 | return config, nil 28 | } 29 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/credentials-go/credentials/provider.go: -------------------------------------------------------------------------------- 1 | package credentials 2 | 3 | //Environmental virables that may be used by the provider 4 | const ( 5 | ENVCredentialFile = "ALIBABA_CLOUD_CREDENTIALS_FILE" 6 | ENVEcsMetadata = "ALIBABA_CLOUD_ECS_METADATA" 7 | PATHCredentialFile = "~/.alibabacloud/credentials" 8 | ENVRoleArn = "ALIBABA_CLOUD_ROLE_ARN" 9 | ENVOIDCProviderArn = "ALIBABA_CLOUD_OIDC_PROVIDER_ARN" 10 | ENVOIDCTokenFile = "ALIBABA_CLOUD_OIDC_TOKEN_FILE" 11 | ENVRoleSessionName = "ALIBABA_CLOUD_ROLE_SESSION_NAME" 12 | ) 13 | 14 | // Provider will be implemented When you want to customize the provider. 15 | type Provider interface { 16 | resolve() (*Config, error) 17 | } 18 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/credentials-go/credentials/provider_chain.go: -------------------------------------------------------------------------------- 1 | package credentials 2 | 3 | import ( 4 | "errors" 5 | ) 6 | 7 | type providerChain struct { 8 | Providers []Provider 9 | } 10 | 11 | var defaultproviders = []Provider{providerEnv, providerOIDC, providerProfile, providerInstance} 12 | var defaultChain = newProviderChain(defaultproviders) 13 | 14 | func newProviderChain(providers []Provider) Provider { 15 | return &providerChain{ 16 | Providers: providers, 17 | } 18 | } 19 | 20 | func (p *providerChain) resolve() (*Config, error) { 21 | for _, provider := range p.Providers { 22 | config, err := provider.resolve() 23 | if err != nil { 24 | return nil, err 25 | } else if config == nil { 26 | continue 27 | } 28 | return config, err 29 | } 30 | return nil, errors.New("No credential found") 31 | 32 | } 33 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/aliyun/credentials-go/credentials/session_credential.go: -------------------------------------------------------------------------------- 1 | package credentials 2 | 3 | type sessionCredential struct { 4 | AccessKeyId string 5 | AccessKeySecret string 6 | SecurityToken string 7 | } 8 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/bmatcuk/doublestar/.gitignore: -------------------------------------------------------------------------------- 1 | # vi 2 | *~ 3 | *.swp 4 | *.swo 5 | 6 | # Compiled Object files, Static and Dynamic libs (Shared Objects) 7 | *.o 8 | *.a 9 | *.so 10 | 11 | # Folders 12 | _obj 13 | _test 14 | 15 | # Architecture specific extensions/prefixes 16 | *.[568vq] 17 | [568vq].out 18 | 19 | *.cgo1.go 20 | *.cgo2.c 21 | _cgo_defun.c 22 | _cgo_gotypes.go 23 | _cgo_export.* 24 | 25 | _testmain.go 26 | 27 | *.exe 28 | *.test 29 | *.prof 30 | 31 | # test directory 32 | test/ 33 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/bmatcuk/doublestar/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | go: 4 | - 1.12 5 | - 1.13 6 | - 1.14 7 | 8 | os: 9 | - linux 10 | - windows 11 | 12 | before_install: 13 | - go get -t -v ./... 14 | 15 | script: 16 | - go test -race -coverprofile=coverage.txt -covermode=atomic 17 | 18 | after_success: 19 | - bash <(curl -s https://codecov.io/bash) 20 | 21 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/clbanning/mxj/v2/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | go: 4 | - 1.x -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/clbanning/mxj/v2/exists.go: -------------------------------------------------------------------------------- 1 | package mxj 2 | 3 | // Checks whether the path exists. If err != nil then 'false' is returned 4 | // along with the error encountered parsing either the "path" or "subkeys" 5 | // argument. 6 | func (mv Map) Exists(path string, subkeys ...string) (bool, error) { 7 | v, err := mv.ValuesForPath(path, subkeys...) 8 | return (err == nil && len(v) > 0), err 9 | } 10 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/clbanning/mxj/v2/files_test.badjson: -------------------------------------------------------------------------------- 1 | { "this":"is", "a":"test", "file":"for", "files_test.go":"case" } 2 | { "with":"some", "bad":JSON, "in":"it" } 3 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/clbanning/mxj/v2/files_test.badxml: -------------------------------------------------------------------------------- 1 | 2 | test 3 | for files.go 4 | 5 | 6 | some 7 | doc 8 | test case 9 | 10 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/clbanning/mxj/v2/files_test.json: -------------------------------------------------------------------------------- 1 | { "this":"is", "a":"test", "file":"for", "files_test.go":"case" } 2 | { "with":"just", "two":2, "JSON":"values", "true":true } 3 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/clbanning/mxj/v2/files_test.xml: -------------------------------------------------------------------------------- 1 | 2 | test 3 | for files.go 4 | 5 | 6 | some 7 | doc 8 | test case 9 | 10 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/clbanning/mxj/v2/files_test_dup.json: -------------------------------------------------------------------------------- 1 | {"a":"test","file":"for","files_test.go":"case","this":"is"}{"JSON":"values","true":true,"two":2,"with":"just"} -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/clbanning/mxj/v2/files_test_dup.xml: -------------------------------------------------------------------------------- 1 | for files.gotestdoctest casesome -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/clbanning/mxj/v2/files_test_indent.json: -------------------------------------------------------------------------------- 1 | { 2 | "a": "test", 3 | "file": "for", 4 | "files_test.go": "case", 5 | "this": "is" 6 | } 7 | { 8 | "JSON": "values", 9 | "true": true, 10 | "two": 2, 11 | "with": "just" 12 | } -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/clbanning/mxj/v2/files_test_indent.xml: -------------------------------------------------------------------------------- 1 | 2 | for files.go 3 | test 4 | 5 | doc 6 | test case 7 | some 8 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/clbanning/mxj/v2/remove.go: -------------------------------------------------------------------------------- 1 | package mxj 2 | 3 | import "strings" 4 | 5 | // Removes the path. 6 | func (mv Map) Remove(path string) error { 7 | m := map[string]interface{}(mv) 8 | return remove(m, path) 9 | } 10 | 11 | func remove(m interface{}, path string) error { 12 | val, err := prevValueByPath(m, path) 13 | if err != nil { 14 | return err 15 | } 16 | 17 | lastKey := lastKey(path) 18 | delete(val, lastKey) 19 | 20 | return nil 21 | } 22 | 23 | // returns the last key of the path. 24 | // lastKey("a.b.c") would had returned "c" 25 | func lastKey(path string) string { 26 | keys := strings.Split(path, ".") 27 | key := keys[len(keys)-1] 28 | return key 29 | } 30 | 31 | // returns the path without the last key 32 | // parentPath("a.b.c") whould had returned "a.b" 33 | func parentPath(path string) string { 34 | keys := strings.Split(path, ".") 35 | parentPath := strings.Join(keys[0:len(keys)-1], ".") 36 | return parentPath 37 | } 38 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/clbanning/mxj/v2/set.go: -------------------------------------------------------------------------------- 1 | package mxj 2 | 3 | import ( 4 | "strings" 5 | ) 6 | 7 | // Sets the value for the path 8 | func (mv Map) SetValueForPath(value interface{}, path string) error { 9 | pathAry := strings.Split(path, ".") 10 | parentPathAry := pathAry[0 : len(pathAry)-1] 11 | parentPath := strings.Join(parentPathAry, ".") 12 | 13 | val, err := mv.ValueForPath(parentPath) 14 | if err != nil { 15 | return err 16 | } 17 | if val == nil { 18 | return nil // we just ignore the request if there's no val 19 | } 20 | 21 | key := pathAry[len(pathAry)-1] 22 | cVal := val.(map[string]interface{}) 23 | cVal[key] = value 24 | 25 | return nil 26 | } 27 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/clbanning/mxj/v2/setfieldsep.go: -------------------------------------------------------------------------------- 1 | package mxj 2 | 3 | // Per: https://github.com/clbanning/mxj/issues/37#issuecomment-278651862 4 | var fieldSep string = ":" 5 | 6 | // SetFieldSeparator changes the default field separator, ":", for the 7 | // newVal argument in mv.UpdateValuesForPath and the optional 'subkey' arguments 8 | // in mv.ValuesForKey and mv.ValuesForPath. 9 | // 10 | // E.g., if the newVal value is "http://blah/blah", setting the field separator 11 | // to "|" will allow the newVal specification, "|http://blah/blah" to parse 12 | // properly. If called with no argument or an empty string value, the field 13 | // separator is set to the default, ":". 14 | func SetFieldSeparator(s ...string) { 15 | if len(s) == 0 || s[0] == "" { 16 | fieldSep = ":" // the default 17 | return 18 | } 19 | fieldSep = s[0] 20 | } 21 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/clbanning/mxj/v2/xmlseq2.go: -------------------------------------------------------------------------------- 1 | // Copyright 2012-2016, 2019 Charles Banning. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file 4 | 5 | package mxj 6 | 7 | // ---------------- expose Map methods to MapSeq type --------------------------- 8 | 9 | // Pretty print a Map. 10 | func (msv MapSeq) StringIndent(offset ...int) string { 11 | return writeMap(map[string]interface{}(msv), true, true, offset...) 12 | } 13 | 14 | // Pretty print a Map without the value type information - just key:value entries. 15 | func (msv MapSeq) StringIndentNoTypeInfo(offset ...int) string { 16 | return writeMap(map[string]interface{}(msv), false, true, offset...) 17 | } 18 | 19 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/cloudfoundry/bosh-utils/NOTICE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2015-Present CloudFoundry.org Foundation, Inc. All Rights Reserved. 2 | 3 | This project contains software that is Copyright (c) 2015 Pivotal Software, Inc. 4 | 5 | This project is licensed to you under the Apache License, Version 2.0 (the "License"). 6 | 7 | You may not use this project except in compliance with the License. 8 | 9 | This project may include a number of subcomponents with separate copyright notices 10 | and license terms. Your use of these subcomponents is subject to the terms and 11 | conditions of the subcomponent's license, as noted in the LICENSE file. 12 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/cloudfoundry/bosh-utils/errors/multi_error.go: -------------------------------------------------------------------------------- 1 | package errors 2 | 3 | import ( 4 | "strings" 5 | ) 6 | 7 | type MultiError struct { 8 | Errors []error 9 | } 10 | 11 | func NewMultiError(errors ...error) error { 12 | return MultiError{Errors: errors} 13 | } 14 | 15 | func (e MultiError) Error() string { 16 | errors := make([]string, len(e.Errors), len(e.Errors)) 17 | for i, err := range e.Errors { 18 | errors[i] = err.Error() 19 | } 20 | return strings.Join(errors, "\n") 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/cloudfoundry/bosh-utils/system/exec_cmd_runner_unix.go: -------------------------------------------------------------------------------- 1 | // +build !windows 2 | 3 | package system 4 | 5 | import ( 6 | "os/exec" 7 | "strings" 8 | ) 9 | 10 | func newExecCmd(name string, args ...string) *exec.Cmd { 11 | return exec.Command(name, args...) 12 | } 13 | 14 | // mergeEnv merges system and command environments variables. Command variables 15 | // override any system variable with the same key. 16 | func mergeEnv(sysEnv []string, cmdEnv map[string]string) []string { 17 | var env []string 18 | // cmdEnv has precedence and overwrites any duplicate vars 19 | for k, v := range cmdEnv { 20 | env = append(env, k+"="+v) 21 | } 22 | for _, s := range sysEnv { 23 | if n := strings.IndexByte(s, '='); n != -1 { 24 | k := s[:n] // key 25 | if _, found := cmdEnv[k]; !found { 26 | env = append(env, s) 27 | } 28 | } 29 | } 30 | return env 31 | } 32 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/cppforlife/bosh-cpi-go/NOTICE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2017-Present CloudFoundry.org Foundation, Inc. All Rights Reserved. 2 | 3 | This project is licensed to you under the Apache License, Version 2.0 (the "License"). 4 | 5 | You may not use this project except in compliance with the License. 6 | 7 | This project may include a number of subcomponents with separate copyright notices 8 | and license terms. Your use of these subcomponents is subject to the terms and 9 | conditions of the subcomponent's license, as noted in the LICENSE file. 10 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/cppforlife/bosh-cpi-go/apiv1/agent_options.go: -------------------------------------------------------------------------------- 1 | package apiv1 2 | 3 | import ( 4 | bosherr "github.com/cloudfoundry/bosh-utils/errors" 5 | ) 6 | 7 | type AgentOptions struct { 8 | Mbus string // e.g. "https://user:password@127.0.0.1:4321/agent" 9 | NTP []string // e.g. ["0.us.pool.ntp.org"]. Ok to be empty 10 | Blobstore BlobstoreOptions 11 | } 12 | 13 | type BlobstoreOptions struct { 14 | Type string `json:"provider"` 15 | Options map[string]interface{} 16 | } 17 | 18 | func (o AgentOptions) Validate() error { 19 | if o.Mbus == "" { 20 | return bosherr.Error("Must provide non-empty Mbus") 21 | } 22 | 23 | err := o.Blobstore.Validate() 24 | if err != nil { 25 | return bosherr.WrapError(err, "Validating Blobstore configuration") 26 | } 27 | 28 | return nil 29 | } 30 | 31 | func (o BlobstoreOptions) Validate() error { 32 | if o.Type == "" { 33 | return bosherr.Error("Must provide non-empty Type") 34 | } 35 | 36 | return nil 37 | } 38 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/cppforlife/bosh-cpi-go/apiv1/cloud_id.go: -------------------------------------------------------------------------------- 1 | package apiv1 2 | 3 | import ( 4 | "encoding/json" 5 | "errors" 6 | ) 7 | 8 | type cloudID struct { 9 | cid string 10 | } 11 | 12 | var _ json.Unmarshaler = &cloudID{} 13 | var _ json.Marshaler = cloudID{} 14 | 15 | func NewCloudID(cid string) cloudID { 16 | if cid == "" { 17 | panic("Internal incosistency: CID must not be empty") 18 | } 19 | return cloudID{cid} 20 | } 21 | 22 | func (c cloudID) AsString() string { return c.cid } 23 | 24 | func (c *cloudID) UnmarshalJSON(data []byte) error { 25 | var str string 26 | 27 | err := json.Unmarshal(data, &str) 28 | if err != nil { 29 | return err 30 | } 31 | 32 | if str == "" { 33 | return errors.New("Expected CID to be non-empty") 34 | } 35 | 36 | *c = cloudID{str} 37 | 38 | return nil 39 | } 40 | 41 | func (c cloudID) MarshalJSON() ([]byte, error) { 42 | return json.Marshal(c.cid) 43 | } 44 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/cppforlife/bosh-cpi-go/apiv1/cloud_kvs.go: -------------------------------------------------------------------------------- 1 | package apiv1 2 | 3 | import ( 4 | "encoding/json" 5 | ) 6 | 7 | type cloudKVs struct { 8 | val map[string]interface{} 9 | } 10 | 11 | var _ json.Unmarshaler = &cloudKVs{} 12 | var _ json.Marshaler = cloudKVs{} 13 | 14 | func NewCloudKVs(val map[string]interface{}) cloudKVs { 15 | return cloudKVs{val} 16 | } 17 | 18 | func (c *cloudKVs) UnmarshalJSON(data []byte) error { 19 | var val map[string]interface{} 20 | 21 | err := json.Unmarshal(data, &val) 22 | if err != nil { 23 | return err 24 | } 25 | 26 | *c = cloudKVs{val} 27 | 28 | return nil 29 | } 30 | 31 | func (c cloudKVs) MarshalJSON() ([]byte, error) { 32 | return json.Marshal(c.val) 33 | } 34 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/cppforlife/bosh-cpi-go/apiv1/cloud_props.go: -------------------------------------------------------------------------------- 1 | package apiv1 2 | 3 | import ( 4 | "encoding/json" 5 | ) 6 | 7 | type CloudPropsImpl struct { 8 | json.RawMessage 9 | } 10 | 11 | var _ json.Marshaler = CloudPropsImpl{} 12 | 13 | func (c CloudPropsImpl) As(val interface{}) error { 14 | return json.Unmarshal([]byte(c.RawMessage), val) 15 | } 16 | 17 | func (c CloudPropsImpl) MarshalJSON() ([]byte, error) { 18 | return json.Marshal(c.RawMessage) 19 | } 20 | 21 | func (c CloudPropsImpl) _final() {} 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/cppforlife/bosh-cpi-go/apiv1/disk_hint.go: -------------------------------------------------------------------------------- 1 | package apiv1 2 | 3 | import ( 4 | "encoding/json" 5 | ) 6 | 7 | type DiskHint struct { 8 | val interface{} 9 | } 10 | 11 | var _ json.Unmarshaler = &DiskHint{} 12 | var _ json.Marshaler = DiskHint{} 13 | 14 | func NewDiskHintFromString(val string) DiskHint { 15 | return DiskHint{val} 16 | } 17 | 18 | func NewDiskHintFromMap(val map[string]interface{}) DiskHint { 19 | return DiskHint{val} 20 | } 21 | 22 | func (i *DiskHint) UnmarshalJSON(data []byte) error { 23 | var val interface{} 24 | 25 | err := json.Unmarshal(data, &val) 26 | if err != nil { 27 | return err 28 | } 29 | 30 | *i = DiskHint{val} 31 | 32 | return nil 33 | } 34 | 35 | func (i DiskHint) MarshalJSON() ([]byte, error) { 36 | return json.Marshal(i.val) 37 | } 38 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/cppforlife/bosh-cpi-go/apiv1/interfaces.go: -------------------------------------------------------------------------------- 1 | package apiv1 2 | 3 | type CPIFactory interface { 4 | New(CallContext) (CPI, error) 5 | } 6 | 7 | type CallContext interface { 8 | As(interface{}) error 9 | } 10 | 11 | type CPI interface { 12 | Info() (Info, error) 13 | CPIV1 14 | CPIV2Additions 15 | } 16 | 17 | type CPIV1 interface { 18 | StemcellsV1 19 | VMsV1 20 | DisksV1 21 | SnapshotsV1 22 | } 23 | 24 | type CPIV2Additions interface { 25 | VMsV2Additions 26 | DisksV2Additions 27 | } 28 | 29 | type Info struct { 30 | APIVersion int `json:"api_version"` // filled automatically 31 | StemcellFormats []string `json:"stemcell_formats"` 32 | } 33 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/cppforlife/bosh-cpi-go/apiv1/interfaces_snapshots.go: -------------------------------------------------------------------------------- 1 | package apiv1 2 | 3 | type SnapshotsV1 interface { 4 | SnapshotDisk(DiskCID, DiskMeta) (SnapshotCID, error) 5 | DeleteSnapshot(SnapshotCID) error 6 | } 7 | 8 | type SnapshotCID struct { 9 | cloudID 10 | } 11 | 12 | func NewSnapshotCID(cid string) SnapshotCID { 13 | if cid == "" { 14 | panic("Internal inconsistency: Snapshot CID must not be empty") 15 | } 16 | return SnapshotCID{cloudID{cid}} 17 | } 18 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/cppforlife/bosh-cpi-go/apiv1/interfaces_stemcells.go: -------------------------------------------------------------------------------- 1 | package apiv1 2 | 3 | type StemcellsV1 interface { 4 | CreateStemcell(string, StemcellCloudProps) (StemcellCID, error) 5 | DeleteStemcell(StemcellCID) error 6 | } 7 | 8 | type StemcellCloudProps interface { 9 | As(interface{}) error 10 | } 11 | 12 | type StemcellCID struct { 13 | cloudID 14 | } 15 | 16 | func NewStemcellCID(cid string) StemcellCID { 17 | if cid == "" { 18 | panic("Internal incosistency: Stemcell CID must not be empty") 19 | } 20 | return StemcellCID{cloudID{cid}} 21 | } 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/cppforlife/bosh-cpi-go/apiv1/stemcell_api_version.go: -------------------------------------------------------------------------------- 1 | package apiv1 2 | 3 | import ( 4 | "fmt" 5 | ) 6 | 7 | type StemcellAPIVersion struct { 8 | ctx CallContext 9 | } 10 | 11 | type stemcellAPIVersionRoot struct { 12 | VM stemcellAPIVersionVM `json:"vm"` 13 | } 14 | 15 | type stemcellAPIVersionVM struct { 16 | Stemcell stemcellAPIVersionStemcell `json:"stemcell"` 17 | } 18 | 19 | type stemcellAPIVersionStemcell struct { 20 | APIVersion int `json:"api_version"` 21 | } 22 | 23 | func NewStemcellAPIVersion(ctx CallContext) StemcellAPIVersion { 24 | return StemcellAPIVersion{ctx} 25 | } 26 | 27 | func (s StemcellAPIVersion) Value() (int, error) { 28 | var root stemcellAPIVersionRoot 29 | 30 | err := s.ctx.As(&root) 31 | if err != nil { 32 | return 0, fmt.Errorf("Expected to unmarshal stemcell API version: %s", err) 33 | } 34 | 35 | return root.VM.Stemcell.APIVersion, nil 36 | } 37 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/cppforlife/bosh-cpi-go/apiv1/vm_cloud_props.go: -------------------------------------------------------------------------------- 1 | package apiv1 2 | 3 | import ( 4 | "encoding/json" 5 | "errors" 6 | ) 7 | 8 | type VMCloudPropsImpl struct { 9 | val interface{} 10 | } 11 | 12 | var _ json.Marshaler = VMCloudPropsImpl{} 13 | 14 | func NewVMCloudPropsFromMap(val map[string]interface{}) VMCloudPropsImpl { 15 | return VMCloudPropsImpl{val} 16 | } 17 | 18 | func (i VMCloudPropsImpl) MarshalJSON() ([]byte, error) { 19 | return json.Marshal(i.val) 20 | } 21 | 22 | func (i VMCloudPropsImpl) As(val interface{}) error { 23 | return errors.New("Expected to not convert VMCloudPropsImpl") 24 | } 25 | 26 | func (i VMCloudPropsImpl) _final() {} 27 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/cppforlife/bosh-cpi-go/rpc/factory.go: -------------------------------------------------------------------------------- 1 | package rpc 2 | 3 | import ( 4 | "io" 5 | "os" 6 | 7 | boshlog "github.com/cloudfoundry/bosh-utils/logger" 8 | 9 | "github.com/cppforlife/bosh-cpi-go/apiv1" 10 | ) 11 | 12 | type Factory struct { 13 | logger boshlog.Logger 14 | } 15 | 16 | func NewFactory(logger boshlog.Logger) Factory { 17 | return Factory{logger} 18 | } 19 | 20 | func (f Factory) NewCLI(cpiFactory apiv1.CPIFactory) CLI { 21 | return f.NewCLIWithInOut(os.Stdin, os.Stdout, cpiFactory) 22 | } 23 | 24 | func (f Factory) NewCLIWithInOut(in io.Reader, out io.Writer, cpiFactory apiv1.CPIFactory) CLI { 25 | actionFactory := apiv1.NewActionFactory(cpiFactory) 26 | caller := NewJSONCaller() 27 | disp := NewJSONDispatcher(actionFactory, caller, f.logger) 28 | return NewCLI(in, out, disp, f.logger) 29 | } 30 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/cppforlife/bosh-cpi-go/rpc/interfaces.go: -------------------------------------------------------------------------------- 1 | package rpc 2 | 3 | import ( 4 | "github.com/cppforlife/bosh-cpi-go/apiv1" 5 | ) 6 | 7 | type ActionFactory interface { 8 | Create(method string, apiVersion int, context apiv1.CallContext) (interface{}, error) 9 | } 10 | 11 | type Dispatcher interface { 12 | // Dispatch interprets request bytes, executes request, 13 | // captures response and return response bytes. 14 | // It panics if built-in errors fail to serialize. 15 | Dispatch([]byte) []byte 16 | } 17 | 18 | type Caller interface { 19 | Call(interface{}, []interface{}) (interface{}, error) 20 | } 21 | 22 | type CloudError interface { 23 | Error() string 24 | Type() string 25 | } 26 | 27 | type RetryableError interface { 28 | Error() string 29 | CanRetry() bool 30 | } 31 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/google/go-cmp/cmp/export_panic.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017, The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build purego 6 | // +build purego 7 | 8 | package cmp 9 | 10 | import "reflect" 11 | 12 | const supportExporters = false 13 | 14 | func retrieveUnexportedField(reflect.Value, reflect.StructField, bool) reflect.Value { 15 | panic("no support for forcibly accessing unexported fields") 16 | } 17 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/google/go-cmp/cmp/internal/diff/debug_disable.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017, The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | //go:build !cmp_debug 6 | // +build !cmp_debug 7 | 8 | package diff 9 | 10 | var debug debugger 11 | 12 | type debugger struct{} 13 | 14 | func (debugger) Begin(_, _ int, f EqualFunc, _, _ *EditScript) EqualFunc { 15 | return f 16 | } 17 | func (debugger) Update() {} 18 | func (debugger) Finish() {} 19 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/google/go-cmp/cmp/internal/flags/flags.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019, The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package flags 6 | 7 | // Deterministic controls whether the output of Diff should be deterministic. 8 | // This is only used for testing. 9 | var Deterministic bool 10 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/google/uuid/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | ## [1.4.0](https://github.com/google/uuid/compare/v1.3.1...v1.4.0) (2023-10-26) 4 | 5 | 6 | ### Features 7 | 8 | * UUIDs slice type with Strings() convenience method ([#133](https://github.com/google/uuid/issues/133)) ([cd5fbbd](https://github.com/google/uuid/commit/cd5fbbdd02f3e3467ac18940e07e062be1f864b4)) 9 | 10 | ### Fixes 11 | 12 | * Clarify that Parse's job is to parse but not necessarily validate strings. (Documents current behavior) 13 | 14 | ## [1.3.1](https://github.com/google/uuid/compare/v1.3.0...v1.3.1) (2023-08-18) 15 | 16 | 17 | ### Bug Fixes 18 | 19 | * Use .EqualFold() to parse urn prefixed UUIDs ([#118](https://github.com/google/uuid/issues/118)) ([574e687](https://github.com/google/uuid/commit/574e6874943741fb99d41764c705173ada5293f0)) 20 | 21 | ## Changelog 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/google/uuid/CONTRIBUTORS: -------------------------------------------------------------------------------- 1 | Paul Borman 2 | bmatsuo 3 | shawnps 4 | theory 5 | jboverfelt 6 | dsymonds 7 | cd1 8 | wallclockbuilder 9 | dansouza 10 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/google/uuid/README.md: -------------------------------------------------------------------------------- 1 | # uuid 2 | The uuid package generates and inspects UUIDs based on 3 | [RFC 4122](https://datatracker.ietf.org/doc/html/rfc4122) 4 | and DCE 1.1: Authentication and Security Services. 5 | 6 | This package is based on the github.com/pborman/uuid package (previously named 7 | code.google.com/p/go-uuid). It differs from these earlier packages in that 8 | a UUID is a 16 byte array rather than a byte slice. One loss due to this 9 | change is the ability to represent an invalid UUID (vs a NIL UUID). 10 | 11 | ###### Install 12 | ```sh 13 | go get github.com/google/uuid 14 | ``` 15 | 16 | ###### Documentation 17 | [![Go Reference](https://pkg.go.dev/badge/github.com/google/uuid.svg)](https://pkg.go.dev/github.com/google/uuid) 18 | 19 | Full `go doc` style documentation for the package can be viewed online without 20 | installing this package by using the GoDoc site here: 21 | http://pkg.go.dev/github.com/google/uuid 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/google/uuid/doc.go: -------------------------------------------------------------------------------- 1 | // Copyright 2016 Google Inc. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // Package uuid generates and inspects UUIDs. 6 | // 7 | // UUIDs are based on RFC 4122 and DCE 1.1: Authentication and Security 8 | // Services. 9 | // 10 | // A UUID is a 16 byte (128 bit) array. UUIDs may be used as keys to 11 | // maps or compared directly. 12 | package uuid 13 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/google/uuid/node_js.go: -------------------------------------------------------------------------------- 1 | // Copyright 2017 Google Inc. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | // +build js 6 | 7 | package uuid 8 | 9 | // getHardwareInterface returns nil values for the JS version of the code. 10 | // This removes the "net" dependency, because it is not used in the browser. 11 | // Using the "net" library inflates the size of the transpiled JS code by 673k bytes. 12 | func getHardwareInterface(name string) (string, []byte) { return "", nil } 13 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/jmespath/go-jmespath/.gitignore: -------------------------------------------------------------------------------- 1 | /jpgo 2 | jmespath-fuzz.zip 3 | cpu.out 4 | go-jmespath.test 5 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/jmespath/go-jmespath/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | sudo: false 4 | 5 | go: 6 | - 1.4 7 | 8 | install: go get -v -t ./... 9 | script: make test 10 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/jmespath/go-jmespath/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright 2015 James Saryerwinnie 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this file except in compliance with the License. 5 | You may obtain a copy of the License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | See the License for the specific language governing permissions and 13 | limitations under the License. 14 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/jmespath/go-jmespath/README.md: -------------------------------------------------------------------------------- 1 | # go-jmespath - A JMESPath implementation in Go 2 | 3 | [![Build Status](https://img.shields.io/travis/jmespath/go-jmespath.svg)](https://travis-ci.org/jmespath/go-jmespath) 4 | 5 | 6 | 7 | See http://jmespath.org for more info. 8 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/jmespath/go-jmespath/astnodetype_string.go: -------------------------------------------------------------------------------- 1 | // generated by stringer -type astNodeType; DO NOT EDIT 2 | 3 | package jmespath 4 | 5 | import "fmt" 6 | 7 | const _astNodeType_name = "ASTEmptyASTComparatorASTCurrentNodeASTExpRefASTFunctionExpressionASTFieldASTFilterProjectionASTFlattenASTIdentityASTIndexASTIndexExpressionASTKeyValPairASTLiteralASTMultiSelectHashASTMultiSelectListASTOrExpressionASTAndExpressionASTNotExpressionASTPipeASTProjectionASTSubexpressionASTSliceASTValueProjection" 8 | 9 | var _astNodeType_index = [...]uint16{0, 8, 21, 35, 44, 65, 73, 92, 102, 113, 121, 139, 152, 162, 180, 198, 213, 229, 245, 252, 265, 281, 289, 307} 10 | 11 | func (i astNodeType) String() string { 12 | if i < 0 || i >= astNodeType(len(_astNodeType_index)-1) { 13 | return fmt.Sprintf("astNodeType(%d)", i) 14 | } 15 | return _astNodeType_name[_astNodeType_index[i]:_astNodeType_index[i+1]] 16 | } 17 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/jmespath/go-jmespath/toktype_string.go: -------------------------------------------------------------------------------- 1 | // generated by stringer -type=tokType; DO NOT EDIT 2 | 3 | package jmespath 4 | 5 | import "fmt" 6 | 7 | const _tokType_name = "tUnknowntStartDottFiltertFlattentLparentRparentLbrackettRbrackettLbracetRbracetOrtPipetNumbertUnquotedIdentifiertQuotedIdentifiertCommatColontLTtLTEtGTtGTEtEQtNEtJSONLiteraltStringLiteraltCurrenttExpreftAndtNottEOF" 8 | 9 | var _tokType_index = [...]uint8{0, 8, 13, 17, 24, 32, 39, 46, 55, 64, 71, 78, 81, 86, 93, 112, 129, 135, 141, 144, 148, 151, 155, 158, 161, 173, 187, 195, 202, 206, 210, 214} 10 | 11 | func (i tokType) String() string { 12 | if i < 0 || i >= tokType(len(_tokType_index)-1) { 13 | return fmt.Sprintf("tokType(%d)", i) 14 | } 15 | return _tokType_name[_tokType_index[i]:_tokType_index[i+1]] 16 | } 17 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/json-iterator/go/.codecov.yml: -------------------------------------------------------------------------------- 1 | ignore: 2 | - "output_tests/.*" 3 | 4 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/json-iterator/go/.gitignore: -------------------------------------------------------------------------------- 1 | /vendor 2 | /bug_test.go 3 | /coverage.txt 4 | /.idea 5 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/json-iterator/go/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | go: 4 | - 1.8.x 5 | - 1.x 6 | 7 | before_install: 8 | - go get -t -v ./... 9 | 10 | script: 11 | - ./test.sh 12 | 13 | after_success: 14 | - bash <(curl -s https://codecov.io/bash) 15 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/json-iterator/go/Gopkg.lock: -------------------------------------------------------------------------------- 1 | # This file is autogenerated, do not edit; changes may be undone by the next 'dep ensure'. 2 | 3 | 4 | [[projects]] 5 | name = "github.com/modern-go/concurrent" 6 | packages = ["."] 7 | revision = "e0a39a4cb4216ea8db28e22a69f4ec25610d513a" 8 | version = "1.0.0" 9 | 10 | [[projects]] 11 | name = "github.com/modern-go/reflect2" 12 | packages = ["."] 13 | revision = "4b7aa43c6742a2c18fdef89dd197aaae7dac7ccd" 14 | version = "1.0.1" 15 | 16 | [solve-meta] 17 | analyzer-name = "dep" 18 | analyzer-version = 1 19 | inputs-digest = "ea54a775e5a354cb015502d2e7aa4b74230fc77e894f34a838b268c25ec8eeb8" 20 | solver-name = "gps-cdcl" 21 | solver-version = 1 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/json-iterator/go/Gopkg.toml: -------------------------------------------------------------------------------- 1 | # Gopkg.toml example 2 | # 3 | # Refer to https://github.com/golang/dep/blob/master/docs/Gopkg.toml.md 4 | # for detailed Gopkg.toml documentation. 5 | # 6 | # required = ["github.com/user/thing/cmd/thing"] 7 | # ignored = ["github.com/user/project/pkgX", "bitbucket.org/user/project/pkgA/pkgY"] 8 | # 9 | # [[constraint]] 10 | # name = "github.com/user/project" 11 | # version = "1.0.0" 12 | # 13 | # [[constraint]] 14 | # name = "github.com/user/project2" 15 | # branch = "dev" 16 | # source = "github.com/myfork/project2" 17 | # 18 | # [[override]] 19 | # name = "github.com/x/y" 20 | # version = "2.4.0" 21 | 22 | ignored = ["github.com/davecgh/go-spew*","github.com/google/gofuzz*","github.com/stretchr/testify*"] 23 | 24 | [[constraint]] 25 | name = "github.com/modern-go/reflect2" 26 | version = "1.0.1" 27 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/json-iterator/go/build.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | set -e 3 | set -x 4 | 5 | if [ ! -d /tmp/build-golang/src/github.com/json-iterator ]; then 6 | mkdir -p /tmp/build-golang/src/github.com/json-iterator 7 | ln -s $PWD /tmp/build-golang/src/github.com/json-iterator/go 8 | fi 9 | export GOPATH=/tmp/build-golang 10 | go get -u github.com/golang/dep/cmd/dep 11 | cd /tmp/build-golang/src/github.com/json-iterator/go 12 | exec $GOPATH/bin/dep ensure -update 13 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/json-iterator/go/fuzzy_mode_convert_table.md: -------------------------------------------------------------------------------- 1 | | json type \ dest type | bool | int | uint | float |string| 2 | | --- | --- | --- | --- |--|--| 3 | | number | positive => true
negative => true
zero => false| 23.2 => 23
-32.1 => -32| 12.1 => 12
-12.1 => 0|as normal|same as origin| 4 | | string | empty string => false
string "0" => false
other strings => true | "123.32" => 123
"-123.4" => -123
"123.23xxxw" => 123
"abcde12" => 0
"-32.1" => -32| 13.2 => 13
-1.1 => 0 |12.1 => 12.1
-12.3 => -12.3
12.4xxa => 12.4
+1.1e2 =>110 |same as origin| 5 | | bool | true => true
false => false| true => 1
false => 0 | true => 1
false => 0 |true => 1
false => 0|true => "true"
false => "false"| 6 | | object | true | 0 | 0 |0|originnal json| 7 | | array | empty array => false
nonempty array => true| [] => 0
[1,2] => 1 | [] => 0
[1,2] => 1 |[] => 0
[1,2] => 1|original json| -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/json-iterator/go/jsoniter.go: -------------------------------------------------------------------------------- 1 | // Package jsoniter implements encoding and decoding of JSON as defined in 2 | // RFC 4627 and provides interfaces with identical syntax of standard lib encoding/json. 3 | // Converting from encoding/json to jsoniter is no more than replacing the package with jsoniter 4 | // and variable type declarations (if any). 5 | // jsoniter interfaces gives 100% compatibility with code using standard lib. 6 | // 7 | // "JSON and Go" 8 | // (https://golang.org/doc/articles/json_and_go.html) 9 | // gives a description of how Marshal/Unmarshal operate 10 | // between arbitrary or predefined json objects and bytes, 11 | // and it applies to jsoniter.Marshal/Unmarshal as well. 12 | // 13 | // Besides, jsoniter.Iterator provides a different set of interfaces 14 | // iterating given bytes/string/reader 15 | // and yielding parsed elements one by one. 16 | // This set of interfaces reads input as required and gives 17 | // better performance. 18 | package jsoniter 19 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/json-iterator/go/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | echo "" > coverage.txt 5 | 6 | for d in $(go list ./... | grep -v vendor); do 7 | go test -coverprofile=profile.out -coverpkg=github.com/json-iterator/go $d 8 | if [ -f profile.out ]; then 9 | cat profile.out >> coverage.txt 10 | rm profile.out 11 | fi 12 | done 13 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/concurrent/.gitignore: -------------------------------------------------------------------------------- 1 | /coverage.txt 2 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/concurrent/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | go: 4 | - 1.8.x 5 | - 1.x 6 | 7 | before_install: 8 | - go get -t -v ./... 9 | 10 | script: 11 | - ./test.sh 12 | 13 | after_success: 14 | - bash <(curl -s https://codecov.io/bash) 15 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/concurrent/executor.go: -------------------------------------------------------------------------------- 1 | package concurrent 2 | 3 | import "context" 4 | 5 | // Executor replace go keyword to start a new goroutine 6 | // the goroutine should cancel itself if the context passed in has been cancelled 7 | // the goroutine started by the executor, is owned by the executor 8 | // we can cancel all executors owned by the executor just by stop the executor itself 9 | // however Executor interface does not Stop method, the one starting and owning executor 10 | // should use the concrete type of executor, instead of this interface. 11 | type Executor interface { 12 | // Go starts a new goroutine controlled by the context 13 | Go(handler func(ctx context.Context)) 14 | } 15 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/concurrent/go_above_19.go: -------------------------------------------------------------------------------- 1 | //+build go1.9 2 | 3 | package concurrent 4 | 5 | import "sync" 6 | 7 | // Map is a wrapper for sync.Map introduced in go1.9 8 | type Map struct { 9 | sync.Map 10 | } 11 | 12 | // NewMap creates a thread safe Map 13 | func NewMap() *Map { 14 | return &Map{} 15 | } 16 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/concurrent/go_below_19.go: -------------------------------------------------------------------------------- 1 | //+build !go1.9 2 | 3 | package concurrent 4 | 5 | import "sync" 6 | 7 | // Map implements a thread safe map for go version below 1.9 using mutex 8 | type Map struct { 9 | lock sync.RWMutex 10 | data map[interface{}]interface{} 11 | } 12 | 13 | // NewMap creates a thread safe map 14 | func NewMap() *Map { 15 | return &Map{ 16 | data: make(map[interface{}]interface{}, 32), 17 | } 18 | } 19 | 20 | // Load is same as sync.Map Load 21 | func (m *Map) Load(key interface{}) (elem interface{}, found bool) { 22 | m.lock.RLock() 23 | elem, found = m.data[key] 24 | m.lock.RUnlock() 25 | return 26 | } 27 | 28 | // Load is same as sync.Map Store 29 | func (m *Map) Store(key interface{}, elem interface{}) { 30 | m.lock.Lock() 31 | m.data[key] = elem 32 | m.lock.Unlock() 33 | } 34 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/concurrent/log.go: -------------------------------------------------------------------------------- 1 | package concurrent 2 | 3 | import ( 4 | "os" 5 | "log" 6 | "io/ioutil" 7 | ) 8 | 9 | // ErrorLogger is used to print out error, can be set to writer other than stderr 10 | var ErrorLogger = log.New(os.Stderr, "", 0) 11 | 12 | // InfoLogger is used to print informational message, default to off 13 | var InfoLogger = log.New(ioutil.Discard, "", 0) -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/concurrent/test.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | set -e 4 | echo "" > coverage.txt 5 | 6 | for d in $(go list ./... | grep -v vendor); do 7 | go test -coverprofile=profile.out -coverpkg=github.com/modern-go/concurrent $d 8 | if [ -f profile.out ]; then 9 | cat profile.out >> coverage.txt 10 | rm profile.out 11 | fi 12 | done 13 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/.gitignore: -------------------------------------------------------------------------------- 1 | /vendor 2 | /coverage.txt 3 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | 3 | go: 4 | - 1.9.x 5 | - 1.x 6 | 7 | before_install: 8 | - go get -t -v ./... 9 | - go get -t -v github.com/modern-go/reflect2-tests/... 10 | 11 | script: 12 | - ./test.sh 13 | 14 | after_success: 15 | - bash <(curl -s https://codecov.io/bash) 16 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/Gopkg.lock: -------------------------------------------------------------------------------- 1 | # This file is autogenerated, do not edit; changes may be undone by the next 'dep ensure'. 2 | 3 | 4 | [solve-meta] 5 | analyzer-name = "dep" 6 | analyzer-version = 1 7 | input-imports = [] 8 | solver-name = "gps-cdcl" 9 | solver-version = 1 10 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/Gopkg.toml: -------------------------------------------------------------------------------- 1 | # Gopkg.toml example 2 | # 3 | # Refer to https://golang.github.io/dep/docs/Gopkg.toml.html 4 | # for detailed Gopkg.toml documentation. 5 | # 6 | # required = ["github.com/user/thing/cmd/thing"] 7 | # ignored = ["github.com/user/project/pkgX", "bitbucket.org/user/project/pkgA/pkgY"] 8 | # 9 | # [[constraint]] 10 | # name = "github.com/user/project" 11 | # version = "1.0.0" 12 | # 13 | # [[constraint]] 14 | # name = "github.com/user/project2" 15 | # branch = "dev" 16 | # source = "github.com/myfork/project2" 17 | # 18 | # [[override]] 19 | # name = "github.com/x/y" 20 | # version = "2.4.0" 21 | # 22 | # [prune] 23 | # non-go = false 24 | # go-tests = true 25 | # unused-packages = true 26 | 27 | ignored = [] 28 | 29 | [prune] 30 | go-tests = true 31 | unused-packages = true 32 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/go_above_118.go: -------------------------------------------------------------------------------- 1 | //+build go1.18 2 | 3 | package reflect2 4 | 5 | import ( 6 | "unsafe" 7 | ) 8 | 9 | // m escapes into the return value, but the caller of mapiterinit 10 | // doesn't let the return value escape. 11 | //go:noescape 12 | //go:linkname mapiterinit reflect.mapiterinit 13 | func mapiterinit(rtype unsafe.Pointer, m unsafe.Pointer, it *hiter) 14 | 15 | func (type2 *UnsafeMapType) UnsafeIterate(obj unsafe.Pointer) MapIterator { 16 | var it hiter 17 | mapiterinit(type2.rtype, *(*unsafe.Pointer)(obj), &it) 18 | return &UnsafeMapIterator{ 19 | hiter: &it, 20 | pKeyRType: type2.pKeyRType, 21 | pElemRType: type2.pElemRType, 22 | } 23 | } -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/go_above_19.go: -------------------------------------------------------------------------------- 1 | //+build go1.9 2 | 3 | package reflect2 4 | 5 | import ( 6 | "unsafe" 7 | ) 8 | 9 | //go:linkname resolveTypeOff reflect.resolveTypeOff 10 | func resolveTypeOff(rtype unsafe.Pointer, off int32) unsafe.Pointer 11 | 12 | //go:linkname makemap reflect.makemap 13 | func makemap(rtype unsafe.Pointer, cap int) (m unsafe.Pointer) 14 | 15 | func makeMapWithSize(rtype unsafe.Pointer, cap int) unsafe.Pointer { 16 | return makemap(rtype, cap) 17 | } 18 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/go_below_118.go: -------------------------------------------------------------------------------- 1 | //+build !go1.18 2 | 3 | package reflect2 4 | 5 | import ( 6 | "unsafe" 7 | ) 8 | 9 | // m escapes into the return value, but the caller of mapiterinit 10 | // doesn't let the return value escape. 11 | //go:noescape 12 | //go:linkname mapiterinit reflect.mapiterinit 13 | func mapiterinit(rtype unsafe.Pointer, m unsafe.Pointer) (val *hiter) 14 | 15 | func (type2 *UnsafeMapType) UnsafeIterate(obj unsafe.Pointer) MapIterator { 16 | return &UnsafeMapIterator{ 17 | hiter: mapiterinit(type2.rtype, *(*unsafe.Pointer)(obj)), 18 | pKeyRType: type2.pKeyRType, 19 | pElemRType: type2.pElemRType, 20 | } 21 | } -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/reflect2_amd64.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cloudfoundry/bosh-alicloud-cpi-release/8659b46aac02650124e89ed89c620cf7bc82c245/src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/reflect2_amd64.s -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/relfect2_386.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cloudfoundry/bosh-alicloud-cpi-release/8659b46aac02650124e89ed89c620cf7bc82c245/src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/relfect2_386.s -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/relfect2_amd64p32.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cloudfoundry/bosh-alicloud-cpi-release/8659b46aac02650124e89ed89c620cf7bc82c245/src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/relfect2_amd64p32.s -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/relfect2_arm.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cloudfoundry/bosh-alicloud-cpi-release/8659b46aac02650124e89ed89c620cf7bc82c245/src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/relfect2_arm.s -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/relfect2_arm64.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cloudfoundry/bosh-alicloud-cpi-release/8659b46aac02650124e89ed89c620cf7bc82c245/src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/relfect2_arm64.s -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/relfect2_mips64x.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cloudfoundry/bosh-alicloud-cpi-release/8659b46aac02650124e89ed89c620cf7bc82c245/src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/relfect2_mips64x.s -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/relfect2_mipsx.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cloudfoundry/bosh-alicloud-cpi-release/8659b46aac02650124e89ed89c620cf7bc82c245/src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/relfect2_mipsx.s -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/relfect2_ppc64x.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cloudfoundry/bosh-alicloud-cpi-release/8659b46aac02650124e89ed89c620cf7bc82c245/src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/relfect2_ppc64x.s -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/relfect2_s390x.s: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/cloudfoundry/bosh-alicloud-cpi-release/8659b46aac02650124e89ed89c620cf7bc82c245/src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/relfect2_s390x.s -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/modern-go/reflect2/safe_struct.go: -------------------------------------------------------------------------------- 1 | package reflect2 2 | 3 | type safeStructType struct { 4 | safeType 5 | } 6 | 7 | func (type2 *safeStructType) FieldByName(name string) StructField { 8 | field, found := type2.Type.FieldByName(name) 9 | if !found { 10 | panic("field " + name + " not found") 11 | } 12 | return &safeField{StructField: field} 13 | } 14 | 15 | func (type2 *safeStructType) Field(i int) StructField { 16 | return &safeField{StructField: type2.Type.Field(i)} 17 | } 18 | 19 | func (type2 *safeStructType) FieldByIndex(index []int) StructField { 20 | return &safeField{StructField: type2.Type.FieldByIndex(index)} 21 | } 22 | 23 | func (type2 *safeStructType) FieldByNameFunc(match func(string) bool) StructField { 24 | field, found := type2.Type.FieldByNameFunc(match) 25 | if !found { 26 | panic("field match condition not found in " + type2.Type.String()) 27 | } 28 | return &safeField{StructField: field} 29 | } 30 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/ginkgo/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | TODO 3 | tmp/**/* 4 | *.coverprofile -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/ginkgo/.travis.yml: -------------------------------------------------------------------------------- 1 | language: go 2 | go: 3 | - 1.3 4 | - 1.4 5 | - tip 6 | 7 | install: 8 | - go get -v ./... 9 | - go get golang.org/x/tools/cmd/cover 10 | - go get github.com/onsi/gomega 11 | - go install github.com/onsi/ginkgo/ginkgo 12 | - export PATH=$PATH:$HOME/gopath/bin 13 | 14 | script: $HOME/gopath/bin/ginkgo -r --randomizeAllSpecs --failOnPending --randomizeSuites --race 15 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/ginkgo/internal/leafnodes/interfaces.go: -------------------------------------------------------------------------------- 1 | package leafnodes 2 | 3 | import ( 4 | "github.com/onsi/ginkgo/types" 5 | ) 6 | 7 | type BasicNode interface { 8 | Type() types.SpecComponentType 9 | Run() (types.SpecState, types.SpecFailure) 10 | CodeLocation() types.CodeLocation 11 | } 12 | 13 | type SubjectNode interface { 14 | BasicNode 15 | 16 | Text() string 17 | Flag() types.FlagType 18 | Samples() int 19 | } 20 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/ginkgo/internal/remote/output_interceptor.go: -------------------------------------------------------------------------------- 1 | package remote 2 | 3 | /* 4 | The OutputInterceptor is used by the ForwardingReporter to 5 | intercept and capture all stdin and stderr output during a test run. 6 | */ 7 | type OutputInterceptor interface { 8 | StartInterceptingOutput() error 9 | StopInterceptingAndReturnOutput() (string, error) 10 | } 11 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/ginkgo/internal/remote/output_interceptor_win.go: -------------------------------------------------------------------------------- 1 | // +build windows 2 | 3 | package remote 4 | 5 | import ( 6 | "errors" 7 | ) 8 | 9 | func NewOutputInterceptor() OutputInterceptor { 10 | return &outputInterceptor{} 11 | } 12 | 13 | type outputInterceptor struct { 14 | intercepting bool 15 | } 16 | 17 | func (interceptor *outputInterceptor) StartInterceptingOutput() error { 18 | if interceptor.intercepting { 19 | return errors.New("Already intercepting output!") 20 | } 21 | interceptor.intercepting = true 22 | 23 | // not working on windows... 24 | 25 | return nil 26 | } 27 | 28 | func (interceptor *outputInterceptor) StopInterceptingAndReturnOutput() (string, error) { 29 | // not working on windows... 30 | interceptor.intercepting = false 31 | 32 | return "", nil 33 | } 34 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/ginkgo/internal/specrunner/random_id.go: -------------------------------------------------------------------------------- 1 | package specrunner 2 | 3 | import ( 4 | "crypto/rand" 5 | "fmt" 6 | ) 7 | 8 | func randomID() string { 9 | b := make([]byte, 8) 10 | _, err := rand.Read(b) 11 | if err != nil { 12 | return "" 13 | } 14 | return fmt.Sprintf("%x-%x-%x-%x", b[0:2], b[2:4], b[4:6], b[6:8]) 15 | } 16 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/ginkgo/internal/writer/fake_writer.go: -------------------------------------------------------------------------------- 1 | package writer 2 | 3 | type FakeGinkgoWriter struct { 4 | EventStream []string 5 | } 6 | 7 | func NewFake() *FakeGinkgoWriter { 8 | return &FakeGinkgoWriter{ 9 | EventStream: []string{}, 10 | } 11 | } 12 | 13 | func (writer *FakeGinkgoWriter) AddEvent(event string) { 14 | writer.EventStream = append(writer.EventStream, event) 15 | } 16 | 17 | func (writer *FakeGinkgoWriter) Truncate() { 18 | writer.EventStream = append(writer.EventStream, "TRUNCATE") 19 | } 20 | 21 | func (writer *FakeGinkgoWriter) DumpOut() { 22 | writer.EventStream = append(writer.EventStream, "DUMP") 23 | } 24 | 25 | func (writer *FakeGinkgoWriter) DumpOutWithHeader(header string) { 26 | writer.EventStream = append(writer.EventStream, "DUMP_WITH_HEADER: "+header) 27 | } 28 | 29 | func (writer *FakeGinkgoWriter) Write(data []byte) (n int, err error) { 30 | return 0, nil 31 | } 32 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/ginkgo/reporters/reporter.go: -------------------------------------------------------------------------------- 1 | package reporters 2 | 3 | import ( 4 | "github.com/onsi/ginkgo/config" 5 | "github.com/onsi/ginkgo/types" 6 | ) 7 | 8 | type Reporter interface { 9 | SpecSuiteWillBegin(config config.GinkgoConfigType, summary *types.SuiteSummary) 10 | BeforeSuiteDidRun(setupSummary *types.SetupSummary) 11 | SpecWillRun(specSummary *types.SpecSummary) 12 | SpecDidComplete(specSummary *types.SpecSummary) 13 | AfterSuiteDidRun(setupSummary *types.SetupSummary) 14 | SpecSuiteDidEnd(summary *types.SuiteSummary) 15 | } 16 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/ginkgo/types/code_location.go: -------------------------------------------------------------------------------- 1 | package types 2 | 3 | import ( 4 | "fmt" 5 | ) 6 | 7 | type CodeLocation struct { 8 | FileName string 9 | LineNumber int 10 | FullStackTrace string 11 | } 12 | 13 | func (codeLocation CodeLocation) String() string { 14 | return fmt.Sprintf("%s:%d", codeLocation.FileName, codeLocation.LineNumber) 15 | } 16 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/ginkgo/types/synchronization.go: -------------------------------------------------------------------------------- 1 | package types 2 | 3 | import ( 4 | "encoding/json" 5 | ) 6 | 7 | type RemoteBeforeSuiteState int 8 | 9 | const ( 10 | RemoteBeforeSuiteStateInvalid RemoteBeforeSuiteState = iota 11 | 12 | RemoteBeforeSuiteStatePending 13 | RemoteBeforeSuiteStatePassed 14 | RemoteBeforeSuiteStateFailed 15 | RemoteBeforeSuiteStateDisappeared 16 | ) 17 | 18 | type RemoteBeforeSuiteData struct { 19 | Data []byte 20 | State RemoteBeforeSuiteState 21 | } 22 | 23 | func (r RemoteBeforeSuiteData) ToJSON() []byte { 24 | data, _ := json.Marshal(r) 25 | return data 26 | } 27 | 28 | type RemoteAfterSuiteData struct { 29 | CanRun bool 30 | } 31 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/gomega/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | *.test 3 | . 4 | .idea 5 | gomega.iml 6 | TODO 7 | .vscode -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/gomega/RELEASING.md: -------------------------------------------------------------------------------- 1 | A Gomega release is a tagged sha and a GitHub release. To cut a release: 2 | 3 | 1. Ensure CHANGELOG.md is up to date. 4 | - Use 5 | ```bash 6 | LAST_VERSION=$(git tag --sort=version:refname | tail -n1) 7 | CHANGES=$(git log --pretty=format:'- %s [%h]' HEAD...$LAST_VERSION) 8 | echo -e "## NEXT\n\n$CHANGES\n\n### Features\n\n### Fixes\n\n### Maintenance\n\n$(cat CHANGELOG.md)" > CHANGELOG.md 9 | ``` 10 | to update the changelog 11 | - Categorize the changes into 12 | - Breaking Changes (requires a major version) 13 | - New Features (minor version) 14 | - Fixes (fix version) 15 | - Maintenance (which in general should not be mentioned in `CHANGELOG.md` as they have no user impact) 16 | 1. Update GOMEGA_VERSION in `gomega_dsl.go` 17 | 1. Commit, push, and release: 18 | ``` 19 | git commit -m "vM.m.p" 20 | git push 21 | gh release create "vM.m.p" 22 | git fetch --tags origin master 23 | ``` -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/gomega/internal/vetoptdesc.go: -------------------------------------------------------------------------------- 1 | package internal 2 | 3 | import ( 4 | "fmt" 5 | 6 | "github.com/onsi/gomega/types" 7 | ) 8 | 9 | // vetOptionalDescription vets the optional description args: if it finds any 10 | // Gomega matcher at the beginning it panics. This allows for rendering Gomega 11 | // matchers as part of an optional Description, as long as they're not in the 12 | // first slot. 13 | func vetOptionalDescription(assertion string, optionalDescription ...interface{}) { 14 | if len(optionalDescription) == 0 { 15 | return 16 | } 17 | if _, isGomegaMatcher := optionalDescription[0].(types.GomegaMatcher); isGomegaMatcher { 18 | panic(fmt.Sprintf("%s has a GomegaMatcher as the first element of optionalDescription.\n\t"+ 19 | "Do you mean to use And/Or/SatisfyAll/SatisfyAny to combine multiple matchers?", 20 | assertion)) 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/gomega/matchers/attributes_slice.go: -------------------------------------------------------------------------------- 1 | package matchers 2 | 3 | import ( 4 | "encoding/xml" 5 | "strings" 6 | ) 7 | 8 | type attributesSlice []xml.Attr 9 | 10 | func (attrs attributesSlice) Len() int { return len(attrs) } 11 | func (attrs attributesSlice) Less(i, j int) bool { 12 | return strings.Compare(attrs[i].Name.Local, attrs[j].Name.Local) == -1 13 | } 14 | func (attrs attributesSlice) Swap(i, j int) { attrs[i], attrs[j] = attrs[j], attrs[i] } 15 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/gomega/matchers/be_empty_matcher.go: -------------------------------------------------------------------------------- 1 | // untested sections: 2 2 | 3 | package matchers 4 | 5 | import ( 6 | "fmt" 7 | 8 | "github.com/onsi/gomega/format" 9 | ) 10 | 11 | type BeEmptyMatcher struct { 12 | } 13 | 14 | func (matcher *BeEmptyMatcher) Match(actual interface{}) (success bool, err error) { 15 | length, ok := lengthOf(actual) 16 | if !ok { 17 | return false, fmt.Errorf("BeEmpty matcher expects a string/array/map/channel/slice. Got:\n%s", format.Object(actual, 1)) 18 | } 19 | 20 | return length == 0, nil 21 | } 22 | 23 | func (matcher *BeEmptyMatcher) FailureMessage(actual interface{}) (message string) { 24 | return format.Message(actual, "to be empty") 25 | } 26 | 27 | func (matcher *BeEmptyMatcher) NegatedFailureMessage(actual interface{}) (message string) { 28 | return format.Message(actual, "not to be empty") 29 | } 30 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/gomega/matchers/be_false_matcher.go: -------------------------------------------------------------------------------- 1 | // untested sections: 2 2 | 3 | package matchers 4 | 5 | import ( 6 | "fmt" 7 | 8 | "github.com/onsi/gomega/format" 9 | ) 10 | 11 | type BeFalseMatcher struct { 12 | } 13 | 14 | func (matcher *BeFalseMatcher) Match(actual interface{}) (success bool, err error) { 15 | if !isBool(actual) { 16 | return false, fmt.Errorf("Expected a boolean. Got:\n%s", format.Object(actual, 1)) 17 | } 18 | 19 | return actual == false, nil 20 | } 21 | 22 | func (matcher *BeFalseMatcher) FailureMessage(actual interface{}) (message string) { 23 | return format.Message(actual, "to be false") 24 | } 25 | 26 | func (matcher *BeFalseMatcher) NegatedFailureMessage(actual interface{}) (message string) { 27 | return format.Message(actual, "not to be false") 28 | } 29 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/gomega/matchers/be_nil_matcher.go: -------------------------------------------------------------------------------- 1 | // untested sections: 2 2 | 3 | package matchers 4 | 5 | import "github.com/onsi/gomega/format" 6 | 7 | type BeNilMatcher struct { 8 | } 9 | 10 | func (matcher *BeNilMatcher) Match(actual interface{}) (success bool, err error) { 11 | return isNil(actual), nil 12 | } 13 | 14 | func (matcher *BeNilMatcher) FailureMessage(actual interface{}) (message string) { 15 | return format.Message(actual, "to be nil") 16 | } 17 | 18 | func (matcher *BeNilMatcher) NegatedFailureMessage(actual interface{}) (message string) { 19 | return format.Message(actual, "not to be nil") 20 | } 21 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/gomega/matchers/be_true_matcher.go: -------------------------------------------------------------------------------- 1 | // untested sections: 2 2 | 3 | package matchers 4 | 5 | import ( 6 | "fmt" 7 | 8 | "github.com/onsi/gomega/format" 9 | ) 10 | 11 | type BeTrueMatcher struct { 12 | } 13 | 14 | func (matcher *BeTrueMatcher) Match(actual interface{}) (success bool, err error) { 15 | if !isBool(actual) { 16 | return false, fmt.Errorf("Expected a boolean. Got:\n%s", format.Object(actual, 1)) 17 | } 18 | 19 | return actual.(bool), nil 20 | } 21 | 22 | func (matcher *BeTrueMatcher) FailureMessage(actual interface{}) (message string) { 23 | return format.Message(actual, "to be true") 24 | } 25 | 26 | func (matcher *BeTrueMatcher) NegatedFailureMessage(actual interface{}) (message string) { 27 | return format.Message(actual, "not to be true") 28 | } 29 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/gomega/matchers/be_zero_matcher.go: -------------------------------------------------------------------------------- 1 | package matchers 2 | 3 | import ( 4 | "reflect" 5 | 6 | "github.com/onsi/gomega/format" 7 | ) 8 | 9 | type BeZeroMatcher struct { 10 | } 11 | 12 | func (matcher *BeZeroMatcher) Match(actual interface{}) (success bool, err error) { 13 | if actual == nil { 14 | return true, nil 15 | } 16 | zeroValue := reflect.Zero(reflect.TypeOf(actual)).Interface() 17 | 18 | return reflect.DeepEqual(zeroValue, actual), nil 19 | 20 | } 21 | 22 | func (matcher *BeZeroMatcher) FailureMessage(actual interface{}) (message string) { 23 | return format.Message(actual, "to be zero-valued") 24 | } 25 | 26 | func (matcher *BeZeroMatcher) NegatedFailureMessage(actual interface{}) (message string) { 27 | return format.Message(actual, "not to be zero-valued") 28 | } 29 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/gomega/matchers/have_cap_matcher.go: -------------------------------------------------------------------------------- 1 | // untested sections: 2 2 | 3 | package matchers 4 | 5 | import ( 6 | "fmt" 7 | 8 | "github.com/onsi/gomega/format" 9 | ) 10 | 11 | type HaveCapMatcher struct { 12 | Count int 13 | } 14 | 15 | func (matcher *HaveCapMatcher) Match(actual interface{}) (success bool, err error) { 16 | length, ok := capOf(actual) 17 | if !ok { 18 | return false, fmt.Errorf("HaveCap matcher expects a array/channel/slice. Got:\n%s", format.Object(actual, 1)) 19 | } 20 | 21 | return length == matcher.Count, nil 22 | } 23 | 24 | func (matcher *HaveCapMatcher) FailureMessage(actual interface{}) (message string) { 25 | return fmt.Sprintf("Expected\n%s\nto have capacity %d", format.Object(actual, 1), matcher.Count) 26 | } 27 | 28 | func (matcher *HaveCapMatcher) NegatedFailureMessage(actual interface{}) (message string) { 29 | return fmt.Sprintf("Expected\n%s\nnot to have capacity %d", format.Object(actual, 1), matcher.Count) 30 | } 31 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/gomega/matchers/have_len_matcher.go: -------------------------------------------------------------------------------- 1 | package matchers 2 | 3 | import ( 4 | "fmt" 5 | 6 | "github.com/onsi/gomega/format" 7 | ) 8 | 9 | type HaveLenMatcher struct { 10 | Count int 11 | } 12 | 13 | func (matcher *HaveLenMatcher) Match(actual interface{}) (success bool, err error) { 14 | length, ok := lengthOf(actual) 15 | if !ok { 16 | return false, fmt.Errorf("HaveLen matcher expects a string/array/map/channel/slice. Got:\n%s", format.Object(actual, 1)) 17 | } 18 | 19 | return length == matcher.Count, nil 20 | } 21 | 22 | func (matcher *HaveLenMatcher) FailureMessage(actual interface{}) (message string) { 23 | return fmt.Sprintf("Expected\n%s\nto have length %d", format.Object(actual, 1), matcher.Count) 24 | } 25 | 26 | func (matcher *HaveLenMatcher) NegatedFailureMessage(actual interface{}) (message string) { 27 | return fmt.Sprintf("Expected\n%s\nnot to have length %d", format.Object(actual, 1), matcher.Count) 28 | } 29 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/gomega/matchers/not.go: -------------------------------------------------------------------------------- 1 | package matchers 2 | 3 | import ( 4 | "github.com/onsi/gomega/types" 5 | ) 6 | 7 | type NotMatcher struct { 8 | Matcher types.GomegaMatcher 9 | } 10 | 11 | func (m *NotMatcher) Match(actual interface{}) (bool, error) { 12 | success, err := m.Matcher.Match(actual) 13 | if err != nil { 14 | return false, err 15 | } 16 | return !success, nil 17 | } 18 | 19 | func (m *NotMatcher) FailureMessage(actual interface{}) (message string) { 20 | return m.Matcher.NegatedFailureMessage(actual) // works beautifully 21 | } 22 | 23 | func (m *NotMatcher) NegatedFailureMessage(actual interface{}) (message string) { 24 | return m.Matcher.FailureMessage(actual) // works beautifully 25 | } 26 | 27 | func (m *NotMatcher) MatchMayChangeInTheFuture(actual interface{}) bool { 28 | return types.MatchMayChangeInTheFuture(m.Matcher, actual) // just return m.Matcher's value 29 | } 30 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/gomega/matchers/support/goraph/node/node.go: -------------------------------------------------------------------------------- 1 | package node 2 | 3 | type Node struct { 4 | ID int 5 | Value interface{} 6 | } 7 | 8 | type NodeOrderedSet []Node 9 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/onsi/gomega/matchers/support/goraph/util/util.go: -------------------------------------------------------------------------------- 1 | package util 2 | 3 | import "math" 4 | 5 | func Odd(n int) bool { 6 | return math.Mod(float64(n), 2.0) == 1.0 7 | } 8 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/opentracing/opentracing-go/.gitignore: -------------------------------------------------------------------------------- 1 | coverage.txt 2 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/opentracing/opentracing-go/.golangci.yml: -------------------------------------------------------------------------------- 1 | linters-settings: 2 | staticcheck: 3 | checks: [ "all", "-SA1019" ] 4 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/opentracing/opentracing-go/Makefile: -------------------------------------------------------------------------------- 1 | .DEFAULT_GOAL := test-and-lint 2 | 3 | .PHONY: test-and-lint 4 | test-and-lint: test lint 5 | 6 | .PHONY: test 7 | test: 8 | go test -v -cover -race ./... 9 | 10 | .PHONY: cover 11 | cover: 12 | go test -v -coverprofile=coverage.txt -covermode=atomic -race ./... 13 | 14 | .PHONY: lint 15 | lint: 16 | go fmt ./... 17 | golint ./... 18 | @# Run again with magic to exit non-zero if golint outputs anything. 19 | @! (golint ./... | read dummy) 20 | go vet ./... 21 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/opentracing/opentracing-go/ext/field.go: -------------------------------------------------------------------------------- 1 | package ext 2 | 3 | import ( 4 | "github.com/opentracing/opentracing-go" 5 | "github.com/opentracing/opentracing-go/log" 6 | ) 7 | 8 | // LogError sets the error=true tag on the Span and logs err as an "error" event. 9 | func LogError(span opentracing.Span, err error, fields ...log.Field) { 10 | Error.Set(span, true) 11 | ef := []log.Field{ 12 | log.Event("error"), 13 | log.Error(err), 14 | } 15 | ef = append(ef, fields...) 16 | span.LogFields(ef...) 17 | } 18 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/github.com/tjfoc/gmsm/sm3/ifile: -------------------------------------------------------------------------------- 1 | test -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/golang.org/x/text/encoding/japanese/all.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package japanese 6 | 7 | import ( 8 | "golang.org/x/text/encoding" 9 | ) 10 | 11 | // All is a list of all defined encodings in this package. 12 | var All = []encoding.Encoding{EUCJP, ISO2022JP, ShiftJIS} 13 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/golang.org/x/text/encoding/simplifiedchinese/all.go: -------------------------------------------------------------------------------- 1 | // Copyright 2015 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package simplifiedchinese 6 | 7 | import ( 8 | "golang.org/x/text/encoding" 9 | ) 10 | 11 | // All is a list of all defined encodings in this package. 12 | var All = []encoding.Encoding{GB18030, GBK, HZGB2312} 13 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/golang.org/x/text/internal/language/common.go: -------------------------------------------------------------------------------- 1 | // Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT. 2 | 3 | package language 4 | 5 | // This file contains code common to the maketables.go and the package code. 6 | 7 | // AliasType is the type of an alias in AliasMap. 8 | type AliasType int8 9 | 10 | const ( 11 | Deprecated AliasType = iota 12 | Macro 13 | Legacy 14 | 15 | AliasTypeUnknown AliasType = -1 16 | ) 17 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/golang.org/x/text/internal/language/coverage.go: -------------------------------------------------------------------------------- 1 | // Copyright 2014 The Go Authors. All rights reserved. 2 | // Use of this source code is governed by a BSD-style 3 | // license that can be found in the LICENSE file. 4 | 5 | package language 6 | 7 | // BaseLanguages returns the list of all supported base languages. It generates 8 | // the list by traversing the internal structures. 9 | func BaseLanguages() []Language { 10 | base := make([]Language, 0, NumLanguages) 11 | for i := 0; i < langNoIndexOffset; i++ { 12 | // We included "und" already for the value 0. 13 | if i != nonCanonicalUnd { 14 | base = append(base, Language(i)) 15 | } 16 | } 17 | i := langNoIndexOffset 18 | for _, v := range langNoIndex { 19 | for k := 0; k < 8; k++ { 20 | if v&1 == 1 { 21 | base = append(base, Language(i)) 22 | } 23 | v >>= 1 24 | i++ 25 | } 26 | } 27 | return base 28 | } 29 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/golang.org/x/time/AUTHORS: -------------------------------------------------------------------------------- 1 | # This source code refers to The Go Authors for copyright purposes. 2 | # The master list of authors is in the main Go distribution, 3 | # visible at http://tip.golang.org/AUTHORS. 4 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/golang.org/x/time/CONTRIBUTORS: -------------------------------------------------------------------------------- 1 | # This source code was written by the Go contributors. 2 | # The master list of contributors is in the main Go distribution, 3 | # visible at http://tip.golang.org/CONTRIBUTORS. 4 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/gopkg.in/ini.v1/.gitignore: -------------------------------------------------------------------------------- 1 | testdata/conf_out.ini 2 | ini.sublime-project 3 | ini.sublime-workspace 4 | testdata/conf_reflect.ini 5 | .idea 6 | /.vscode 7 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/gopkg.in/ini.v1/.golangci.yml: -------------------------------------------------------------------------------- 1 | linters-settings: 2 | nakedret: 3 | max-func-lines: 0 # Disallow any unnamed return statement 4 | 5 | linters: 6 | enable: 7 | - deadcode 8 | - errcheck 9 | - gosimple 10 | - govet 11 | - ineffassign 12 | - staticcheck 13 | - structcheck 14 | - typecheck 15 | - unused 16 | - varcheck 17 | - nakedret 18 | - gofmt 19 | - rowserrcheck 20 | - unconvert 21 | - goimports 22 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/gopkg.in/ini.v1/Makefile: -------------------------------------------------------------------------------- 1 | .PHONY: build test bench vet coverage 2 | 3 | build: vet bench 4 | 5 | test: 6 | go test -v -cover -race 7 | 8 | bench: 9 | go test -v -cover -test.bench=. -test.benchmem 10 | 11 | vet: 12 | go vet 13 | 14 | coverage: 15 | go test -coverprofile=c.out && go tool cover -html=c.out && rm c.out 16 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/gopkg.in/ini.v1/codecov.yml: -------------------------------------------------------------------------------- 1 | coverage: 2 | range: "60...95" 3 | status: 4 | project: 5 | default: 6 | threshold: 1% 7 | 8 | comment: 9 | layout: 'diff' 10 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/gopkg.in/ini.v1/deprecated.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 Unknwon 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"): you may 4 | // not use this file except in compliance with the License. You may obtain 5 | // a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 11 | // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 12 | // License for the specific language governing permissions and limitations 13 | // under the License. 14 | 15 | package ini 16 | 17 | const ( 18 | // Deprecated: Use "DefaultSection" instead. 19 | DEFAULT_SECTION = DefaultSection 20 | ) 21 | 22 | var ( 23 | // Deprecated: AllCapsUnderscore converts to format ALL_CAPS_UNDERSCORE. 24 | AllCapsUnderscore = SnackCase 25 | ) 26 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/gopkg.in/ini.v1/helper.go: -------------------------------------------------------------------------------- 1 | // Copyright 2019 Unknwon 2 | // 3 | // Licensed under the Apache License, Version 2.0 (the "License"): you may 4 | // not use this file except in compliance with the License. You may obtain 5 | // a copy of the License at 6 | // 7 | // http://www.apache.org/licenses/LICENSE-2.0 8 | // 9 | // Unless required by applicable law or agreed to in writing, software 10 | // distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 11 | // WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 12 | // License for the specific language governing permissions and limitations 13 | // under the License. 14 | 15 | package ini 16 | 17 | func inSlice(str string, s []string) bool { 18 | for _, v := range s { 19 | if str == v { 20 | return true 21 | } 22 | } 23 | return false 24 | } 25 | -------------------------------------------------------------------------------- /src/bosh-alicloud-cpi/vendor/gopkg.in/yaml.v3/NOTICE: -------------------------------------------------------------------------------- 1 | Copyright 2011-2016 Canonical Ltd. 2 | 3 | Licensed under the Apache License, Version 2.0 (the "License"); 4 | you may not use this file except in compliance with the License. 5 | You may obtain a copy of the License at 6 | 7 | http://www.apache.org/licenses/LICENSE-2.0 8 | 9 | Unless required by applicable law or agreed to in writing, software 10 | distributed under the License is distributed on an "AS IS" BASIS, 11 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 | See the License for the specific language governing permissions and 13 | limitations under the License. 14 | -------------------------------------------------------------------------------- /test_input/cpi.json: -------------------------------------------------------------------------------- 1 | { 2 | "cloud": { 3 | "plugin": "alicloud", 4 | "properties": { 5 | "alicloud": { 6 | "region": "cn-beijing", 7 | "availability_zone": "cn-beijing-a", 8 | "access_key_id": "${ACCESS_KEY_ID}", 9 | "access_key_secret": "${ACCESS_KEY_SECRET}" 10 | }, 11 | "registry": { 12 | "user": "registry", 13 | "password": "9481e9fc-fc7a-4f46-5827-3a82d16188fb", 14 | "protocol": "http", 15 | "address": "10.0.0.2", 16 | "port": "6901" 17 | }, 18 | "agent": { 19 | "ntp": "ntp", 20 | "mbus": "http://mbus:mbus@0.0.0.0:6868", 21 | "blobstore": { 22 | "provider": "dav", 23 | "options": { 24 | "endpoint": "http://10.0.0.2:25250", 25 | "user": "agent", 26 | "password": "agent-password" 27 | } 28 | } 29 | } 30 | } 31 | } 32 | } -------------------------------------------------------------------------------- /test_input/create_disk.json: -------------------------------------------------------------------------------- 1 | { 2 | "method": "create_disk", 3 | "arguments": [ 4 | 30, 5 | {}, 6 | "i-2zefl7hfr7yb97ni5skw" 7 | ], 8 | "context": { 9 | "director_uuid": "911133bb-7d44-4811-bf8a-b215608bf084" 10 | } 11 | } -------------------------------------------------------------------------------- /test_input/create_stemcell.json: -------------------------------------------------------------------------------- 1 | { 2 | "method": "create_stemcell", 3 | "arguments": [ 4 | "/Users/ailan/.bosh/installations/7a96cc73-17ac-40f4-5de2-49ecf08d968f/tmp/stemcell-manager518814594/image", 5 | { 6 | "architecture": "x86_64", 7 | "container_format": "", 8 | "disk": "50", 9 | "disk_format": "rawdisk", 10 | "hypervisor": "kvm", 11 | "image_id": { 12 | "cn-beijing": "m-2zeggz4i4n2z510ajcvw", 13 | "cn-zhangjiakou": "m-8vbcsgb8bmh4iya739i8" 14 | }, 15 | "infrastructure": "alicloud", 16 | "name": "bosh-alicloud-kvm-hubuntu-trusty-go_agent", 17 | "os_distro": "ubuntu", 18 | "os_type": "linux", 19 | "root_device_name": "/dev/vda1", 20 | "source_url": "", 21 | "version": "1002" 22 | } 23 | ], 24 | "context": { 25 | "director_uuid": "0670ad54-66b8-4055-57cc-788d48f0886a" 26 | } 27 | } --------------------------------------------------------------------------------