forked from ravendb/ravendb
-
Notifications
You must be signed in to change notification settings - Fork 0
/
psake_ext.ps1
92 lines (79 loc) · 2.7 KB
/
psake_ext.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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
function Get-File-Exists-On-Path
{
param(
[string]$file
)
$results = ($Env:Path).Split(";") | Get-ChildItem -filter $file -erroraction silentlycontinue
$found = ($results -ne $null)
return $found
}
function Get-Git-Commit
{
if ((Get-File-Exists-On-Path "git.exe")){
$gitLog = git log --oneline -1
return $gitLog.Split(' ')[0]
}
else {
return "0000000"
}
}
function Delete-Sample-Data-For-Release
{
param([string]$sample_dir)
rd "$sample_dir\bin" -force -recurse -ErrorAction SilentlyContinue
rd "$sample_dir\obj" -force -recurse -ErrorAction SilentlyContinue
rd "$sample_dir\Servers\Shard1\Data" -force -recurse -ErrorAction SilentlyContinue
rd "$sample_dir\Servers\Shard2\Data" -force -recurse -ErrorAction SilentlyContinue
rd "$sample_dir\Servers\Shard1\Plugins" -force -recurse -ErrorAction SilentlyContinue
rd "$sample_dir\Servers\Shard2\Plugins" -force -recurse -ErrorAction SilentlyContinue
del "$sample_dir\Servers\Shard1\RavenDB.exe" -force -recurse -ErrorAction SilentlyContinue
del "$sample_dir\Servers\Shard2\RavenDB.exe" -force -recurse -ErrorAction SilentlyContinue
}
function Generate-Assembly-Info
{
param(
[string]$clsCompliant = "true",
[string]$title,
[string]$description,
[string]$company,
[string]$product,
[string]$copyright,
[string]$version,
[string]$fileVersion,
[string]$file = $(throw "file is a required parameter.")
)
$commit = Get-Git-Commit
$asmInfo = "using System;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
#if !SILVERLIGHT
[assembly: SuppressIldasmAttribute()]
[assembly: CLSCompliantAttribute($clsCompliant)]
#endif
[assembly: ComVisibleAttribute(false)]
[assembly: AssemblyTitleAttribute(""$title"")]
[assembly: AssemblyDescriptionAttribute(""$description"")]
[assembly: AssemblyCompanyAttribute(""$company"")]
[assembly: AssemblyProductAttribute(""$product"")]
[assembly: AssemblyCopyrightAttribute(""$copyright"")]
[assembly: AssemblyVersionAttribute(""$version"")]
[assembly: AssemblyInformationalVersionAttribute(""$version / $commit"")]
[assembly: AssemblyFileVersionAttribute(""$fileVersion"")]
[assembly: AssemblyDelaySignAttribute(false)]
"
$dir = [System.IO.Path]::GetDirectoryName($file)
if ([System.IO.Directory]::Exists($dir) -eq $false)
{
Write-Host "Creating directory $dir"
[System.IO.Directory]::CreateDirectory($dir)
}
Write-Host "Generating assembly info file: $file"
Write-Output $asmInfo > $file
}
function Get-DependencyPackageFiles
{
param([string]$packageName, [string]$frameworkVersion = "net40")
$fullPackageName = Get-ChildItem "$base_dir\packages\$packageName.*" | Sort-Object Name | Select-Object -First 1
Return "$fullPackageName\lib\$frameworkVersion\*"
}