Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build: windows stage0.exe should loop, try harder #10071

Closed
bradfitz opened this issue Mar 3, 2015 · 5 comments
Closed

build: windows stage0.exe should loop, try harder #10071

bradfitz opened this issue Mar 3, 2015 · 5 comments

Comments

@bradfitz
Copy link
Contributor

bradfitz commented Mar 3, 2015

I think I figured out why the Windows VMs don't always come up into a buildlet.

I just saw "gomote create" of a Windows VM failed, so I connected to it fine with RDP. It booted, but the stage0.exe was gone. It must've failed and died. I don't know why, but maybe networking wasn't fully up yet? It should loop a few times with a sleep.

Then we should rebuild the Windows image too with a 40 GB base instead of a 100 GB base. (since we'll have to rebuild anyway to update stage0, and 40 GB is now available I hear, whereas only 100 GB was available before)

/cc @adg

@bradfitz
Copy link
Contributor Author

bradfitz commented Mar 3, 2015

Also, the buildlet should maybe not log for every file written on Windows. It almost looks like we're being limited by the speed of the console (cmd.exe). We should benchmark and verify.

@adg
Copy link
Contributor

adg commented Mar 5, 2015

I started looking into this.

One of the first things stage0 does is call metadata.OnGCE(), which
makes a single Get request before failing closed (assumes you're not on
GCE). After that, stage0 looks for the buildlet using an environment
variable (local testing mode).

Maybe we should loop waiting for the network to come up before doing
anything else?
I wonder what the best way to do that test is?

On 4 March 2015 at 08:44, Brad Fitzpatrick notifications@github.com wrote:

Also, the buildlet should maybe not log for every file written on Windows.
It almost looks like we're being limited by the speed of the console
(cmd.exe). We should benchmark and verify.


Reply to this email directly or view it on GitHub
#10071 (comment).

@minux
Copy link
Member

minux commented Mar 5, 2015 via email

@adg
Copy link
Contributor

adg commented Mar 5, 2015

On 5 March 2015 at 17:56, Minux Ma notifications@github.com wrote:

shell out to 'ipconfig' perhaps?

stage0 should work on all machines.
I'd rather try something like net.Dial("google.com")

@alexbrainman
Copy link
Member

I googled. You can do something like that

http://www.winvistatips.com/threads/always-wait-for-network-at-computer-startup-and-logon.720146/
http://www.kixtart.org/forums/ubbthreads.php?ubb=showflat&Number=112428
http://support.microsoft.com/kb/304970

To run "Group Policy Editor" just run gpedit.msc.

But I think your proposal to try and connect to something on the Internet sounds good to me.

Alex

@golang golang locked and limited conversation to collaborators Jun 25, 2016
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

5 participants