You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cloudstack.apache.org by ProjectMoon <gi...@git.apache.org> on 2016/11/01 10:52:30 UTC

[GitHub] cloudstack pull request #1746: SSVM downloader now handles redirects properl...

GitHub user ProjectMoon opened a pull request:

    https://github.com/apache/cloudstack/pull/1746

    SSVM downloader now handles redirects properly.

    New version of #1607, opened against 4.9 so it can be forward merged.
    
    **Original Description**
    Previously it was using the HttpClient to make an initial request to an ISO. This would follow redirects. Then it would make another request using built-in Java URL and InputStream, which doesn't follow redirects. This results in the ISO getting stuck at 0% forever and also causing DOS effects.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/greenqloud/cloudstack pr-iso-follow-redirects-4.9

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/cloudstack/pull/1746.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #1746
    
----
commit 7a4220f17252d54a1b990c776d1378400652b0ab
Author: jeff <je...@greenqloud.com>
Date:   2016-07-08T09:59:08Z

    SSVM downloader now handles redirects properly.
    
    Previously it was using the HttpClient to make an initial request
    to an ISO. This would follow redirects. Then it would make
    another request using built-in Java URL and InputStream, which
    doesn't follow redirects. This results in the ISO getting stuck
    at 0% forever and also causing DOS effects.

----


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] cloudstack issue #1746: SSVM downloader now handles redirects properly.

Posted by blueorangutan <gi...@git.apache.org>.
Github user blueorangutan commented on the issue:

    https://github.com/apache/cloudstack/pull/1746
  
    @rhtyd a Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] cloudstack pull request #1746: SSVM downloader now handles redirects properl...

Posted by syed <gi...@git.apache.org>.
Github user syed commented on a diff in the pull request:

    https://github.com/apache/cloudstack/pull/1746#discussion_r86163158
  
    --- Diff: core/src/com/cloud/storage/template/HttpTemplateDownloader.java ---
    @@ -117,7 +116,7 @@ public boolean retryMethod(final HttpMethod method, final IOException exception,
                 request = new GetMethod(downloadUrl);
                 request.getParams().setParameter(HttpMethodParams.RETRY_HANDLER, myretryhandler);
                 completionCallback = callback;
    -            //this.request.setFollowRedirects(false);
    --- End diff --
    
    Do you know why someone would have commented this?


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] cloudstack issue #1746: SSVM downloader now handles redirects properly.

Posted by blueorangutan <gi...@git.apache.org>.
Github user blueorangutan commented on the issue:

    https://github.com/apache/cloudstack/pull/1746
  
    @rhtyd a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] cloudstack issue #1746: SSVM downloader now handles redirects properly.

Posted by rhtyd <gi...@git.apache.org>.
Github user rhtyd commented on the issue:

    https://github.com/apache/cloudstack/pull/1746
  
    @blueorangutan test


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] cloudstack issue #1746: SSVM downloader now handles redirects properly.

