-
Notifications
You must be signed in to change notification settings - Fork 103
/
Copy pathadd_packages.ps1
33 lines (28 loc) · 1 KB
/
add_packages.ps1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
param (
[Parameter(Mandatory=$false, Position=0)] [string] $DOTNET_PROJECT,
[Parameter(Mandatory=$false, Position=1)] [string] $PACKAGE_SRC
)
if ([string]::IsNullOrEmpty($DOTNET_PROJECT) -or [string]::IsNullOrEmpty($PACKAGE_SRC))
{
$Path = $MyInvocation.InvocationName
Write-Host "Missing parameters. Usage: $Path DOTNET_PROJECT PACKAGE_SRC"
Write-Host "Example: $Path myapp.csprj /mypackages"
Exit 1
}
$packages = @(
"GSF.CarbonAware"
"CarbonAware.DataSources.Json"
"CarbonAware.DataSources.WattTime"
"CarbonAware.DataSources.ElectricityMaps"
"CarbonAware.DataSources.ElectricityMapsFree"
)
# Remove packages from project
foreach ($pname in $packages) {
dotnet remove $DOTNET_PROJECT package $pname
}
Remove-Item -Recurse -Force ~/.nuget/packages/gsf.carbonaware*
Remove-Item -Recurse -Force ~/.nuget/packages/carbonaware.datasources*
# Add packages to project
foreach ($pname in $packages) {
dotnet add $DOTNET_PROJECT package $pname -s $PACKAGE_SRC --prerelease
}