dolphindeploy 0.0.2-universal-dotnet
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.markdown +9 -0
- data/TODO +18 -0
- data/external/DolphinDeploy.IIS.IIS6.dll +0 -0
- data/external/Microsoft.Web.Administration.dll +0 -0
- data/external/TinySharpZip.dll +0 -0
- data/external/adsutil.vbs +2938 -0
- data/external/xunit/HTML.xslt +117 -0
- data/external/xunit/NUnitXml.xslt +121 -0
- data/external/xunit/xunit.console.exe +0 -0
- data/external/xunit/xunit.console.exe.config +21 -0
- data/external/xunit/xunit.console.x86.exe +0 -0
- data/external/xunit/xunit.console.x86.exe.config +21 -0
- data/external/xunit/xunit.dll +0 -0
- data/external/xunit/xunit.dll.tdnet +5 -0
- data/external/xunit/xunit.extensions.dll +0 -0
- data/external/xunit/xunit.extensions.xml +706 -0
- data/external/xunit/xunit.gui.exe +0 -0
- data/external/xunit/xunit.gui.x86.exe +0 -0
- data/external/xunit/xunit.installer.exe +0 -0
- data/external/xunit/xunit.runner.msbuild.dll +0 -0
- data/external/xunit/xunit.runner.tdnet.dll +0 -0
- data/external/xunit/xunit.runner.utility.dll +0 -0
- data/external/xunit/xunit.runner.utility.xml +1048 -0
- data/external/xunit/xunit.xml +2306 -0
- data/lib/IIS/IIS.rb +23 -0
- data/lib/IIS/IIS6.rb +165 -0
- data/lib/IIS/IIS7.rb +152 -0
- data/lib/IIS/IISVersion.rb +7 -0
- data/lib/configured_as/mvc_deployment.rb +174 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.5.1.ReSharper.user +45 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/AppPoolControllerTests.cs +39 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/DolphinDeploy.IIS.IIS6.Tests.csproj +69 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/DolphinDeploy.IIS.IIS6.Tests.csproj.user +6 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/Helper.cs +18 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/Properties/AssemblyInfo.cs +36 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/WebsiteControllerTests.cs +56 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/bin/Debug/DolphinDeploy.IIS.IIS6.Tests.dll +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/bin/Debug/DolphinDeploy.IIS.IIS6.Tests.pdb +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/bin/Debug/DolphinDeploy.IIS.IIS6.dll +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/bin/Debug/DolphinDeploy.IIS.IIS6.pdb +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/bin/Debug/test_site/index.htm +9 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/bin/Debug/xunit.dll +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/bin/Debug/xunit.xml +2306 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/obj/Debug/DolphinDeploy.IIS.IIS6.Tests.csproj.FileListAbsolute.txt +12 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/obj/Debug/DolphinDeploy.IIS.IIS6.Tests.dll +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/obj/Debug/DolphinDeploy.IIS.IIS6.Tests.pdb +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/obj/Debug/ResolveAssemblyReference.cache +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.Tests/test_site/index.htm +9 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.sln +26 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.suo +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6/AppPoolController.cs +41 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6.csproj +56 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6/IIS6Manager.cs +77 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6/Properties/AssemblyInfo.cs +36 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6/WebsiteController.cs +101 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6/bin/Debug/DolphinDeploy.IIS.IIS6.dll +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6/bin/Debug/DolphinDeploy.IIS.IIS6.pdb +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6/obj/Debug/DolphinDeploy.IIS.IIS6.csproj.FileListAbsolute.txt +7 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6/obj/Debug/DolphinDeploy.IIS.IIS6.dll +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6/obj/Debug/DolphinDeploy.IIS.IIS6.pdb +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/_ReSharper.DolphinDeploy.IIS.IIS6/BuildScriptCache/1/78fc7364.dat +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/_ReSharper.DolphinDeploy.IIS.IIS6/ModuleIds.xml +4 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/_ReSharper.DolphinDeploy.IIS.IIS6/NamedArguments/5/4b9722ad.dat +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/_ReSharper.DolphinDeploy.IIS.IIS6/PdbInfo/61d4d5326252d9cd7476a391dfbbb2a47481ffa6 +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/_ReSharper.DolphinDeploy.IIS.IIS6/ProjectModel/ProjectModel.dat +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/_ReSharper.DolphinDeploy.IIS.IIS6/SymbolCache.bin +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/_ReSharper.DolphinDeploy.IIS.IIS6/TodoCache/1/78fc7364.dat +0 -0
- data/lib/csharp/DolphinDeploy.IIS.IIS6/_ReSharper.DolphinDeploy.IIS.IIS6/WordIndex/1/72ab4678.dat +0 -0
- data/lib/deploycommandcreator.rb +34 -0
- data/lib/deploymentconfig.rb +15 -0
- data/lib/directory_cleanup.rb +16 -0
- data/lib/dolphindeploy.rb +12 -0
- data/lib/dolphindeploy_rake.rb +36 -0
- data/lib/file_manager.rb +30 -0
- data/lib/unzip.rb +11 -0
- data/spec/IIS/IIS6_spec.rb +24 -0
- data/spec/IIS/IIS_spec.rb +18 -0
- data/spec/configured_as/mvc_deployment_spec.rb +108 -0
- data/spec/deploycommandcreator_spec.rb +169 -0
- data/spec/deploymentconfig_spec.rb +202 -0
- data/spec/dolphindeploy_spec.rb +13 -0
- data/spec/file_manager_spec.rb +22 -0
- data/spec/support/spec_helper.rb +17 -0
- metadata +222 -0
Binary file
|
@@ -0,0 +1,12 @@
|
|
1
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6.Tests\bin\Debug\DolphinDeploy.IIS.IIS6.Tests.Contracts.dll
|
2
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6.Tests\bin\Debug\DolphinDeploy.IIS.IIS6.Tests.Contracts.pdb
|
3
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6.Tests\bin\Debug\DolphinDeploy.IIS.IIS6.Tests.dll
|
4
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6.Tests\bin\Debug\DolphinDeploy.IIS.IIS6.Tests.pdb
|
5
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6.Tests\bin\Debug\DolphinDeploy.IIS.IIS6.dll
|
6
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6.Tests\bin\Debug\xunit.dll
|
7
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6.Tests\bin\Debug\DolphinDeploy.IIS.IIS6.pdb
|
8
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6.Tests\bin\Debug\xunit.xml
|
9
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6.Tests\obj\Debug\ResolveAssemblyReference.cache
|
10
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6.Tests\obj\Debug\DolphinDeploy.IIS.IIS6.Tests.dll
|
11
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6.Tests\obj\Debug\DolphinDeploy.IIS.IIS6.Tests.pdb
|
12
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6.Tests\bin\Debug\test_site\index.htm
|
Binary file
|
Binary file
|
Binary file
|
@@ -0,0 +1,26 @@
|
|
1
|
+
|
2
|
+
Microsoft Visual Studio Solution File, Format Version 11.00
|
3
|
+
# Visual Studio 2010
|
4
|
+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DolphinDeploy.IIS.IIS6", "DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6.csproj", "{42DA9D8E-0106-4875-896B-3B45C9EC0C01}"
|
5
|
+
EndProject
|
6
|
+
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DolphinDeploy.IIS.IIS6.Tests", "DolphinDeploy.IIS.IIS6.Tests\DolphinDeploy.IIS.IIS6.Tests.csproj", "{FBC105C7-FFE5-4991-842C-1811B2BD24ED}"
|
7
|
+
EndProject
|
8
|
+
Global
|
9
|
+
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
10
|
+
Debug|Any CPU = Debug|Any CPU
|
11
|
+
Release|Any CPU = Release|Any CPU
|
12
|
+
EndGlobalSection
|
13
|
+
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
14
|
+
{42DA9D8E-0106-4875-896B-3B45C9EC0C01}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
15
|
+
{42DA9D8E-0106-4875-896B-3B45C9EC0C01}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
16
|
+
{42DA9D8E-0106-4875-896B-3B45C9EC0C01}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
17
|
+
{42DA9D8E-0106-4875-896B-3B45C9EC0C01}.Release|Any CPU.Build.0 = Release|Any CPU
|
18
|
+
{FBC105C7-FFE5-4991-842C-1811B2BD24ED}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
19
|
+
{FBC105C7-FFE5-4991-842C-1811B2BD24ED}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
20
|
+
{FBC105C7-FFE5-4991-842C-1811B2BD24ED}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
21
|
+
{FBC105C7-FFE5-4991-842C-1811B2BD24ED}.Release|Any CPU.Build.0 = Release|Any CPU
|
22
|
+
EndGlobalSection
|
23
|
+
GlobalSection(SolutionProperties) = preSolution
|
24
|
+
HideSolutionNode = FALSE
|
25
|
+
EndGlobalSection
|
26
|
+
EndGlobal
|
Binary file
|
@@ -0,0 +1,41 @@
|
|
1
|
+
using System;
|
2
|
+
using System.DirectoryServices;
|
3
|
+
|
4
|
+
namespace DolphinDeploy.IIS.IIS6
|
5
|
+
{
|
6
|
+
public class AppPoolController : IIS6Manager
|
7
|
+
{
|
8
|
+
public void Create()
|
9
|
+
{
|
10
|
+
DirectoryEntry appPools = GetAppPoolAdmin();
|
11
|
+
DirectoryEntry appPool = appPools.Children.Add(Name, "IISApplicationPool");
|
12
|
+
appPool.CommitChanges();
|
13
|
+
|
14
|
+
SetProperties(appPool);
|
15
|
+
appPool.CommitChanges();
|
16
|
+
|
17
|
+
}
|
18
|
+
|
19
|
+
private void SetProperties(DirectoryEntry appPool)
|
20
|
+
{
|
21
|
+
appPool.Properties["AppPoolQueueLength"].Value = 4000;
|
22
|
+
appPool.Invoke("SetInfo", null);
|
23
|
+
}
|
24
|
+
|
25
|
+
public bool Exists()
|
26
|
+
{
|
27
|
+
var appPool = GetAppPool();
|
28
|
+
|
29
|
+
return appPool != null;
|
30
|
+
}
|
31
|
+
|
32
|
+
public void Delete()
|
33
|
+
{
|
34
|
+
if (Exists())
|
35
|
+
{
|
36
|
+
var appPool = GetAppPool();
|
37
|
+
appPool.DeleteTree();
|
38
|
+
}
|
39
|
+
}
|
40
|
+
}
|
41
|
+
}
|
@@ -0,0 +1,56 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
3
|
+
<PropertyGroup>
|
4
|
+
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
5
|
+
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
6
|
+
<ProductVersion>8.0.30703</ProductVersion>
|
7
|
+
<SchemaVersion>2.0</SchemaVersion>
|
8
|
+
<ProjectGuid>{42DA9D8E-0106-4875-896B-3B45C9EC0C01}</ProjectGuid>
|
9
|
+
<OutputType>Library</OutputType>
|
10
|
+
<AppDesignerFolder>Properties</AppDesignerFolder>
|
11
|
+
<RootNamespace>DolphinDeploy.IIS.IIS6</RootNamespace>
|
12
|
+
<AssemblyName>DolphinDeploy.IIS.IIS6</AssemblyName>
|
13
|
+
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
|
14
|
+
<FileAlignment>512</FileAlignment>
|
15
|
+
</PropertyGroup>
|
16
|
+
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
17
|
+
<DebugSymbols>true</DebugSymbols>
|
18
|
+
<DebugType>full</DebugType>
|
19
|
+
<Optimize>false</Optimize>
|
20
|
+
<OutputPath>bin\Debug\</OutputPath>
|
21
|
+
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
22
|
+
<ErrorReport>prompt</ErrorReport>
|
23
|
+
<WarningLevel>4</WarningLevel>
|
24
|
+
</PropertyGroup>
|
25
|
+
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
26
|
+
<DebugType>pdbonly</DebugType>
|
27
|
+
<Optimize>true</Optimize>
|
28
|
+
<OutputPath>bin\Release\</OutputPath>
|
29
|
+
<DefineConstants>TRACE</DefineConstants>
|
30
|
+
<ErrorReport>prompt</ErrorReport>
|
31
|
+
<WarningLevel>4</WarningLevel>
|
32
|
+
</PropertyGroup>
|
33
|
+
<ItemGroup>
|
34
|
+
<Reference Include="System" />
|
35
|
+
<Reference Include="System.Core" />
|
36
|
+
<Reference Include="System.DirectoryServices" />
|
37
|
+
<Reference Include="System.Xml.Linq" />
|
38
|
+
<Reference Include="System.Data.DataSetExtensions" />
|
39
|
+
<Reference Include="System.Data" />
|
40
|
+
<Reference Include="System.Xml" />
|
41
|
+
</ItemGroup>
|
42
|
+
<ItemGroup>
|
43
|
+
<Compile Include="AppPoolController.cs" />
|
44
|
+
<Compile Include="IIS6Manager.cs" />
|
45
|
+
<Compile Include="Properties\AssemblyInfo.cs" />
|
46
|
+
<Compile Include="WebsiteController.cs" />
|
47
|
+
</ItemGroup>
|
48
|
+
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
49
|
+
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
|
50
|
+
Other similar extension points exist, see Microsoft.Common.targets.
|
51
|
+
<Target Name="BeforeBuild">
|
52
|
+
</Target>
|
53
|
+
<Target Name="AfterBuild">
|
54
|
+
</Target>
|
55
|
+
-->
|
56
|
+
</Project>
|
@@ -0,0 +1,77 @@
|
|
1
|
+
using System;
|
2
|
+
using System.DirectoryServices;
|
3
|
+
|
4
|
+
namespace DolphinDeploy.IIS.IIS6
|
5
|
+
{
|
6
|
+
public class IIS6Manager
|
7
|
+
{
|
8
|
+
public string Server { get; set; }
|
9
|
+
public string Name { get; set; }
|
10
|
+
public string HomeDirectory { get; set; }
|
11
|
+
|
12
|
+
public DirectoryEntry GetWebsite()
|
13
|
+
{
|
14
|
+
DirectoryEntry admin = GetIISAdmin();
|
15
|
+
|
16
|
+
foreach (DirectoryEntry site in admin.Children)
|
17
|
+
{
|
18
|
+
PropertyValueCollection serverComment = site.Properties["ServerComment"];
|
19
|
+
if (serverComment == null)
|
20
|
+
continue;
|
21
|
+
|
22
|
+
if (serverComment.Value == null || string.IsNullOrEmpty(serverComment.Value.ToString()))
|
23
|
+
continue;
|
24
|
+
|
25
|
+
if (string.Compare(serverComment.Value.ToString(), Name, false) == 0)
|
26
|
+
{
|
27
|
+
return site;
|
28
|
+
}
|
29
|
+
}
|
30
|
+
|
31
|
+
return null;
|
32
|
+
}
|
33
|
+
|
34
|
+
public DirectoryEntry GetAppPool()
|
35
|
+
{
|
36
|
+
DirectoryEntry appPools = GetAppPoolAdmin();
|
37
|
+
foreach (DirectoryEntry appPool in appPools.Children)
|
38
|
+
{
|
39
|
+
if (Name.Equals(appPool.Name, StringComparison.OrdinalIgnoreCase))
|
40
|
+
{
|
41
|
+
return appPool;
|
42
|
+
}
|
43
|
+
}
|
44
|
+
|
45
|
+
return null;
|
46
|
+
}
|
47
|
+
|
48
|
+
public DirectoryEntry GetIISAdmin()
|
49
|
+
{
|
50
|
+
return new DirectoryEntry(string.Format("IIS://{0}/w3svc", Server));
|
51
|
+
}
|
52
|
+
|
53
|
+
public DirectoryEntry GetAppPoolAdmin()
|
54
|
+
{
|
55
|
+
return new DirectoryEntry(string.Format("IIS://{0}/w3svc/AppPools", Server));
|
56
|
+
}
|
57
|
+
|
58
|
+
public void DumpIISInfo(DirectoryEntry entry)
|
59
|
+
{
|
60
|
+
if (entry == null) entry = new DirectoryEntry("IIS://localhost/w3svc");
|
61
|
+
|
62
|
+
foreach (DirectoryEntry childEntry in entry.Children)
|
63
|
+
{
|
64
|
+
using (childEntry)
|
65
|
+
{
|
66
|
+
Console.WriteLine(string.Format("Child name [{0}]", childEntry.Name));
|
67
|
+
foreach (PropertyValueCollection property in childEntry.Properties)
|
68
|
+
{
|
69
|
+
Console.WriteLine(string.Format("[{0}] [{1}] [{2}]", childEntry.Name, property.PropertyName, property.Value));
|
70
|
+
}
|
71
|
+
|
72
|
+
DumpIISInfo(childEntry);
|
73
|
+
}
|
74
|
+
}
|
75
|
+
}
|
76
|
+
}
|
77
|
+
}
|
@@ -0,0 +1,36 @@
|
|
1
|
+
using System.Reflection;
|
2
|
+
using System.Runtime.CompilerServices;
|
3
|
+
using System.Runtime.InteropServices;
|
4
|
+
|
5
|
+
// General Information about an assembly is controlled through the following
|
6
|
+
// set of attributes. Change these attribute values to modify the information
|
7
|
+
// associated with an assembly.
|
8
|
+
[assembly: AssemblyTitle("DolphinDeploy.IIS.IIS6")]
|
9
|
+
[assembly: AssemblyDescription("")]
|
10
|
+
[assembly: AssemblyConfiguration("")]
|
11
|
+
[assembly: AssemblyCompany("")]
|
12
|
+
[assembly: AssemblyProduct("DolphinDeploy.IIS.IIS6")]
|
13
|
+
[assembly: AssemblyCopyright("Copyright © 2010")]
|
14
|
+
[assembly: AssemblyTrademark("")]
|
15
|
+
[assembly: AssemblyCulture("")]
|
16
|
+
|
17
|
+
// Setting ComVisible to false makes the types in this assembly not visible
|
18
|
+
// to COM components. If you need to access a type in this assembly from
|
19
|
+
// COM, set the ComVisible attribute to true on that type.
|
20
|
+
[assembly: ComVisible(false)]
|
21
|
+
|
22
|
+
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
23
|
+
[assembly: Guid("1754ad96-181b-4eab-b97d-bb0d74f51132")]
|
24
|
+
|
25
|
+
// Version information for an assembly consists of the following four values:
|
26
|
+
//
|
27
|
+
// Major Version
|
28
|
+
// Minor Version
|
29
|
+
// Build Number
|
30
|
+
// Revision
|
31
|
+
//
|
32
|
+
// You can specify all the values or you can default the Build and Revision Numbers
|
33
|
+
// by using the '*' as shown below:
|
34
|
+
// [assembly: AssemblyVersion("1.0.*")]
|
35
|
+
[assembly: AssemblyVersion("1.0.0.0")]
|
36
|
+
[assembly: AssemblyFileVersion("1.0.0.0")]
|
@@ -0,0 +1,101 @@
|
|
1
|
+
using System;
|
2
|
+
using System.DirectoryServices;
|
3
|
+
|
4
|
+
namespace DolphinDeploy.IIS.IIS6
|
5
|
+
{
|
6
|
+
public class WebsiteController : IIS6Manager
|
7
|
+
{
|
8
|
+
public string AppPool { get; set; }
|
9
|
+
public string HostHeader { get; set; }
|
10
|
+
public string IpAddress { get; set; }
|
11
|
+
public int Port { get; set; }
|
12
|
+
|
13
|
+
public int Create()
|
14
|
+
{
|
15
|
+
try
|
16
|
+
{
|
17
|
+
int websiteId = CreateWebsite(GetIISSiteEntryName());
|
18
|
+
|
19
|
+
var website = GetWebsite();
|
20
|
+
|
21
|
+
SetProperties(website);
|
22
|
+
|
23
|
+
return websiteId;
|
24
|
+
}
|
25
|
+
catch (Exception)
|
26
|
+
{
|
27
|
+
return -1;
|
28
|
+
}
|
29
|
+
}
|
30
|
+
|
31
|
+
public void Start()
|
32
|
+
{
|
33
|
+
DirectoryEntry website = GetWebsite();
|
34
|
+
website.Invoke("Start", null);
|
35
|
+
}
|
36
|
+
|
37
|
+
public bool Exists()
|
38
|
+
{
|
39
|
+
var website = GetWebsite();
|
40
|
+
return website != null;
|
41
|
+
}
|
42
|
+
|
43
|
+
public void Delete()
|
44
|
+
{
|
45
|
+
if (Exists())
|
46
|
+
{
|
47
|
+
var website = GetWebsite();
|
48
|
+
website.DeleteTree();
|
49
|
+
}
|
50
|
+
}
|
51
|
+
|
52
|
+
private void SetProperties(DirectoryEntry website)
|
53
|
+
{
|
54
|
+
SetSecurity(website);
|
55
|
+
SetFriendlyName(website);
|
56
|
+
SetASPnetVersion(website);
|
57
|
+
}
|
58
|
+
|
59
|
+
private int CreateWebsite(object[] newsite)
|
60
|
+
{
|
61
|
+
DirectoryEntry admin = GetIISAdmin();
|
62
|
+
int websiteId = (int)admin.Invoke("CreateNewSite", newsite);
|
63
|
+
admin.CommitChanges();
|
64
|
+
return websiteId;
|
65
|
+
}
|
66
|
+
|
67
|
+
private void SetSecurity(DirectoryEntry website)
|
68
|
+
{
|
69
|
+
website.Properties["AppPoolId"][0] = AppPool;
|
70
|
+
website.Properties["AccessFlags"][0] = 512;
|
71
|
+
website.Properties["AccessRead"][0] = true;
|
72
|
+
website.Properties["AuthFlags"][0] = 5;
|
73
|
+
website.CommitChanges();
|
74
|
+
}
|
75
|
+
|
76
|
+
private void SetFriendlyName(DirectoryEntry website)
|
77
|
+
{
|
78
|
+
website.Properties["AppFriendlyName"][0] = website.Name;
|
79
|
+
website.CommitChanges();
|
80
|
+
}
|
81
|
+
|
82
|
+
private void SetASPnetVersion(DirectoryEntry website)
|
83
|
+
{
|
84
|
+
// upgrade Scriptmap to 2.0.50272 (ASP.NET version)
|
85
|
+
for (int prop = 0; prop < website.Properties["ScriptMaps"].Count; prop++)
|
86
|
+
{
|
87
|
+
website.Properties["ScriptMaps"][prop] = website.Properties["ScriptMaps"][prop].ToString().Replace("v1.1.4322", "v2.0.50727");
|
88
|
+
}
|
89
|
+
|
90
|
+
website.CommitChanges();
|
91
|
+
}
|
92
|
+
|
93
|
+
private object[] GetIISSiteEntryName()
|
94
|
+
{
|
95
|
+
if (string.IsNullOrEmpty(IpAddress))
|
96
|
+
IpAddress = "*";
|
97
|
+
|
98
|
+
return new object[] { Name, new object[] { string.Format("{0}:{1}:{2}", IpAddress, Port, HostHeader) }, HomeDirectory };
|
99
|
+
}
|
100
|
+
}
|
101
|
+
}
|
data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6/bin/Debug/DolphinDeploy.IIS.IIS6.dll
ADDED
Binary file
|
data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6/bin/Debug/DolphinDeploy.IIS.IIS6.pdb
ADDED
Binary file
|
Binary file
|
@@ -0,0 +1,7 @@
|
|
1
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6\bin\Debug\DolphinDeploy.IIS.IIS6.Contracts.dll
|
2
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6\bin\Debug\DolphinDeploy.IIS.IIS6.Contracts.pdb
|
3
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6\bin\Debug\DolphinDeploy.IIS.IIS6.dll
|
4
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6\bin\Debug\DolphinDeploy.IIS.IIS6.pdb
|
5
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6\obj\Debug\ResolveAssemblyReference.cache
|
6
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6\obj\Debug\DolphinDeploy.IIS.IIS6.dll
|
7
|
+
D:\SourceControl\DolphinDeploy\lib\csharp\DolphinDeploy.IIS.IIS6\DolphinDeploy.IIS.IIS6\obj\Debug\DolphinDeploy.IIS.IIS6.pdb
|
data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6/obj/Debug/DolphinDeploy.IIS.IIS6.dll
ADDED
Binary file
|
data/lib/csharp/DolphinDeploy.IIS.IIS6/DolphinDeploy.IIS.IIS6/obj/Debug/DolphinDeploy.IIS.IIS6.pdb
ADDED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/lib/csharp/DolphinDeploy.IIS.IIS6/_ReSharper.DolphinDeploy.IIS.IIS6/TodoCache/1/78fc7364.dat
ADDED
Binary file
|
data/lib/csharp/DolphinDeploy.IIS.IIS6/_ReSharper.DolphinDeploy.IIS.IIS6/WordIndex/1/72ab4678.dat
ADDED
Binary file
|
@@ -0,0 +1,34 @@
|
|
1
|
+
require 'mvc_deployment'
|
2
|
+
|
3
|
+
class DeployCommandCreator
|
4
|
+
def convert_from_config(config, environment_being_deployed)
|
5
|
+
deploy_config = create_object(config)
|
6
|
+
|
7
|
+
populate_object_from_config(deploy_config, config.environment, environment_being_deployed)
|
8
|
+
|
9
|
+
return deploy_config
|
10
|
+
end
|
11
|
+
|
12
|
+
private
|
13
|
+
def create_object(config)
|
14
|
+
cls_name = config.environment.configured_as
|
15
|
+
# raise if cls_name.nil?
|
16
|
+
Kernel.const_get(cls_name.to_s.capitalize + "Deployment").new
|
17
|
+
end
|
18
|
+
|
19
|
+
def populate_object_from_config(obj, environments, environment_being_deployed)
|
20
|
+
obj.set_environment(environment_being_deployed)
|
21
|
+
obj.set_description(environments.desc) if environments.has_key? :desc
|
22
|
+
|
23
|
+
env = environments[environment_being_deployed]
|
24
|
+
env.keys.each do |k|
|
25
|
+
call_method(obj, k, env[k])
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
29
|
+
|
30
|
+
def call_method(obj, name, param)
|
31
|
+
method_name = "set_" + name.to_s
|
32
|
+
obj.send(method_name.to_sym, param)
|
33
|
+
end
|
34
|
+
end
|