Azure / Azure/azure-linux-extensions
[DSCForLinux] Extension provisioning failed : "(03000)Argument error, invalid file location", but no FileUri provided
- Dominant language
- Python
- Stars
- 333
- Forks
- 278
- Avg merge
- 2d 9h
- Merged PRs (30d)
- 4
Description
Hello,
I'm trying to add the DSCForLinux extension on an Azure VM I'm provisioning via Terraform.
I try to follow the steps on [this page](https://docs.microsoft.com/en-us/azure/virtual-machines/extensions/dsc-linux), and here are my parameters:
```
public_settings =
{
"NodeConfigurationName": "${var.NodeName}",
"ConfigurationMode": "${var.DSCMode}",
"ConfigurationModeFrequencyMins": 15,
"RefreshFrequencyMins": 30
}
protected_settings =
{
"RegistrationKey" : "${azurerm_automation_account.AutomationAccount.dsc_primary_access_key}",
"RegistrationUrl": "${azurerm_automation_account.AutomationAccount.dsc_server_endpoint}"
}
```
I don't put a `FileUri` because I don't have a MOF file: I use a `azurerm_automation_dsc_configuration` on Terraform, provide my DSC configuration to Azure, and compile it on Azure. I haven't found a way to get a URI for the MOF file/compiled configuration on the Azure Portal.
The `NodeConfigurationName` is exactly the same as the compiled configuration.
However, when I try to set the extension, I get the `(03000)Argument error, invalid file location` error, whereas the FileUri is stated to be optional.
The only workaround I've found for now is to manually register the VM to AzureAutomation via SSH, and then assign a configuration according to the instructions on [this page](https://docs.microsoft.com/en-us/azure/automation/dsc-linux-powershell#register-the-azure-linux-vm-for-an-automation-account), but it isn't satisfactory as it adds a manual action.
Does anyone have any insight on this?
Thanks!
Contributor guide
No contributing guide indexed for this repository
Research direction
No repository file or test is named. Reproduce the DSCForLinux extension setup with the Terraform public_settings and protected_settings shown, then compare the documented optional FileUri behavior with the extension's validation path. Done means identifying whether Azure Automation compilation is supported without FileUri and documenting or correcting the supported provisioning flow.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- azure, python, terraform
- Domain
- cloud, devops
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100