Posted by blueorangutan <gi...@git.apache.org>.
Github user blueorangutan commented on the issue:

    https://github.com/apache/cloudstack/pull/1746
  
    <b>Trillian test result (tid-255)</b>
    Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7
    Total time taken: 27499 seconds
    Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr1746-t255-kvm-centos7.zip
    Test completed. 48 look ok, 0 have error(s)
    
    
    Test | Result | Time (s) | Test File
    --- | --- | --- | ---
    test_01_vpc_site2site_vpn | Success | 179.93 | test_vpc_vpn.py
    test_01_vpc_remote_access_vpn | Success | 71.23 | test_vpc_vpn.py
    test_01_redundant_vpc_site2site_vpn | Success | 266.30 | test_vpc_vpn.py
    test_02_VPC_default_routes | Success | 275.97 | test_vpc_router_nics.py
    test_01_VPC_nics_after_destroy | Success | 612.27 | test_vpc_router_nics.py
    test_05_rvpc_multi_tiers | Success | 527.53 | test_vpc_redundant.py
    test_04_rvpc_network_garbage_collector_nics | Success | 1452.09 | test_vpc_redundant.py
    test_03_create_redundant_VPC_1tier_2VMs_2IPs_2PF_ACL_reboot_routers | Success | 554.11 | test_vpc_redundant.py
    test_02_redundant_VPC_default_routes | Success | 776.18 | test_vpc_redundant.py
    test_01_create_redundant_VPC_2tiers_4VMs_4IPs_4PF_ACL | Success | 1281.66 | test_vpc_redundant.py
    test_09_delete_detached_volume | Success | 15.51 | test_volumes.py
    test_08_resize_volume | Success | 15.53 | test_volumes.py
    test_07_resize_fail | Success | 20.48 | test_volumes.py
    test_06_download_detached_volume | Success | 15.31 | test_volumes.py
    test_05_detach_volume | Success | 100.31 | test_volumes.py
    test_04_delete_attached_volume | Success | 10.24 | test_volumes.py
    test_03_download_attached_volume | Success | 15.37 | test_volumes.py
    test_02_attach_volume | Success | 43.69 | test_volumes.py
    test_01_create_volume | Success | 731.98 | test_volumes.py
    test_deploy_vm_multiple | Success | 349.92 | test_vm_life_cycle.py
    test_deploy_vm | Success | 0.03 | test_vm_life_cycle.py
    test_advZoneVirtualRouter | Success | 0.02 | test_vm_life_cycle.py
    test_10_attachAndDetach_iso | Success | 26.59 | test_vm_life_cycle.py
    test_09_expunge_vm | Success | 125.27 | test_vm_life_cycle.py
    test_08_migrate_vm | Success | 41.03 | test_vm_life_cycle.py
    test_07_restore_vm | Success | 0.15 | test_vm_life_cycle.py
    test_06_destroy_vm | Success | 126.00 | test_vm_life_cycle.py
    test_03_reboot_vm | Success | 125.95 | test_vm_life_cycle.py
    test_02_start_vm | Success | 10.26 | test_vm_life_cycle.py
    test_01_stop_vm | Success | 35.31 | test_vm_life_cycle.py
    test_CreateTemplateWithDuplicateName | Success | 206.61 | test_templates.py
    test_08_list_system_templates | Success | 0.03 | test_templates.py
    test_07_list_public_templates | Success | 0.04 | test_templates.py
    test_05_template_permissions | Success | 0.06 | test_templates.py
    test_04_extract_template | Success | 5.17 | test_templates.py
    test_03_delete_template | Success | 5.11 | test_templates.py
    test_02_edit_template | Success | 90.17 | test_templates.py
    test_01_create_template | Success | 95.86 | test_templates.py
    test_10_destroy_cpvm | Success | 191.82 | test_ssvm.py
    test_09_destroy_ssvm | Success | 168.87 | test_ssvm.py
    test_08_reboot_cpvm | Success | 131.67 | test_ssvm.py
    test_07_reboot_ssvm | Success | 133.89 | test_ssvm.py
    test_06_stop_cpvm | Success | 136.82 | test_ssvm.py
    test_05_stop_ssvm | Success | 167.21 | test_ssvm.py
    test_04_cpvm_internals | Success | 1.39 | test_ssvm.py
    test_03_ssvm_internals | Success | 3.50 | test_ssvm.py
    test_02_list_cpvm_vm | Success | 0.13 | test_ssvm.py
    test_01_list_sec_storage_vm | Success | 0.14 | test_ssvm.py
    test_01_snapshot_root_disk | Success | 11.32 | test_snapshots.py
    test_04_change_offering_small | Success | 243.02 | test_service_offerings.py
    test_03_delete_service_offering | Success | 0.04 | test_service_offerings.py
    test_02_edit_service_offering | Success | 0.08 | test_service_offerings.py
    test_01_create_service_offering | Success | 0.12 | test_service_offerings.py
    test_02_sys_template_ready | Success | 0.17 | test_secondary_storage.py
    test_01_sys_vm_start | Success | 0.25 | test_secondary_storage.py
    test_09_reboot_router | Success | 35.34 | test_routers.py
    test_08_start_router | Success | 35.33 | test_routers.py
    test_07_stop_router | Success | 10.15 | test_routers.py
    test_06_router_advanced | Success | 0.06 | test_routers.py
    test_05_router_basic | Success | 0.04 | test_routers.py
    test_04_restart_network_wo_cleanup | Success | 5.70 | test_routers.py
    test_03_restart_network_cleanup | Success | 55.64 | test_routers.py
    test_02_router_internal_adv | Success | 1.12 | test_routers.py
    test_01_router_internal_basic | Success | 0.67 | test_routers.py
    test_router_dns_guestipquery | Success | 107.50 | test_router_dns.py
    test_router_dns_externalipquery | Success | 0.06 | test_router_dns.py
    test_router_dhcphosts | Success | 272.12 | test_router_dhcphosts.py
    test_01_updatevolumedetail | Success | 0.08 | test_resource_detail.py
    test_01_reset_vm_on_reboot | Success | 131.09 | test_reset_vm_on_reboot.py
    test_createRegion | Success | 0.04 | test_regions.py
    test_create_pvlan_network | Success | 5.21 | test_pvlan.py
    test_dedicatePublicIpRange | Success | 0.42 | test_public_ip_range.py
    test_04_rvpc_privategw_static_routes | Success | 471.70 | test_privategw_acl.py
    test_03_vpc_privategw_restart_vpc_cleanup | Success | 626.73 | test_privategw_acl.py
    test_02_vpc_privategw_static_routes | Success | 361.07 | test_privategw_acl.py
    test_01_vpc_privategw_acl | Success | 113.31 | test_privategw_acl.py
    test_01_primary_storage_nfs | Success | 36.00 | test_primary_storage.py
    test_createPortablePublicIPRange | Success | 15.19 | test_portable_publicip.py
    test_createPortablePublicIPAcquire | Success | 15.43 | test_portable_publicip.py
    test_isolate_network_password_server | Success | 89.55 | test_password_server.py
    test_UpdateStorageOverProvisioningFactor | Success | 0.14 | test_over_provisioning.py
    test_oobm_zchange_password | Success | 21.02 | test_outofbandmanagement.py
    test_oobm_multiple_mgmt_server_ownership | Success | 16.52 | test_outofbandmanagement.py
    test_oobm_issue_power_status | Success | 10.51 | test_outofbandmanagement.py
    test_oobm_issue_power_soft | Success | 15.52 | test_outofbandmanagement.py
    test_oobm_issue_power_reset | Success | 16.02 | test_outofbandmanagement.py
    test_oobm_issue_power_on | Success | 15.52 | test_outofbandmanagement.py
    test_oobm_issue_power_off | Success | 15.52 | test_outofbandmanagement.py
    test_oobm_issue_power_cycle | Success | 15.52 | test_outofbandmanagement.py
    test_oobm_enabledisable_across_clusterzones | Success | 52.21 | test_outofbandmanagement.py
    test_oobm_enable_feature_valid | Success | 5.17 | test_outofbandmanagement.py
    test_oobm_enable_feature_invalid | Success | 0.11 | test_outofbandmanagement.py
    test_oobm_disable_feature_valid | Success | 5.19 | test_outofbandmanagement.py
    test_oobm_disable_feature_invalid | Success | 0.12 | test_outofbandmanagement.py
    test_oobm_configure_invalid_driver | Success | 0.10 | test_outofbandmanagement.py
    test_oobm_configure_default_driver | Success | 0.09 | test_outofbandmanagement.py
    test_oobm_background_powerstate_sync | Success | 29.83 | test_outofbandmanagement.py
    test_extendPhysicalNetworkVlan | Success | 15.31 | test_non_contigiousvlan.py
    test_01_nic | Success | 656.78 | test_nic.py
    test_releaseIP | Success | 304.17 | test_network.py
    test_reboot_router | Success | 459.61 | test_network.py
    test_public_ip_user_account | Success | 10.27 | test_network.py
    test_public_ip_admin_account | Success | 40.62 | test_network.py
    test_network_rules_acquired_public_ip_3_Load_Balancer_Rule | Success | 66.65 | test_network.py
    test_network_rules_acquired_public_ip_2_nat_rule | Success | 61.52 | test_network.py
    test_network_rules_acquired_public_ip_1_static_nat_rule | Success | 120.62 | test_network.py
    test_delete_account | Success | 288.66 | test_network.py
    test_02_port_fwd_on_non_src_nat | Success | 55.63 | test_network.py
    test_01_port_fwd_on_src_nat | Success | 111.72 | test_network.py
    test_nic_secondaryip_add_remove | Success | 228.53 | test_multipleips_per_nic.py
    login_test_saml_user | Success | 24.50 | test_login.py
    test_assign_and_removal_lb | Success | 133.59 | test_loadbalance.py
    test_02_create_lb_rule_non_nat | Success | 187.59 | test_loadbalance.py
    test_01_create_lb_rule_src_nat | Success | 211.82 | test_loadbalance.py
    test_03_list_snapshots | Success | 0.08 | test_list_ids_parameter.py
    test_02_list_templates | Success | 0.04 | test_list_ids_parameter.py
    test_01_list_volumes | Success | 0.03 | test_list_ids_parameter.py
    test_07_list_default_iso | Success | 0.07 | test_iso.py
    test_05_iso_permissions | Success | 0.07 | test_iso.py
    test_04_extract_Iso | Success | 5.14 | test_iso.py
    test_03_delete_iso | Success | 95.20 | test_iso.py
    test_02_edit_iso | Success | 0.06 | test_iso.py
    test_01_create_iso | Success | 21.88 | test_iso.py
    test_04_rvpc_internallb_haproxy_stats_on_all_interfaces | Success | 218.23 | test_internal_lb.py
    test_03_vpc_internallb_haproxy_stats_on_all_interfaces | Success | 178.16 | test_internal_lb.py
    test_02_internallb_roundrobin_1RVPC_3VM_HTTP_port80 | Success | 499.97 | test_internal_lb.py
    test_01_internallb_roundrobin_1VPC_3VM_HTTP_port80 | Success | 414.20 | test_internal_lb.py
    test_dedicateGuestVlanRange | Success | 10.39 | test_guest_vlan_range.py
    test_UpdateConfigParamWithScope | Success | 0.14 | test_global_settings.py
    test_rolepermission_lifecycle_update | Success | 7.04 | test_dynamicroles.py
    test_rolepermission_lifecycle_list | Success | 6.89 | test_dynamicroles.py
    test_rolepermission_lifecycle_delete | Success | 6.73 | test_dynamicroles.py
    test_rolepermission_lifecycle_create | Success | 6.77 | test_dynamicroles.py
    test_rolepermission_lifecycle_concurrent_updates | Success | 6.91 | test_dynamicroles.py
    test_role_lifecycle_update_role_inuse | Success | 6.87 | test_dynamicroles.py
    test_role_lifecycle_update | Success | 11.86 | test_dynamicroles.py
    test_role_lifecycle_list | Success | 6.80 | test_dynamicroles.py
    test_role_lifecycle_delete | Success | 11.82 | test_dynamicroles.py
    test_role_lifecycle_create | Success | 6.83 | test_dynamicroles.py
    test_role_inuse_deletion | Success | 6.77 | test_dynamicroles.py
    test_role_account_acls_multiple_mgmt_servers | Success | 9.04 | test_dynamicroles.py
    test_role_account_acls | Success | 9.22 | test_dynamicroles.py
    test_default_role_deletion | Success | 6.93 | test_dynamicroles.py
    test_04_create_fat_type_disk_offering | Success | 0.07 | test_disk_offerings.py
    test_03_delete_disk_offering | Success | 0.04 | test_disk_offerings.py
    test_02_edit_disk_offering | Success | 0.18 | test_disk_offerings.py
    test_02_create_sparse_type_disk_offering | Success | 0.07 | test_disk_offerings.py
    test_01_create_disk_offering | Success | 0.10 | test_disk_offerings.py
    test_deployvm_userdispersing | Success | 21.15 | test_deploy_vms_with_varied_deploymentplanners.py
    test_deployvm_userconcentrated | Success | 20.58 | test_deploy_vms_with_varied_deploymentplanners.py
    test_deployvm_firstfit | Success | 90.82 | test_deploy_vms_with_varied_deploymentplanners.py
    test_deployvm_userdata_post | Success | 10.39 | test_deploy_vm_with_userdata.py
    test_deployvm_userdata | Success | 76.26 | test_deploy_vm_with_userdata.py
    test_02_deploy_vm_root_resize | Success | 7.08 | test_deploy_vm_root_resize.py
    test_01_deploy_vm_root_resize | Success | 6.90 | test_deploy_vm_root_resize.py
    test_00_deploy_vm_root_resize | Success | 228.43 | test_deploy_vm_root_resize.py
    test_deploy_vm_from_iso | Success | 218.49 | test_deploy_vm_iso.py
    test_DeployVmAntiAffinityGroup | Success | 171.63 | test_affinity_groups.py
    test_03_delete_vm_snapshots | Skipped | 0.00 | test_vm_snapshots.py
    test_02_revert_vm_snapshots | Skipped | 0.00 | test_vm_snapshots.py
    test_01_test_vm_volume_snapshot | Skipped | 0.00 | test_vm_snapshots.py
    test_01_create_vm_snapshots | Skipped | 0.00 | test_vm_snapshots.py
    test_06_copy_template | Skipped | 0.01 | test_templates.py
    test_static_role_account_acls | Skipped | 0.03 | test_staticroles.py
    test_01_scale_vm | Skipped | 0.00 | test_scale_vm.py
    test_01_primary_storage_iscsi | Skipped | 0.04 | test_primary_storage.py
    test_06_copy_iso | Skipped | 0.00 | test_iso.py
    test_deploy_vgpu_enabled_vm | Skipped | 0.00 | test_deploy_vgpu_enabled_vm.py



