Skip to content

windows based runner vm fails to provision in azure #469

@rgl

Description

@rgl

The windows based runner vm fails to provision because the CustomScriptExtension extension fails with exit code 1.

The pool is created as (full example is at https://github.com/rgl/terraform-azure-garm/tree/wip-windows-runner):

./garm-cli pool create \
  --enabled true \
  --org "$org_id" \
  --min-idle-runners 0 \
  --max-runners 2 \
  --tags garm-org-azure-amd64-windows-2022 \
  --runner-prefix rgl-garm-windows-org \
  --provider-name azure \
  --os-arch amd64 \
  --os-type windows \
  --flavor Standard_F2s_v2 \
  --image MicrosoftWindowsServer:WindowsServer:2022-Datacenter:latest \
  --extra-specs '{
    "storage_account_type": "StandardSSD_LRS",
    "disk_size_gb": 127
  }'

But the runner vm ends up failing the provisioning.

Here's the stripped down error message:

    <S S="Error">User runner already exists._x000D__x000A_</S>
    <S S="Error">At C:\run.ps1:333 char:3_x000D__x000A_</S>
    <S S="Error">+         Throw $Message_x000D__x000A_</S>
    <S S="Error">+         ~~~~~~~~~~~~~~_x000D__x000A_</S>
    <S S="Error">    + CategoryInfo          : OperationStopped: (User runner already exists.:String) [], RuntimeException_x000D__x000A_</S>
    <S S="Error">    + FullyQualifiedErrorId : User runner already exists._x000D__x000A_</S>
    <S S="Error"> _x000D__x000A_</S>

Here's the full error message:

#< CLIXML
<Objs Version="1.1.0.1"
    xmlns="http://schemas.microsoft.com/powershell/2004/04">
    <Obj S="progress" RefId="0">
        <TN RefId="0">
            <T>System.Management.Automation.PSCustomObject</T>
            <T>System.Object</T>
        </TN>
        <MS>
            <I64 N="SourceId">1</I64>
            <PR N="Record">
                <AV>Preparing modules for first use.</AV>
                <AI>0</AI>
                <Nil />
                <PI>-1</PI>
                <PC>-1</PC>
                <T>Completed</T>
                <SR>-1</SR>
                <SD></SD>
            </PR>
        </MS>
    </Obj>
    <Obj S="progress" RefId="1">
        <TNRef RefId="0" />
        <MS>
            <I64 N="SourceId">2</I64>
            <PR N="Record">
                <AV>Preparing modules for first use.</AV>
                <AI>0</AI>
                <Nil />
                <PI>-1</PI>
                <PC>-1</PC>
                <T>Completed</T>
                <SR>-1</SR>
                <SD></SD>
            </PR>
        </MS>
    </Obj>
    <Obj S="progress" RefId="2">
        <TNRef RefId="0" />
        <MS>
            <I64 N="SourceId">3</I64>
            <PR N="Record">
                <AV>Preparing modules for first use.</AV>
                <AI>0</AI>
                <Nil />
                <PI>-1</PI>
                <PC>-1</PC>
                <T>Completed</T>
                <SR>-1</SR>
                <SD></SD>
            </PR>
        </MS>
    </Obj>
    <Obj S="progress" RefId="3">
        <TNRef RefId="0" />
        <MS>
            <I64 N="SourceId">3</I64>
            <PR N="Record">
                <AV>Preparing modules for first use.</AV>
                <AI>0</AI>
                <Nil />
                <PI>-1</PI>
                <PC>-1</PC>
                <T>Completed</T>
                <SR>-1</SR>
                <SD></SD>
            </PR>
        </MS>
    </Obj>
    <Obj S="progress" RefId="4">
        <TNRef RefId="0" />
        <MS>
            <I64 N="SourceId">4</I64>
            <PR N="Record">
                <AV>Reading web response</AV>
                <AI>174593042</AI>
                <Nil />
                <PI>-1</PI>
                <PC>-1</PC>
                <T>Processing</T>
                <SR>-1</SR>
                <SD>Reading response stream... (Number of bytes read: 0)</SD>
            </PR>
        </MS>
    </Obj>
    <Obj S="progress" RefId="5">
        <TNRef RefId="0" />
        <MS>
            <I64 N="SourceId">4</I64>
            <PR N="Record">
                <AV>Reading web response</AV>
                <AI>174593042</AI>
                <Nil />
                <PI>-1</PI>
                <PC>-1</PC>
                <T>Completed</T>
                <SR>-1</SR>
                <SD>Reading web response completed. (Number of bytes read: 0)</SD>
            </PR>
        </MS>
    </Obj>
    <S S="Error">User runner already exists._x000D__x000A_</S>
    <S S="Error">At C:\run.ps1:333 char:3_x000D__x000A_</S>
    <S S="Error">+         Throw $Message_x000D__x000A_</S>
    <S S="Error">+         ~~~~~~~~~~~~~~_x000D__x000A_</S>
    <S S="Error">    + CategoryInfo          : OperationStopped: (User runner already exists.:String) [], RuntimeException_x000D__x000A_</S>
    <S S="Error">    + FullyQualifiedErrorId : User runner already exists._x000D__x000A_</S>
    <S S="Error"> _x000D__x000A_</S>
</Objs>

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions