diff --git a/.github/workflows/Pkg EdFi.ProjectTemplates.Installer.yml b/.github/workflows/Pkg EdFi.ProjectTemplates.Installer.yml new file mode 100644 index 0000000000..bc97fd0b64 --- /dev/null +++ b/.github/workflows/Pkg EdFi.ProjectTemplates.Installer.yml @@ -0,0 +1,128 @@ +# SPDX-License-Identifier: Apache-2.0 +# Licensed to the Ed-Fi Alliance under one or more agreements. +# The Ed-Fi Alliance licenses this file to you under the Apache License, Version 2.0. +# See the LICENSE and NOTICES files in the project root for more information. + +name: Pkg EdFi.ProjectTemplates.Installer + +on: + pull_request: + branches: ['main-5x', 'b-v*-patch*','feature-*'] + push: + branches: ['main-5x', 'b-v*-patch*','feature-*'] + workflow_dispatch: +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} + cancel-in-progress: true + +env: + INFORMATIONAL_VERSION: "5.4" + BUILD_INCREMENTER: "0" + AZURE_ARTIFACT_URL: "https://pkgs.dev.azure.com/ed-fi-alliance/Ed-Fi-Alliance-OSS/_packaging/EdFi/nuget/v3/index.json" + AZURE_ARTIFACT_NUGET_KEY: ${{ secrets.AZURE_ARTIFACTS_PERSONAL_ACCESS_TOKEN }} + VSS_NUGET_EXTERNAL_FEED_ENDPOINTS : '{"endpointCredentials": [{"endpoint": "https://pkgs.dev.azure.com/ed-fi-alliance/Ed-Fi-Alliance-OSS/_packaging/EdFi/nuget/v3/index.json","password": "${{ secrets.AZURE_ARTIFACTS_PERSONAL_ACCESS_TOKEN }}"}]}' + CONFIGURATION: "Release" + REPOSITORY_DISPATCH_BRANCH: ${{ github.event.client_payload.branch }} + HEAD_REF: ${{ GITHUB.HEAD_REF }} + REF_NAME: ${{ GITHUB.REF_NAME }} + REPOSITORY_OWNER: ${{ GITHUB.REPOSITORY_OWNER }} + +jobs: + build: + + runs-on: windows-latest + steps: + - name: Check for Azure token + if: ${{ env.REPOSITORY_OWNER == 'Ed-Fi-Alliance-OSS' && env.AZURE_ARTIFACT_NUGET_KEY == '' }} + run: | + echo "::error::Missing Azure Token" + exit 1 + - name: Support longpaths + run: git config --system core.longpaths true + - name: Checkout Ed-Fi-ODS + uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4 + with: + repository: Ed-Fi-Alliance-OSS/Ed-Fi-ODS + path: Ed-Fi-ODS/ + - name: Checkout Ed-Fi-ODS-Implementation + uses: actions/checkout@8ade135a41bc03ea155e62e844d188df1ea18608 # v4 + with: + repository: Ed-Fi-Alliance-OSS/Ed-Fi-ODS-Implementation + path: Ed-Fi-ODS-Implementation/ + - name: Setup MSBuild for .NET Framework 4.8 + uses: microsoft/setup-msbuild@6fb02220983dee41ce7ae257b6f4d8f9bf5ed4ce #v2.0.0 + - name: Cache Nuget packages + uses: actions/cache@58c146cc91c5b9e778e71775dfe9bf1442ad9a12 #v3.2.3 + with: + path: ~/.nuget/packages + key: ${{ runner.os }}-nuget-${{ hashFiles('**/*.csproj*', '**/configuration.packages.json') }} + restore-keys: | + ${{ runner.os }}-nuget- + - name: update BUILD_INCREMENTER + run: | + $newRevision = ([int]${{ github.run_number }}) + ([int]${{env.BUILD_INCREMENTER}}) + if ($newRevision -lt 0) { + $newRevision = 1 + echo "BUILD_INCREMENTER=$newRevision">> $env:GITHUB_ENV + } + shell: powershell + - name: Update version number in source.extension.vsixmanifest file + working-directory: ./Ed-Fi-ODS/ + run: | + $BuildCounter = ${{ github.run_number }} + $BuildIncrementer = ${{env.BUILD_INCREMENTER}} + $InformationalVersion = ${{ env.INFORMATIONAL_VERSION}} + $newRevision = ([int]$BuildCounter) + ([int]$BuildIncrementer) + $version = "$InformationalVersion.$newRevision" + Write-Host "ODS/API Version : $version" + $vsixManifestPath = "$env:GITHUB_WORKSPACE/Ed-Fi-ODS/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/source.extension.vsixmanifest" + $vsixManifestContent = Get-Content $vsixManifestPath -Raw + + # Use regex to find the first tag and extract the Version attribute value + $versionRegex = ']*\sVersion="([^"]+)"' + $match = [regex]::Match($vsixManifestContent, $versionRegex) + if ($match.Success) { + $currentVersion = $match.Groups[1].Value + Write-Host "Current Version: $currentVersion" + + # Update the Version attribute with a new value + $newVersion = $version + $updatedContent = $vsixManifestContent -replace "$versionRegex", (' tag." + } + shell: powershell + - name: Restore NuGet packages + working-directory: ./Ed-Fi-ODS/ + run: msbuild "$env:GITHUB_WORKSPACE/Ed-Fi-ODS/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.sln" /t:Restore + shell: powershell + - name: build + run: msbuild "$env:GITHUB_WORKSPACE/Ed-Fi-ODS/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.sln" /p:Configuration=${{ env.CONFIGURATION }} + shell: powershell + - name: pack using nuget nuspec file + working-directory: ./Ed-Fi-ODS/ + shell: powershell + run: | + .\build.githubactions.ps1 pack -Configuration ${{ env.CONFIGURATION }} -InformationalVersion ${{ env.INFORMATIONAL_VERSION}} -BuildCounter ${{ github.run_number }} -BuildIncrementer ${{env.BUILD_INCREMENTER}} -PackageName "EdFi.Suite3.ProjectTemplates.Installer" -NuspecFilePath "$env:GITHUB_WORKSPACE/Ed-Fi-ODS/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/EdFi.ProjectTemplates.Installer.nuspec" + - name: Install-credential-handler + if: ${{ env.AZURE_ARTIFACT_NUGET_KEY != '' && github.event_name == 'workflow_dispatch' }} + working-directory: ./Ed-Fi-ODS/ + run: | + .\build.githubactions.ps1 InstallCredentialHandler + shell: powershell + - name: publish + if: ${{ env.AZURE_ARTIFACT_NUGET_KEY != '' && github.event_name == 'workflow_dispatch' }} + working-directory: ./Ed-Fi-ODS/ + run: | + .\build.githubactions.ps1 publish -InformationalVersion ${{ env.INFORMATIONAL_VERSION }} -BuildCounter ${{ github.run_number }} -BuildIncrementer ${{env.BUILD_INCREMENTER}} -NuGetApiKey ${{ env.AZURE_ARTIFACT_NUGET_KEY }} -EdFiNuGetFeed ${{env.AZURE_ARTIFACT_URL}} -PackageName "EdFi.Suite3.ProjectTemplates.Installer" + shell: powershell + - name: Upload EdFi.Suite3.ProjectTemplates.Installer Artifacts + if: success() + uses: actions/upload-artifact@3cea5372237819ed00197afe530f5a7ea3e805c8 # v3.1.0 + with: + name: NugetPackages.Artifacts + path: ${{ github.workspace }}/Ed-Fi-ODS/NugetPackages/*.nupkg \ No newline at end of file diff --git a/Application/EdFi.Ods.Api/Startup/OdsStartupBase.cs b/Application/EdFi.Ods.Api/Startup/OdsStartupBase.cs index fac7c44c29..8d2652e1bc 100644 --- a/Application/EdFi.Ods.Api/Startup/OdsStartupBase.cs +++ b/Application/EdFi.Ods.Api/Startup/OdsStartupBase.cs @@ -361,7 +361,7 @@ private string GetPluginFolder() } // in a developer environment the plugin folder is relative to the WebApi project - // "Ed-Fi-ODS-Implementation\Application\EdFi.Ods.WebApi\bin\Debug\netcoreapp3.1\..\..\..\" => "Ed-Fi-ODS-Implementation\Application\EdFi.Ods.WebApi" + // "Ed-Fi-ODS-Implementation/Application/EdFi.Ods.WebApi/bin/Debug/net8.0/../../../" => "Ed-Fi-ODS-Implementation/Application/EdFi.Ods.WebApi" var projectDirectory = Path.GetFullPath(Path.Combine(AppDomain.CurrentDomain.BaseDirectory!, "..\\..\\..\\")); var relativeToProject = Path.GetFullPath(Path.Combine(projectDirectory, Plugin.Folder)); diff --git a/Utilities/CodeGeneration/EdFi.Ods.CodeGen.Tests/EdFi.Ods.CodeGen.Tests.csproj b/Utilities/CodeGeneration/EdFi.Ods.CodeGen.Tests/EdFi.Ods.CodeGen.Tests.csproj index 81946f8192..9596d4f8f0 100644 --- a/Utilities/CodeGeneration/EdFi.Ods.CodeGen.Tests/EdFi.Ods.CodeGen.Tests.csproj +++ b/Utilities/CodeGeneration/EdFi.Ods.CodeGen.Tests/EdFi.Ods.CodeGen.Tests.csproj @@ -23,19 +23,19 @@ - - - - - - + + + + + + - - - - - - + + + + + + diff --git a/Utilities/CodeGeneration/EdFi.Ods.CodeGen/EdFi.Ods.CodeGen.csproj b/Utilities/CodeGeneration/EdFi.Ods.CodeGen/EdFi.Ods.CodeGen.csproj index f6dee3f275..cc8fa37c62 100644 --- a/Utilities/CodeGeneration/EdFi.Ods.CodeGen/EdFi.Ods.CodeGen.csproj +++ b/Utilities/CodeGeneration/EdFi.Ods.CodeGen/EdFi.Ods.CodeGen.csproj @@ -26,19 +26,19 @@ - - - - - - - - - - - + + + + + + + + + + + - + diff --git a/Utilities/CodeGeneration/README.md b/Utilities/CodeGeneration/README.md index c4aa9c8cf0..717ba89aa4 100644 --- a/Utilities/CodeGeneration/README.md +++ b/Utilities/CodeGeneration/README.md @@ -14,12 +14,9 @@ Ed-Fi ODS software developers and implementers. ## Prerequisites To build the application the following tools are needed: -* .NET 6 SDK (https://dotnet.microsoft.com/download) +* .NET 8 SDK (https://dotnet.microsoft.com/download) * Visual Studio 2022 (https://visualstudio.microsoft.com/downloads/) ## Testing the generated artifacts against the main solution * Run `initdev` on the main solution first * run `Rebuild-Solution` or `initdev -NoCodegen` - -## Known issues -* must use Visual Studio 2022+ net6 is not compatible with Visual Studio 2019 diff --git a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Composites/EdFi.ProjectTemplates.Composites.csproj b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Composites/EdFi.ProjectTemplates.Composites.csproj index 6d12506fb0..d767b2e86b 100644 --- a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Composites/EdFi.ProjectTemplates.Composites.csproj +++ b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Composites/EdFi.ProjectTemplates.Composites.csproj @@ -66,9 +66,6 @@ 4 - - False - diff --git a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Composites/Properties/AssemblyInfo.cs b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Composites/Properties/AssemblyInfo.cs index 4770347a21..9d7a21f3e4 100644 --- a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Composites/Properties/AssemblyInfo.cs +++ b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Composites/Properties/AssemblyInfo.cs @@ -14,7 +14,7 @@ [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("Ed-Fi API Composites Project Template")] -[assembly: AssemblyCopyright("Copyright © Ed-Fi Alliance 2018")] +[assembly: AssemblyCopyright("Copyright © Ed-Fi Alliance 2024")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] diff --git a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Composites/Template_Project.csproj b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Composites/Template_Project.csproj index e774ca222f..2d942f3d36 100644 --- a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Composites/Template_Project.csproj +++ b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Composites/Template_Project.csproj @@ -1,6 +1,6 @@ - >net6.0 + net8.0 $safeprojectname$ $safeprojectname$ true diff --git a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Extensions/EdFi.ProjectTemplates.Extensions.csproj b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Extensions/EdFi.ProjectTemplates.Extensions.csproj index 0766d961c0..393e87b8a0 100644 --- a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Extensions/EdFi.ProjectTemplates.Extensions.csproj +++ b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Extensions/EdFi.ProjectTemplates.Extensions.csproj @@ -66,9 +66,6 @@ 4 - - False - diff --git a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Extensions/Properties/AssemblyInfo.cs b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Extensions/Properties/AssemblyInfo.cs index d90af4c71a..3fdebcd036 100644 --- a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Extensions/Properties/AssemblyInfo.cs +++ b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Extensions/Properties/AssemblyInfo.cs @@ -14,7 +14,7 @@ [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("Ed-Fi API Extensions Project Template")] -[assembly: AssemblyCopyright("Copyright © Ed-Fi Alliance 2018")] +[assembly: AssemblyCopyright("Copyright © Ed-Fi Alliance 2024")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] diff --git a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Extensions/Template_Project.csproj b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Extensions/Template_Project.csproj index 27a2712e3a..a62eb6f88d 100644 --- a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Extensions/Template_Project.csproj +++ b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Extensions/Template_Project.csproj @@ -1,6 +1,6 @@ - net6.0 + net8.0 $safeprojectname$ $safeprojectname$ true @@ -13,7 +13,7 @@ - + diff --git a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/EdFi.ProjectTemplates.Installer.csproj b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/EdFi.ProjectTemplates.Installer.csproj index c36ced321f..e0009725ec 100644 --- a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/EdFi.ProjectTemplates.Installer.csproj +++ b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/EdFi.ProjectTemplates.Installer.csproj @@ -53,16 +53,18 @@ - LICENSE.txt - Always - true - + LICENSE.txt + Always + true + Always true Designer + Always + extension.vsixmanifest diff --git a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/EdFi.ProjectTemplates.Installer.nuspec b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/EdFi.ProjectTemplates.Installer.nuspec new file mode 100644 index 0000000000..a1ea3b1ab6 --- /dev/null +++ b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/EdFi.ProjectTemplates.Installer.nuspec @@ -0,0 +1,19 @@ + + + + EdFi.Suite3.ProjectTemplates.Installer + 0.0.0 + Ed-Fi Alliance + Ed-Fi Alliance + $copyright$ + https://github.com/Ed-Fi-Alliance-OSS/Ed-Fi-ODS + false + EdFi.Suite3.ProjectTemplates.Installer + + LICENSE.txt + + + + + + diff --git a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/Properties/AssemblyInfo.cs b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/Properties/AssemblyInfo.cs index e4464d2713..17fc4473fb 100644 --- a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/Properties/AssemblyInfo.cs +++ b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/Properties/AssemblyInfo.cs @@ -14,7 +14,7 @@ [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("Ed-Fi Project Templates Installer")] -[assembly: AssemblyCopyright("Copyright © Ed-Fi Alliance 2018")] +[assembly: AssemblyCopyright("Copyright © Ed-Fi Alliance 2024")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] diff --git a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/Release Notes.rtf b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/Release Notes.rtf index a43df1f8a5..d0a4b1be08 100644 --- a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/Release Notes.rtf +++ b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/Release Notes.rtf @@ -3,15 +3,15 @@ {\flomajor\f31500\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fdbmajor\f31501\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} {\fhimajor\f31502\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0302020204030204}Calibri Light;}{\fbimajor\f31503\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} {\flominor\f31504\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fdbminor\f31505\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} -{\fhiminor\f31506\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}{\fbiminor\f31507\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f43\fbidi \froman\fcharset238\fprq2 Times New Roman CE;} -{\f44\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\f46\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f47\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f48\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);} -{\f49\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f50\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f51\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f63\fbidi \fmodern\fcharset238\fprq1 Courier New CE;} -{\f64\fbidi \fmodern\fcharset204\fprq1 Courier New Cyr;}{\f66\fbidi \fmodern\fcharset161\fprq1 Courier New Greek;}{\f67\fbidi \fmodern\fcharset162\fprq1 Courier New Tur;}{\f68\fbidi \fmodern\fcharset177\fprq1 Courier New (Hebrew);} -{\f69\fbidi \fmodern\fcharset178\fprq1 Courier New (Arabic);}{\f70\fbidi \fmodern\fcharset186\fprq1 Courier New Baltic;}{\f71\fbidi \fmodern\fcharset163\fprq1 Courier New (Vietnamese);}{\f383\fbidi \froman\fcharset238\fprq2 Cambria Math CE;} -{\f384\fbidi \froman\fcharset204\fprq2 Cambria Math Cyr;}{\f386\fbidi \froman\fcharset161\fprq2 Cambria Math Greek;}{\f387\fbidi \froman\fcharset162\fprq2 Cambria Math Tur;}{\f390\fbidi \froman\fcharset186\fprq2 Cambria Math Baltic;} -{\f391\fbidi \froman\fcharset163\fprq2 Cambria Math (Vietnamese);}{\f423\fbidi \fswiss\fcharset238\fprq2 Calibri Light CE;}{\f424\fbidi \fswiss\fcharset204\fprq2 Calibri Light Cyr;}{\f426\fbidi \fswiss\fcharset161\fprq2 Calibri Light Greek;} -{\f427\fbidi \fswiss\fcharset162\fprq2 Calibri Light Tur;}{\f428\fbidi \fswiss\fcharset177\fprq2 Calibri Light (Hebrew);}{\f429\fbidi \fswiss\fcharset178\fprq2 Calibri Light (Arabic);}{\f430\fbidi \fswiss\fcharset186\fprq2 Calibri Light Baltic;} -{\f431\fbidi \fswiss\fcharset163\fprq2 Calibri Light (Vietnamese);}{\flomajor\f31508\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;} +{\fhiminor\f31506\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}{\fbiminor\f31507\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f44\fbidi \froman\fcharset238\fprq2 Times New Roman CE;} +{\f45\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\f47\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f48\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f49\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);} +{\f50\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\f51\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f52\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f64\fbidi \fmodern\fcharset238\fprq1 Courier New CE;} +{\f65\fbidi \fmodern\fcharset204\fprq1 Courier New Cyr;}{\f67\fbidi \fmodern\fcharset161\fprq1 Courier New Greek;}{\f68\fbidi \fmodern\fcharset162\fprq1 Courier New Tur;}{\f69\fbidi \fmodern\fcharset177\fprq1 Courier New (Hebrew);} +{\f70\fbidi \fmodern\fcharset178\fprq1 Courier New (Arabic);}{\f71\fbidi \fmodern\fcharset186\fprq1 Courier New Baltic;}{\f72\fbidi \fmodern\fcharset163\fprq1 Courier New (Vietnamese);}{\f384\fbidi \froman\fcharset238\fprq2 Cambria Math CE;} +{\f385\fbidi \froman\fcharset204\fprq2 Cambria Math Cyr;}{\f387\fbidi \froman\fcharset161\fprq2 Cambria Math Greek;}{\f388\fbidi \froman\fcharset162\fprq2 Cambria Math Tur;}{\f391\fbidi \froman\fcharset186\fprq2 Cambria Math Baltic;} +{\f392\fbidi \froman\fcharset163\fprq2 Cambria Math (Vietnamese);}{\f424\fbidi \fswiss\fcharset238\fprq2 Calibri Light CE;}{\f425\fbidi \fswiss\fcharset204\fprq2 Calibri Light Cyr;}{\f427\fbidi \fswiss\fcharset161\fprq2 Calibri Light Greek;} +{\f428\fbidi \fswiss\fcharset162\fprq2 Calibri Light Tur;}{\f429\fbidi \fswiss\fcharset177\fprq2 Calibri Light (Hebrew);}{\f430\fbidi \fswiss\fcharset178\fprq2 Calibri Light (Arabic);}{\f431\fbidi \fswiss\fcharset186\fprq2 Calibri Light Baltic;} +{\f432\fbidi \fswiss\fcharset163\fprq2 Calibri Light (Vietnamese);}{\flomajor\f31508\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;} {\flomajor\f31511\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\flomajor\f31512\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flomajor\f31513\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);} {\flomajor\f31514\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\flomajor\f31515\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flomajor\f31516\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);} {\fdbmajor\f31518\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fdbmajor\f31519\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbmajor\f31521\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;} @@ -40,20 +40,34 @@ \fs24\lang1033\langfe1033\loch\f38\hich\af38\dbch\af31505\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 \slink15 \sqformat heading 1;}{\*\cs10 \additive \ssemihidden \sunhideused \spriority1 Default Paragraph Font;}{\* \ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\trcbpat1\trcfpat1\tblind0\tblindtype3\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\sa160\sl259\slmult1 \widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \fs22\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af31505\cgrid\langnp1033\langfenp1033 \snext11 \ssemihidden \sunhideused -Normal Table;}{\*\cs15 \additive \rtlch\fcs1 \af0\afs32 \ltrch\fcs0 \fs32\cf19\loch\f31502\hich\af31502\dbch\af31501 \sbasedon10 \slink1 \slocked \spriority9 Heading 1 Char;}}{\*\listtable{\list\listtemplateid-1848458998\listsimple{\listlevel\levelnfc23 +Normal Table;}{\*\cs15 \additive \rtlch\fcs1 \af0\afs32 \ltrch\fcs0 \fs32\cf19\loch\f31502\hich\af31502\dbch\af31501 \sbasedon10 \slink1 \slocked \spriority9 Heading 1 Char;}}{\*\listtable{\list\listtemplateid-1\listsimple{\listlevel\levelnfc23 \levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext\'01*;}{\levelnumbers;}}{\listname ;}\listid-2}}{\*\listoverridetable{\listoverride\listid-2\listoverridecount1{\lfolevel\listoverrideformat{\listlevel \levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelold\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 }}\ls1}}{\*\rsidtbl \rsid1146156\rsid1801157\rsid2231347\rsid2698768\rsid5596577\rsid5921754 -\rsid10296587\rsid10813860\rsid11340910\rsid11409481\rsid12345103\rsid12671023\rsid13576183\rsid15689838}{\mmathPr\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1\mwrapIndent1440\mintLim0\mnaryLim0}{\info -{\operator Vinaya Mayya}{\creatim\yr2020\mo10\dy21\hr10\min48}{\revtim\yr2021\mo9\dy3\hr14\min43}{\version13}{\edmins39}{\nofpages1}{\nofwords131}{\nofchars751}{\nofcharsws881}{\vern29}}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/w +\rsid7290404\rsid10296587\rsid10813860\rsid11340910\rsid11409481\rsid12345103\rsid12671023\rsid13576183\rsid15689838}{\mmathPr\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1\mwrapIndent1440\mintLim0\mnaryLim0}{\info +{\operator Vinaya Mayya}{\creatim\yr2020\mo10\dy21\hr10\min48}{\revtim\yr2024\mo7\dy2\hr4\min30}{\version14}{\edmins40}{\nofpages2}{\nofwords152}{\nofchars873}{\nofcharsws1023}{\vern99}}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/w ordml}}\paperw12240\paperh15840\margl1440\margr1440\margt1440\margb1440\gutter0\ltrsect \widowctrl\ftnbj\aenddoc\trackmoves0\trackformatting1\donotembedsysfont0\relyonvml0\donotembedlingdata1\grfdocevents0\validatexml0\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors0\horzdoc\dghspace120\dgvspace120\dghorigin1701 \dgvorigin1984\dghshow0\dgvshow3\jcompress\viewkind1\viewscale100\rsidroot11340910 \nouicompat \fet0{\*\wgrffmtfilter 2450}\nofeaturethrottle1\ilfomacatclnup0\ltrpar \sectd \ltrsect\linex0\sectdefaultcl\sftnbj {\*\pnseclvl1 \pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}}{\*\pnseclvl5 \pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang -{\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar\s1\ql \li0\ri0\sb240\sl252\slmult1\keep\keepn\widctlpar\wrapdefault\faauto\outlinelevel0\rin0\lin0\itap0\pararsid1801157 \rtlch\fcs1 -\af38\afs24\alang1025 \ltrch\fcs0 \fs24\lang1033\langfe1033\loch\af38\hich\af38\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs32 \ltrch\fcs0 \fs32\cf20\insrsid1801157 \hich\af38\dbch\af31505\loch\f38 Release 1.6.0 -\par }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid1801157 \rtlch\fcs1 \af38\afs24\alang1025 \ltrch\fcs0 \fs24\lang1033\langfe1033\loch\af38\hich\af38\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af2\afs21 -\ltrch\fcs0 \f2\fs21\insrsid1801157 +{\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar\s1\ql \li0\ri0\sb240\sl252\slmult1\keep\keepn\widctlpar\wrapdefault\faauto\outlinelevel0\rin0\lin0\itap0\pararsid7290404 \rtlch\fcs1 +\af38\afs24\alang1025 \ltrch\fcs0 \fs24\lang1033\langfe1033\loch\af38\hich\af38\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs32 \ltrch\fcs0 \fs32\cf20\insrsid7290404 \hich\af38\dbch\af31505\loch\f38 Release }{\rtlch\fcs1 \af38\afs32 +\ltrch\fcs0 \fs32\cf20\insrsid7290404 \hich\af38\dbch\af31505\loch\f38 5.4}{\rtlch\fcs1 \af38\afs32 \ltrch\fcs0 \fs32\cf20\insrsid7290404 .0 +\par }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\faauto\rin0\lin0\itap0\pararsid7290404 \rtlch\fcs1 \af38\afs24\alang1025 \ltrch\fcs0 \fs24\lang1033\langfe1033\loch\af38\hich\af38\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af2\afs21 +\ltrch\fcs0 \f2\fs21\insrsid7290404 +\par {\pntext\pard\plain\ltrpar \rtlch\fcs1 \af2\afs21 \ltrch\fcs0 \f3\fs21\insrsid7290404 \loch\af3\dbch\af31505\hich\f3 \'b7\tab}}\pard \ltrpar\ql \fi-360\li720\ri0\nowidctlpar\wrapdefault{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3 {\pntxtb \'b7}} +\faauto\ls1\rin0\lin720\itap0\pararsid7290404 {\rtlch\fcs1 \af2\afs21 \ltrch\fcs0 \f2\fs21\insrsid7290404 \hich\af2\dbch\af31505\loch\f2 Supports EdFi Data Model 3.3 +\par {\pntext\pard\plain\ltrpar \rtlch\fcs1 \af2\afs21 \ltrch\fcs0 \f3\fs21\insrsid7290404 \loch\af3\dbch\af31505\hich\f3 \'b7\tab}}\pard \ltrpar\ql \fi-360\li720\ri0\nowidctlpar\wrapdefault{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3 {\pntxtb \'b7}} +\faauto\ls1\rin0\lin720\itap0\pararsid7290404 {\rtlch\fcs1 \af2\afs21 \ltrch\fcs0 \f2\fs21\insrsid7290404 \hich\af2\dbch\af31505\loch\f2 Released in support of ODS/API v5.}{\rtlch\fcs1 \af2\afs21 \ltrch\fcs0 \f2\fs21\insrsid7290404 +\hich\af2\dbch\af31505\loch\f2 4}{\rtlch\fcs1 \af2\afs21 \ltrch\fcs0 \f2\fs21\insrsid7290404 +\par {\pntext\pard\plain\ltrpar \rtlch\fcs1 \af2\afs21 \ltrch\fcs0 \f3\fs21\insrsid7290404\charrsid12671023 \loch\af3\dbch\af31505\hich\f3 \'b7\tab}}\pard \ltrpar\ql \fi-360\li720\ri0\nowidctlpar\wrapdefault{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3 +{\pntxtb \'b7}}\faauto\ls1\rin0\lin720\itap0\pararsid7290404 {\rtlch\fcs1 \af2\afs21 \ltrch\fcs0 \f2\fs21\insrsid7290404\charrsid12671023 \hich\af2\dbch\af31505\loch\f2 Updated template projects to match latest changes in Ed-Fi ODS}{\rtlch\fcs1 +\af2\afs21 \ltrch\fcs0 \f2\fs21\insrsid7290404\charrsid7290404 +\par }\pard\plain \ltrpar\s1\ql \li0\ri0\sb240\sl252\slmult1\keep\keepn\widctlpar\wrapdefault{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\outlinelevel0\rin0\lin0\itap0\pararsid1801157 \rtlch\fcs1 \af38\afs24\alang1025 \ltrch\fcs0 +\fs24\lang1033\langfe1033\loch\af38\hich\af38\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs32 \ltrch\fcs0 \fs32\cf20\insrsid1801157 \hich\af38\dbch\af31505\loch\f38 R\hich\af38\dbch\af31505\loch\f38 elease +\hich\af38\dbch\af31505\loch\f38 1.6.0 +\par }\pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault{\*\pn \pnlvlcont\ilvl0\ls0\pnrnot0\pndec }\faauto\rin0\lin0\itap0\pararsid1801157 \rtlch\fcs1 \af38\afs24\alang1025 \ltrch\fcs0 +\fs24\lang1033\langfe1033\loch\af38\hich\af38\dbch\af31505\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af2\afs21 \ltrch\fcs0 \f2\fs21\insrsid1801157 \par {\pntext\pard\plain\ltrpar \rtlch\fcs1 \af2\afs21 \ltrch\fcs0 \f3\fs21\insrsid1801157 \loch\af3\dbch\af31505\hich\f3 \'b7\tab}}\pard \ltrpar\ql \fi-360\li720\ri0\nowidctlpar\wrapdefault{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3 {\pntxtb \'b7}} \faauto\ls1\rin0\lin720\itap0\pararsid1801157 {\rtlch\fcs1 \af2\afs21 \ltrch\fcs0 \f2\fs21\insrsid1801157 \hich\af2\dbch\af31505\loch\f2 Supports EdFi Data Model 3.3 \par {\pntext\pard\plain\ltrpar \rtlch\fcs1 \af2\afs21 \ltrch\fcs0 \f3\fs21\insrsid1801157 \loch\af3\dbch\af31505\hich\f3 \'b7\tab}}\pard \ltrpar\ql \fi-360\li720\ri0\nowidctlpar\wrapdefault{\*\pn \pnlvlblt\ilvl0\ls1\pnrnot0\pnf3 {\pntxtb \'b7}} @@ -267,8 +281,8 @@ fffffffffffffffffdfffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffff ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffffffffffff0c6ad98892f1d411a65f0040963251e5000000000000000000000000b05f -1f0afca0d701feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000 +ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffffffffffff0c6ad98892f1d411a65f0040963251e50000000000000000000000001001 +3f7762ccda01feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000 00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000 000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000 0000000000000000000000000000000000000000000000000105000000000000}} \ No newline at end of file diff --git a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/source.extension.vsixmanifest b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/source.extension.vsixmanifest index 4a31e69305..b6ee011f27 100644 --- a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/source.extension.vsixmanifest +++ b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Installer/source.extension.vsixmanifest @@ -2,9 +2,9 @@ - + Ed-Fi Alliance Project Templates - Ed-Fi Alliance API C# project templates for creating composites, profiles, and/or extensions using the 3.3 data model. + Ed-Fi Alliance API C# project templates for creating composites, profiles, and/or extensions to work with ODS/API v5.4. https://www.ed-fi.org LICENSE.txt Release Notes.rtf diff --git a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Profiles/EdFi.ProjectTemplates.Profiles.csproj b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Profiles/EdFi.ProjectTemplates.Profiles.csproj index 5e2f2232bd..0f7fcedf5b 100644 --- a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Profiles/EdFi.ProjectTemplates.Profiles.csproj +++ b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Profiles/EdFi.ProjectTemplates.Profiles.csproj @@ -66,9 +66,6 @@ 4 - - False - diff --git a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Profiles/Properties/AssemblyInfo.cs b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Profiles/Properties/AssemblyInfo.cs index e9f4dfcd7e..2d81872972 100644 --- a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Profiles/Properties/AssemblyInfo.cs +++ b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Profiles/Properties/AssemblyInfo.cs @@ -14,7 +14,7 @@ [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("Ed-Fi API Profiles Project Template")] -[assembly: AssemblyCopyright("Copyright © Ed-Fi Alliance 2018")] +[assembly: AssemblyCopyright("Copyright © Ed-Fi Alliance 2024")] [assembly: AssemblyTrademark("")] [assembly: AssemblyCulture("")] diff --git a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Profiles/Template_Project.csproj b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Profiles/Template_Project.csproj index 4513701d1d..8cc297064a 100644 --- a/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Profiles/Template_Project.csproj +++ b/Utilities/VisualStudioProjectTemplates/EdFi.ProjectTemplates.Profiles/Template_Project.csproj @@ -1,6 +1,6 @@ - net6.0 + net8.0 $safeprojectname$ $safeprojectname$ true @@ -12,7 +12,7 @@ true - + diff --git a/build.githubactions.ps1 b/build.githubactions.ps1 index 929beeb20f..ecd7e624df 100644 --- a/build.githubactions.ps1 +++ b/build.githubactions.ps1 @@ -7,7 +7,7 @@ param( # Command to execute, defaults to "Build". [string] - [ValidateSet("DotnetClean", "Build", "Test", "Pack", "Publish", "CheckoutBranch")] + [ValidateSet("DotnetClean", "Build", "Test", "Pack", "Publish", "CheckoutBranch", "InstallCredentialHandler")] $Command = "Build", [switch] $SelfContained, @@ -207,6 +207,51 @@ function CheckoutBranch { } } +function Get-IsWindows { + <# + .SYNOPSIS + Checks to see if the current machine is a Windows machine. + .EXAMPLE + Get-IsWindows returns $True + #> + if ($null -eq $IsWindows) { + # This section will only trigger when the automatic $IsWindows variable is not detected. + # Every version of PS released on Linux contains this variable so it will always exist. + # $IsWindows does not exist pre PS 6. + return $true + } + return $IsWindows +} + +function InstallCredentialHandler { + if (Get-IsWindows -and -not Get-InstalledModule | Where-Object -Property Name -eq "7Zip4Powershell") { + Install-Module -Force -Scope CurrentUser -Name 7Zip4Powershell + Write-Host "Installed 7Zip4Powershell." + } + # using WebClient is faster then Invoke-WebRequest but shows no progress + $sourceUrl = ' https://github.com/microsoft/artifacts-credprovider/releases/download/v1.0.0/Microsoft.NuGet.CredentialProvider.zip' + $fileName = 'Microsoft.NuGet.CredentialProvider.zip' + $zipFilePath = Join-Path ([IO.Path]::GetTempPath()) $fileName + Write-Host "Downloading file from $sourceUrl..." + $webClient = New-Object System.Net.WebClient + $webClient.DownloadFile($sourceUrl, $zipFilePath) + Write-Host "Download complete." + if (-not (Test-Path $zipFilePath)) { + Write-Warning "Microsoft.NuGet.CredentialProvider file '$fileName' not found." + exit 0 + } + $packageFolder = Join-Path ([IO.Path]::GetTempPath()) 'Microsoft.NuGet.CredentialProvider/' + if ($fileName.EndsWith('.zip')) { + Write-Host "Extracting $fileName..." + + if (Test-Path $zipFilePath) { Expand-Archive -Force -Path $zipFilePath -DestinationPath $packageFolder } + Copy-Item -Path $packageFolder\* -Destination "~/.nuget/" -Recurse -Force + Write-Host "Extracted to: ~\.nuget\plugins\" -ForegroundColor Green + } + +} + + function Invoke-Build { Write-Host "Building Version $version" -ForegroundColor Cyan Invoke-Step { DotnetClean } @@ -232,6 +277,9 @@ function Invoke-Pack { function Invoke-CheckoutBranch { Invoke-Step { CheckoutBranch } } +function Invoke-InstallCredentialHandler { + Invoke-Step { InstallCredentialHandler } +} Invoke-Main { switch ($Command) { @@ -241,6 +289,7 @@ Invoke-Main { Pack { Invoke-Pack } Publish { Invoke-Publish } CheckoutBranch { Invoke-CheckoutBranch } + InstallCredentialHandler { Invoke-InstallCredentialHandler } default { throw "Command '$Command' is not recognized" } } } \ No newline at end of file