Hi champs ,
I'm implementing CI\CD in AX2012 using Azure DevOps and my build succeeded and generated an Artifact file (which is .AX model)
however my release pipeline has following function to install the .AXmodel file which is a build artifact
function Install-Model($folder, $file)
{
if($file -ne $null -and $folder -ne $null)
{
$newModel = $file.Replace('.axmodel','')
$file = join-path $folder $file
if((test-path $file) -eq $true)
{
$exp = ''
$modelName = Get-ModelName($file)
Write-Host $modelName
$instVer = Get-InstalledVersion($modelName)
$newVer = Get-FileVersion($file)
$extraArguments = ''
Write-InfoLog ("code reached before if and extraargs value here is {0}" -f $extraArguments)
if($importOverrideParams -ne $null)
{
if($importOverrideParams.Contains($modelName))
{
$extraArguments = $importOverrideParams.Get_Item($modelName)
Write-InfoLog ("code reached if and extarguments value here is {0}" -f $extraArguments)
}
}
if ($instVer -ne "")
{
if ($newVer -ne $instVer)
{
Write-InfoLog ("Replacing model {0}, old version {1} with new version {2} and extra args {3}." -f $newModel, $instVer, $newVer, $extraArguments)
$exp = 'Install-AXModel {0} -File "{1}" -replace "{4}" -NoPrompt -Server "{2}" -Database "{3}" ' -f $extraArguments, $file, $sqlServer, $sqlModelDatabase, $modelName
write-host $exp
}
else
{
Write-InfoLog ("Skipping model {0}, installed version is identical {1}" -f $newModel, $newVer)
}
}
else
{
Write-InfoLog ("Installing model {0}, version {1}, extra args {2}." -f $newModel, $newVer, $extraArguments)
$exp = 'Install-AXModel {0} -File "{1}" -NoPrompt -Server "{2}" -Database "{3}" ' -f $extraArguments, $file, $sqlServer, $sqlModelDatabase
}
if ($exp -ne '')
{
Invoke-Expression $exp
}
}
}
}
However I see the below error after running this script , can you please post your thoughts on the same .