Skip to content

Commit e3f4671

Browse files
Switch VMSS runners to default GitHub runner group
Removed custom 'azure-vmss-runners' group from Terraform and runner initialization scripts to simplify configuration and improve self-healing. Updated workflow and scripts to reflect use of the default runner group, as custom groups require org admin permissions and add unnecessary complexity for single-repository setups.
1 parent 699cae4 commit e3f4671

3 files changed

Lines changed: 25 additions & 11 deletions

File tree

.github/workflows/vmss-deploy.yml

Lines changed: 21 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,26 @@ jobs:
4747
-var="github_token=${{ secrets.VMSS_GH_PAT }}" \
4848
-out=tfplan
4949
50+
- name: Import existing resources (self-healing)
51+
if: github.event_name == 'push'
52+
continue-on-error: true
53+
working-directory: ./gh-runners
54+
run: |
55+
# Import VNet if it exists outside Terraform state
56+
terraform import azurerm_virtual_network.vnet /subscriptions/65a430fb-5a9a-49ff-969e-05d1beaa88fb/resourceGroups/dbatools-ci-runners/providers/Microsoft.Network/virtualNetworks/dbatools-runner-vmss-vnet 2>/dev/null || true
57+
58+
# Import subnet if it exists outside Terraform state
59+
terraform import azurerm_subnet.subnet /subscriptions/65a430fb-5a9a-49ff-969e-05d1beaa88fb/resourceGroups/dbatools-ci-runners/providers/Microsoft.Network/virtualNetworks/dbatools-runner-vmss-vnet/subnets/dbatools-runner-vmss-subnet 2>/dev/null || true
60+
61+
# Import VMSS if it exists outside Terraform state
62+
terraform import azurerm_windows_virtual_machine_scale_set.vmss /subscriptions/65a430fb-5a9a-49ff-969e-05d1beaa88fb/resourceGroups/dbatools-ci-runners/providers/Microsoft.Compute/virtualMachineScaleSets/dbatools-runner-vmss 2>/dev/null || true
63+
64+
# Import VMSS extension if it exists outside Terraform state
65+
terraform import azurerm_virtual_machine_scale_set_extension.vmss /subscriptions/65a430fb-5a9a-49ff-969e-05d1beaa88fb/resourceGroups/dbatools-ci-runners/providers/Microsoft.Compute/virtualMachineScaleSets/dbatools-runner-vmss/extensions/CustomScriptExtension 2>/dev/null || true
66+
67+
# Import role assignment if it exists outside Terraform state
68+
terraform import azurerm_role_assignment.vmss_kv_secrets_user /subscriptions/65a430fb-5a9a-49ff-969e-05d1beaa88fb/resourceGroups/dbatools-ci-runners/providers/Microsoft.KeyVault/vaults/dbatoolsci|Key_Vault_Secrets_User 2>/dev/null || true
69+
5070
- name: Terraform Apply
5171
if: github.event_name == 'push'
5272
working-directory: ./gh-runners
@@ -61,6 +81,6 @@ jobs:
6181
echo "- Resource Group: dbatools-ci-runners" >> $GITHUB_STEP_SUMMARY
6282
echo "- VMSS Name: dbatools-runner-vmss" >> $GITHUB_STEP_SUMMARY
6383
echo "- Max Instances: 3" >> $GITHUB_STEP_SUMMARY
64-
echo "- Runner Group: azure-vmss-runners" >> $GITHUB_STEP_SUMMARY
84+
echo "- Runner Group: Default (no custom group)" >> $GITHUB_STEP_SUMMARY
6585
echo "" >> $GITHUB_STEP_SUMMARY
6686
echo "Next: Scale VMSS to 1 instance to test runner registration" >> $GITHUB_STEP_SUMMARY

gh-runners/github_components.tf

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,6 @@ data "github_repository" "dbatools" {
33
full_name = "${var.github_organization}/${var.github_repository}"
44
}
55

6-
# Create a runner group for VMSS runners
7-
resource "github_actions_runner_group" "vmss" {
8-
name = "azure-vmss-runners"
9-
visibility = "selected"
10-
selected_repository_ids = [data.github_repository.dbatools.repo_id]
11-
allows_public_repositories = false
12-
}
6+
# Runner group removed - using default group for simplicity and self-healing
7+
# Custom runner groups require org admin permissions and add unnecessary complexity
8+
# for single-project setups. Runners will automatically use the "Default" group.

gh-runners/init.ps1

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,13 +52,12 @@ try {
5252
$KeyVaultName = "dbatoolsci"
5353
$GithubOrg = "dataplat"
5454
$Repository = "dbatools"
55-
$RunnerGroup = "azure-vmss-runners"
5655

5756
Write-Log "Configuration:"
5857
Write-Log " - Key Vault: $KeyVaultName"
5958
Write-Log " - Organization: $GithubOrg"
6059
Write-Log " - Repository: $Repository"
61-
Write-Log " - Runner Group: $RunnerGroup"
60+
Write-Log " - Runner Group: Default (no custom group)"
6261
Write-Log " - VM Name: $($env:COMPUTERNAME)"
6362

6463
Write-Log "Retrieving GitHub PAT from Key Vault..."
@@ -110,7 +109,6 @@ try {
110109
"--url", "https://github.com/$GithubOrg/$Repository",
111110
"--token", $RegistrationToken,
112111
"--name", $env:COMPUTERNAME,
113-
"--runnergroup", $RunnerGroup,
114112
"--labels", "self-hosted,azure-vmss,windows,sqlserver",
115113
"--work", "_work",
116114
"--ephemeral",

0 commit comments

Comments
 (0)