---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] cloudstack pull request #1746: SSVM downloader now handles redirects properl...

Posted by asfgit <gi...@git.apache.org>.
Github user asfgit closed the pull request at:

    https://github.com/apache/cloudstack/pull/1746


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] cloudstack issue #1746: SSVM downloader now handles redirects properly.

Posted by rhtyd <gi...@git.apache.org>.
Github user rhtyd commented on the issue:

    https://github.com/apache/cloudstack/pull/1746
  
    LGTM on tests and code. Pinging for review -- @abhinandanprateek @murali-reddy @karuturi and others.
    @syed do you have any outstanding comments on this PR, or you're LGTM on this.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] cloudstack issue #1746: SSVM downloader now handles redirects properly.

Posted by rhtyd <gi...@git.apache.org>.
Github user rhtyd commented on the issue:

    https://github.com/apache/cloudstack/pull/1746
  
    @blueorangutan test


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] cloudstack pull request #1746: SSVM downloader now handles redirects properl...

Posted by syed <gi...@git.apache.org>.
Github user syed commented on a diff in the pull request:

    https://github.com/apache/cloudstack/pull/1746#discussion_r86163529
  
    --- Diff: core/src/com/cloud/storage/template/HttpTemplateDownloader.java ---
    @@ -117,7 +116,7 @@ public boolean retryMethod(final HttpMethod method, final IOException exception,
                 request = new GetMethod(downloadUrl);
                 request.getParams().setParameter(HttpMethodParams.RETRY_HANDLER, myretryhandler);
                 completionCallback = callback;
    -            //this.request.setFollowRedirects(false);
    --- End diff --
    
    Nevermind. Looks like this is the port to 4.9


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] cloudstack issue #1746: SSVM downloader now handles redirects properly.

Posted by blueorangutan <gi...@git.apache.org>.
Github user blueorangutan commented on the issue:

    https://github.com/apache/cloudstack/pull/1746
  
    Packaging result: \u2714centos6 \u2714centos7 \u2714debian. JID-128


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] cloudstack issue #1746: SSVM downloader now handles redirects properly.

Posted by rhtyd <gi...@git.apache.org>.
Github user rhtyd commented on the issue:

    https://github.com/apache/cloudstack/pull/1746
  
    LGTM.
    @blueorangutan package


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---

[GitHub] cloudstack issue #1746: SSVM downloader now handles redirects properly.

Posted by blueorangutan <gi...@git.apache.org>.
Github user blueorangutan commented on the issue:

    https://github.com/apache/cloudstack/pull/1746
  
    @rhtyd a Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastructure@apache.org or file a JIRA ticket
with INFRA.
---