Skip to content

Commit 2948f88

Browse files
committed
Update dotnet automation scripts
1 parent 4ae973e commit 2948f88

File tree

2 files changed

+25
-35
lines changed

2 files changed

+25
-35
lines changed

eng/scripts/Invoke-GenerateAndBuildV2.ps1

Lines changed: 18 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ foreach( $file in $inputFilePaths) {
102102
$inputFileToGen += @($file)
103103
}
104104
}
105-
105+
106106
}
107107

108108
if ($inputFileToGen) {
@@ -113,42 +113,27 @@ if ($inputFileToGen) {
113113
if ($relatedTypeSpecProjectFolder) {
114114
foreach ($typespecRelativeFolder in $relatedTypeSpecProjectFolder) {
115115
$typespecFolder = Resolve-Path (Join-Path $swaggerDir $typespecRelativeFolder)
116-
$newPackageOutput = "newPackageOutput.json"
117-
118-
$tspConfigYaml = Get-Content -Path (Join-Path "$typespecFolder" "tspconfig.yaml") -Raw
119-
120-
Install-ModuleIfNotInstalled "powershell-yaml" "0.4.1" | Import-Module
121-
$yml = ConvertFrom-YAML $tspConfigYaml
122-
$service = ""
123-
$namespace = ""
124-
if ($yml) {
125-
if ($yml["parameters"] -And $yml["parameters"]["service-directory-name"]) {
126-
$service = $yml["parameters"]["service-directory-name"]["default"];
127-
}
128-
if ($yml["options"] -And $yml["options"]["@azure-tools/typespec-csharp"] -And $yml["options"]["@azure-tools/typespec-csharp"]["namespace"]) {
129-
$namespace = $yml["options"]["@azure-tools/typespec-csharp"]["namespace"]
130-
}
131-
}
132-
if (!$service || !$namespace) {
133-
throw "Not provide service name or namespace."
134-
}
135-
$projectFolder = (Join-Path $sdkPath "sdk" $service $namespace)
136-
New-TypeSpecPackageFolder `
137-
-service $service `
138-
-namespace $namespace `
139-
-sdkPath $sdkPath `
140-
-relatedTypeSpecProjectFolder $typespecRelativeFolder `
141-
-specRoot $swaggerDir `
142-
-outputJsonFile $newpackageoutput
143-
$newPackageOutputJson = Get-Content $newPackageOutput -Raw | ConvertFrom-Json
144-
$relativeSdkPath = $newPackageOutputJson.path
145-
GeneratePackage `
146-
-projectFolder $projectFolder `
116+
$curpath = Get-Location | Select-Object -ExpandProperty Path | Out-String -Stream
117+
Write-Host "Current path is $curpath"
118+
$processScript = Resolve-Path (Join-Path "./eng/common/scripts" "TypeSpec-Project-Process.ps1")
119+
$sdkProjectFolder = & $processScript $typespecFolder $commitid $repoHttpsUrl -SkipSyncAndGenerate
120+
if ($LASTEXITCODE) {
121+
# If Process script call fails, then return with failure to CI and don't need to call GeneratePackage
122+
$generatedSDKPackages = @{
123+
result = "failed";
124+
path=@("");
125+
}
126+
} else {
127+
$relativeSdkPath = Resolve-Path $sdkProjectFolder -Relative
128+
GeneratePackage `
129+
-projectFolder $sdkProjectFolder `
147130
-sdkRootPath $sdkPath `
148131
-path $relativeSdkPath `
149132
-downloadUrlPrefix $downloadUrlPrefix `
150133
-serviceType "data-plane" `
151-
-generatedSDKPackages $generatedSDKPackages
134+
-generatedSDKPackages $generatedSDKPackages `
135+
-specRepoRoot $swaggerDir
136+
}
152137
}
153138
}
154139
$outputJson = [PSCustomObject]@{

eng/scripts/automation/GenerateAndBuildLib.ps1

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -722,7 +722,8 @@ function GeneratePackage()
722722
[string]$downloadUrlPrefix="",
723723
[string]$serviceType="data-plane",
724724
[switch]$skipGenerate,
725-
[object]$generatedSDKPackages
725+
[object]$generatedSDKPackages,
726+
[string]$specRepoRoot=""
726727
)
727728

728729
$packageName = Split-Path $projectFolder -Leaf
@@ -740,7 +741,11 @@ function GeneratePackage()
740741
Write-Host "Start to generate sdk $projectFolder"
741742
$srcPath = Join-Path $projectFolder 'src'
742743
if (!$skipGenerate) {
743-
dotnet build /t:GenerateCode $srcPath
744+
if($specRepoRoot -eq "") {
745+
dotnet build /t:GenerateCode $srcPath
746+
} else {
747+
dotnet build /t:GenerateCode $srcPath /p:SpecRepoRoot=$specRepoRoot
748+
}
744749
}
745750
if ( !$?) {
746751
Write-Error "Failed to generate sdk. exit code: $?"

0 commit comments

Comments
 (0)