Feedback from Code Review Process
Change-Id: I8a7ab3ff699a688ea3fae25a4e26a8128f797d89
This commit is contained in:
parent
53dc8b3bf9
commit
5804f93350
1
.gitignore
vendored
1
.gitignore
vendored
@ -106,6 +106,7 @@ publish/
|
||||
# NuGet Packages Directory
|
||||
## TODO: If you have NuGet Package Restore enabled, uncomment the next line
|
||||
packages/
|
||||
*.nupkg
|
||||
|
||||
# Windows Azure Build Output
|
||||
csx
|
||||
|
@ -7,8 +7,8 @@
|
||||
<ProjectGuid>{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>HP.Openstack.Client.Powershell</RootNamespace>
|
||||
<AssemblyName>HP.Openstack.Client.Powershell</AssemblyName>
|
||||
<RootNamespace>AcmeInc.Openstack.Client.Powershell</RootNamespace>
|
||||
<AssemblyName>AcmeInc.Openstack.Client.Powershell</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
|
||||
@ -18,7 +18,7 @@
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>..\..\..\..\..\Documents\WindowsPowerShell\Modules\Openstack\HP\</OutputPath>
|
||||
<OutputPath>..\..\..\..\Documents\WindowsPowerShell\Modules\AcmeInc\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
@ -34,7 +34,7 @@
|
||||
<ItemGroup>
|
||||
<Reference Include="Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\packages\Newtonsoft.Json.6.0.2\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
<HintPath>..\packages\Newtonsoft.Json.6.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="OpenStack, Version=0.9.1.0, Culture=neutral, PublicKeyToken=baf191d8aca7391c, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
@ -61,15 +61,17 @@
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Cmdlets\HelloHPCmdlet.cs" />
|
||||
<Compile Include="Cmdlets\HelloAcmeIncCmdlet.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Utility\HPRegistrationManager.cs" />
|
||||
<Compile Include="Utility\AcmeRegistrationManager.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
<None Include="Deployment\HP.psd1">
|
||||
<None Include="Deployment\AcmeInc.nuspec" />
|
||||
<None Include="Deployment\AcmeInc.psd1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Deployment\tools\chocolateyInstall.ps1" />
|
||||
<None Include="packages.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
@ -78,10 +80,16 @@
|
||||
<Name>Openstack.Client.Powershell</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="Deployment\ServiceProvider.xml">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Content>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition="Exists('$(SolutionDir)\.nuget\NuGet.targets')" />
|
||||
<PropertyGroup>
|
||||
<PostBuildEvent>copy .\Deployment\HP.psd1 C:\Users\tplummer\Documents\WindowsPowerShell\Modules\Openstack\HP</PostBuildEvent>
|
||||
<PostBuildEvent>md %25USERPROFILE%25\Documents\WindowsPowerShell\Modules\AcmeInc
|
||||
copy .\Deployment\AcmeInc.psd1 %25USERPROFILE%25\Documents\WindowsPowerShell\Modules\AcmeInc</PostBuildEvent>
|
||||
</PropertyGroup>
|
||||
<Import Project="..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets" Condition="Exists('..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets')" />
|
||||
<Target Name="EnsureBclBuildImported" BeforeTargets="BeforeBuild" Condition="'$(BclBuildImported)' == ''">
|
@ -16,12 +16,11 @@
|
||||
using System;
|
||||
using System.Management.Automation;
|
||||
|
||||
|
||||
namespace HP.Client.Powershell.Cmdlets
|
||||
namespace AcmeInc.Client.Powershell.Cmdlets
|
||||
{
|
||||
[Cmdlet("Hello", "HP", SupportsShouldProcess = true)]
|
||||
[Cmdlet("Hello", "AcmeInc", SupportsShouldProcess = true)]
|
||||
//[RequiredServiceIdentifierAttribute(OpenStack.Objects.Domain.Admin.Services.ObjectStorage)]
|
||||
public class HelloHPCmdlet : PSCmdlet
|
||||
public class HelloAcmeIncCmdlet : PSCmdlet
|
||||
{
|
||||
|
||||
//=========================================================================================
|
||||
@ -31,7 +30,7 @@ namespace HP.Client.Powershell.Cmdlets
|
||||
//=========================================================================================
|
||||
protected override void ProcessRecord()
|
||||
{
|
||||
Console.WriteLine("Hello World, from HP");
|
||||
Console.WriteLine("Hello World, from AcmeInc");
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,22 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Do not remove this test for UTF-8: if “Ω” doesn’t appear as greek uppercase omega letter enclosed in quotation marks, you should use an editor that supports UTF-8, not this one. -->
|
||||
<package>
|
||||
<metadata>
|
||||
<id>acme-cli-powershell</id>
|
||||
<title>acme-cli-powershell</title>
|
||||
<version>2.0.0</version>
|
||||
<authors>L.Jenkins</authors>
|
||||
<owners>Example Inc</owners>
|
||||
<summary>Thid package allows Users to manage their Openstack environments from the Powershell command line.</summary>
|
||||
<description>Thid package allows Users to manage their Openstack environments from the Powershell command line.</description>
|
||||
<tags>Acme OpenStack Powershell CLI Windows</tags>
|
||||
<copyright>2014</copyright>
|
||||
<licenseUrl>http://www.apache.org/licenses/LICENSE-2.0</licenseUrl>
|
||||
<requireLicenseAcceptance>false</requireLicenseAcceptance>
|
||||
<!--<iconUrl>https://raw.github.com/__CHOCO_PKG_OWNER_REPO__/master/__NAME__/__NAME__.png</iconUrl>-->
|
||||
<releaseNotes>This first release demonstrates the Mutli-Vendor functionality as well as a Read-onoly version of the ObjectStorage Provider.</releaseNotes>
|
||||
</metadata>
|
||||
<files>
|
||||
<file src="tools\**" target="tools" />
|
||||
</files>
|
||||
</package>
|
@ -1,9 +1,9 @@
|
||||
@{
|
||||
ModuleToProcess = 'Rackspace.OpenStack.Client.Powershell.dll'
|
||||
ModuleToProcess = 'AcmeInc.OpenStack.Client.Powershell.dll'
|
||||
GUID="{847a28a4-6407-4aa6-8070-a4a51396db70}"
|
||||
Author="Sam"
|
||||
CompanyName="Rackspace Corporation"
|
||||
Copyright="© Rackspace. All rights reserved."
|
||||
Author="Lateralus"
|
||||
CompanyName="Acme Corporation"
|
||||
Copyright="DoJuJitsu"
|
||||
ModuleVersion="1.0.0.0"
|
||||
PowerShellVersion="2.0"
|
||||
CLRVersion="4.0.30319"
|
@ -0,0 +1,16 @@
|
||||
<ServiceProvider name="AcmeInc" isDefault="false">
|
||||
<add key="AuthenticationServiceURI" value="https://region-a.geo-1.identity.hpcloudsvc.com:35357/v2.0/" displayName="Authentication Service URI" helpText ="" isMandatory="True"/>
|
||||
<add key="Username" value="" displayName="User name" helpText ="" isMandatory="True"/>
|
||||
<add key="Password" value="" displayName="Password" helpText ="" isMandatory="True" />
|
||||
<add key="DefaultTenantId" value="" displayName="Default Tenant Id" helpText ="" isMandatory="True"/>
|
||||
<AvailabilityZones>
|
||||
<AvailabilityZone id="1" isDefault="True" name="Acmeregion-a.geo-1" shellForegroundColor="Green" />
|
||||
<AvailabilityZone id="2" isDefault="False" name="Acmeregion-b.geo-1" shellForegroundColor="Green" />
|
||||
</AvailabilityZones>
|
||||
<ServiceMaps>
|
||||
<ServiceMap source="ObjectStorage" target="Object Storage"/>
|
||||
<ServiceMap source="ImageManagement" target="Image Management"/>
|
||||
<ServiceMap source="BlockStorage" target="Block Storage"/>
|
||||
<ServiceMap source="Compute" target="Compute"/>
|
||||
</ServiceMaps>
|
||||
</ServiceProvider>
|
Binary file not shown.
@ -0,0 +1,38 @@
|
||||
|
||||
# Install the Extensions Package...
|
||||
|
||||
$packageName = 'acme-cli-powershell'
|
||||
$installerType = 'msi'
|
||||
$url = $env:USERPROFILE + '\Source\Builds\AcmeInc.Openstack.Deployment.msi'
|
||||
$silentArgs = '/quiet'
|
||||
$validExitCodes = @(0)
|
||||
|
||||
Install-ChocolateyPackage "$packageName" "$installerType" "$silentArgs" "$url" -validExitCodes $validExitCodes
|
||||
|
||||
try
|
||||
{
|
||||
# Add the extensions location to PSModulePath for easy loading later on..
|
||||
|
||||
$p = [Environment]::GetEnvironmentVariable("PSModulePath")
|
||||
$p += ";" + $env:USERPROFILE + "\Documents\WindowsPowerShell\Modules\AcmeInc"
|
||||
[Environment]::SetEnvironmentVariable("PSModulePath", $p)
|
||||
|
||||
# Import our Openstack.Client.Powershell assembly. This has the ConfigurationMAnager type which lets you
|
||||
# register your Service Provider information.
|
||||
|
||||
$configManagerAsmPath = $env:USERPROFILE + "\Documents\WindowsPowerShell\Modules\Openstack-core\Openstack.Client.Powershell.dll"
|
||||
add-type -Path ($configManagerAsmPath)
|
||||
|
||||
# Register the Service Provider. This requires the Extension Author to have a ServiceProvider.xml definition file in the
|
||||
# Deployment Folder.
|
||||
|
||||
$serviceProviderPath = $env:USERPROFILE + "\Documents\WindowsPowerShell\Modules\AcmeInc\Deployment\ServiceProvider.xml"
|
||||
$manager = New-Object -TypeName OpenStack.Client.Powershell.Utility.ConfigurationManager
|
||||
$manager.WriteServiceProvider($serviceProviderPath)
|
||||
Write-ChocolateySuccess "$packageName"
|
||||
}
|
||||
catch
|
||||
{
|
||||
Write-ChocolateyFailure "$packageName" "$($_.Exception.Message)"
|
||||
throw
|
||||
}
|
@ -5,11 +5,11 @@ using System.Runtime.InteropServices;
|
||||
// General Information about an assembly is controlled through the following
|
||||
// set of attributes. Change these attribute values to modify the information
|
||||
// associated with an assembly.
|
||||
[assembly: AssemblyTitle("HP.OpenStack.Client.Powershell")]
|
||||
[assembly: AssemblyTitle("AcmeInc.OpenStack.Client.Powershell")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("HP.OpenStack.Client.Powershell")]
|
||||
[assembly: AssemblyProduct("AcmeInc.OpenStack.Client.Powershell")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2014")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
@ -1,17 +1,12 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Security;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Openstack.Client.Powershell.Utility;
|
||||
using OpenStack.Client.Powershell.Utility;
|
||||
using OpenStack.Identity;
|
||||
|
||||
namespace HP.OpenStack.Client.Powershell.Utility
|
||||
namespace AcmeInc.OpenStack.Client.Powershell.Utility
|
||||
{
|
||||
[ServiceProviderAttribute("HP")]
|
||||
public class HPRegistrationManager : RegistrationManager
|
||||
[ServiceProviderAttribute("AcmeInc")]
|
||||
public class AcmeRegistrationManager : RegistrationManager
|
||||
{
|
||||
public override RegistrationResponse Register(ServiceProvider serviceProvider)
|
||||
{
|
||||
@ -25,13 +20,5 @@ namespace HP.OpenStack.Client.Powershell.Utility
|
||||
IOpenStackCredential credential = new OpenStackCredential(new Uri (authenticationEndpoint), userName, password, tenantId);
|
||||
return new RegistrationResponse(credential, serviceProvider);
|
||||
}
|
||||
|
||||
private SecureString GetSecureString(string password)
|
||||
{
|
||||
SecureString securePassword = new SecureString();
|
||||
password.ToCharArray().ToList().ForEach(securePassword.AppendChar);
|
||||
return SecureStringHelper.ConvertToSecureString(password);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
11
AcmeInc.Openstack.Client.Powershell/app.config
Normal file
11
AcmeInc.Openstack.Client.Powershell/app.config
Normal file
@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
@ -3,7 +3,7 @@
|
||||
<package id="Microsoft.Bcl" version="1.1.9" targetFramework="net45" />
|
||||
<package id="Microsoft.Bcl.Build" version="1.0.14" targetFramework="net45" />
|
||||
<package id="Microsoft.Net.Http" version="2.2.22" targetFramework="net45" />
|
||||
<package id="Newtonsoft.Json" version="6.0.2" targetFramework="net45" />
|
||||
<package id="Newtonsoft.Json" version="6.0.3" targetFramework="net45" />
|
||||
<package id="OpenStack-SDK-DotNet" version="0.9.1.0" targetFramework="net45" />
|
||||
<package id="System.Management.Automation" version="6.1.7601.17515" targetFramework="net45" />
|
||||
</packages>
|
@ -0,0 +1,20 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "AcmeInc.Openstack.Deployment", "AcmeInc.Openstack.Deployment\AcmeInc.Openstack.Deployment.vdproj", "{D2DB9636-72E1-47E2-98E8-E23AFD996109}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Default = Debug|Default
|
||||
Release|Default = Release|Default
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{D2DB9636-72E1-47E2-98E8-E23AFD996109}.Debug|Default.ActiveCfg = Debug
|
||||
{D2DB9636-72E1-47E2-98E8-E23AFD996109}.Debug|Default.Build.0 = Debug
|
||||
{D2DB9636-72E1-47E2-98E8-E23AFD996109}.Release|Default.ActiveCfg = Release
|
||||
{D2DB9636-72E1-47E2-98E8-E23AFD996109}.Release|Default.Build.0 = Release
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
File diff suppressed because it is too large
Load Diff
@ -1,81 +0,0 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2013
|
||||
VisualStudioVersion = 12.0.21005.1
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Openstack.Client.Powershell", "Openstack.Client.Powershell\Openstack.Client.Powershell.csproj", "{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".nuget", ".nuget", "{D4A8C690-E5E7-428B-A57C-884680BC3AF5}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
.nuget\NuGet.Config = .nuget\NuGet.Config
|
||||
.nuget\NuGet.exe = .nuget\NuGet.exe
|
||||
.nuget\NuGet.targets = .nuget\NuGet.targets
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HP.Openstack.Client.Powershell", "HP.Openstack.Client.Powershell\HP.Openstack.Client.Powershell.csproj", "{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Rackspace.Openstack.Client.Powershell", "Rackspace.Client.Powershell\Rackspace.Openstack.Client.Powershell.csproj", "{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Debug|Mixed Platforms = Debug|Mixed Platforms
|
||||
Debug|x86 = Debug|x86
|
||||
Release|Any CPU = Release|Any CPU
|
||||
Release|Mixed Platforms = Release|Mixed Platforms
|
||||
Release|x86 = Release|x86
|
||||
TransformTool Build|Any CPU = TransformTool Build|Any CPU
|
||||
TransformTool Build|Mixed Platforms = TransformTool Build|Mixed Platforms
|
||||
TransformTool Build|x86 = TransformTool Build|x86
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.TransformTool Build|Any CPU.ActiveCfg = TransformTool Build|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.TransformTool Build|Any CPU.Build.0 = TransformTool Build|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.TransformTool Build|Mixed Platforms.ActiveCfg = TransformTool Build|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.TransformTool Build|Mixed Platforms.Build.0 = TransformTool Build|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.TransformTool Build|x86.ActiveCfg = TransformTool Build|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.TransformTool Build|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.TransformTool Build|Any CPU.Build.0 = Release|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.TransformTool Build|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.TransformTool Build|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.TransformTool Build|x86.ActiveCfg = Release|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.Debug|x86.ActiveCfg = Debug|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.Release|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.Release|x86.ActiveCfg = Release|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.TransformTool Build|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.TransformTool Build|Any CPU.Build.0 = Release|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.TransformTool Build|Mixed Platforms.ActiveCfg = Release|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.TransformTool Build|Mixed Platforms.Build.0 = Release|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.TransformTool Build|x86.ActiveCfg = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
@ -0,0 +1,20 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "Openstack.Client.Powershell.Deployment", "Openstack.Client.Powershell.Deployment\Openstack.Client.Powershell.Deployment.vdproj", "{ED796A88-B8B7-49FC-9B16-2FD43492DADB}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Default = Debug|Default
|
||||
Release|Default = Release|Default
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{ED796A88-B8B7-49FC-9B16-2FD43492DADB}.Debug|Default.ActiveCfg = Debug
|
||||
{ED796A88-B8B7-49FC-9B16-2FD43492DADB}.Debug|Default.Build.0 = Debug
|
||||
{ED796A88-B8B7-49FC-9B16-2FD43492DADB}.Release|Default.ActiveCfg = Release
|
||||
{ED796A88-B8B7-49FC-9B16-2FD43492DADB}.Release|Default.Build.0 = Release
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
File diff suppressed because it is too large
Load Diff
6
Openstack.Client.Powershell/.nuget/NuGet.Config
Normal file
6
Openstack.Client.Powershell/.nuget/NuGet.Config
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<solution>
|
||||
<add key="disableSourceControlIntegration" value="true" />
|
||||
</solution>
|
||||
</configuration>
|
BIN
Openstack.Client.Powershell/.nuget/NuGet.exe
Normal file
BIN
Openstack.Client.Powershell/.nuget/NuGet.exe
Normal file
Binary file not shown.
144
Openstack.Client.Powershell/.nuget/NuGet.targets
Normal file
144
Openstack.Client.Powershell/.nuget/NuGet.targets
Normal file
@ -0,0 +1,144 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">$(MSBuildProjectDirectory)\..\</SolutionDir>
|
||||
|
||||
<!-- Enable the restore command to run before builds -->
|
||||
<RestorePackages Condition=" '$(RestorePackages)' == '' ">false</RestorePackages>
|
||||
|
||||
<!-- Property that enables building a package from a project -->
|
||||
<BuildPackage Condition=" '$(BuildPackage)' == '' ">false</BuildPackage>
|
||||
|
||||
<!-- Determines if package restore consent is required to restore packages -->
|
||||
<RequireRestoreConsent Condition=" '$(RequireRestoreConsent)' != 'false' ">true</RequireRestoreConsent>
|
||||
|
||||
<!-- Download NuGet.exe if it does not already exist -->
|
||||
<DownloadNuGetExe Condition=" '$(DownloadNuGetExe)' == '' ">false</DownloadNuGetExe>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup Condition=" '$(PackageSources)' == '' ">
|
||||
<!-- Package sources used to restore packages. By default, registered sources under %APPDATA%\NuGet\NuGet.Config will be used -->
|
||||
<!-- The official NuGet package source (https://www.nuget.org/api/v2/) will be excluded if package sources are specified and it does not appear in the list -->
|
||||
<!--
|
||||
<PackageSource Include="https://www.nuget.org/api/v2/" />
|
||||
<PackageSource Include="https://my-nuget-source/nuget/" />
|
||||
-->
|
||||
</ItemGroup>
|
||||
|
||||
<PropertyGroup Condition=" '$(OS)' == 'Windows_NT'">
|
||||
<!-- Windows specific commands -->
|
||||
<NuGetToolsPath>$([System.IO.Path]::Combine($(SolutionDir), ".nuget"))</NuGetToolsPath>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition=" '$(OS)' != 'Windows_NT'">
|
||||
<!-- We need to launch nuget.exe with the mono command if we're not on windows -->
|
||||
<NuGetToolsPath>$(SolutionDir).nuget</NuGetToolsPath>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<PackagesProjectConfig Condition=" '$(OS)' == 'Windows_NT'">$(MSBuildProjectDirectory)\packages.$(MSBuildProjectName.Replace(' ', '_')).config</PackagesProjectConfig>
|
||||
<PackagesProjectConfig Condition=" '$(OS)' != 'Windows_NT'">$(MSBuildProjectDirectory)\packages.$(MSBuildProjectName).config</PackagesProjectConfig>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<PackagesConfig Condition="Exists('$(MSBuildProjectDirectory)\packages.config')">$(MSBuildProjectDirectory)\packages.config</PackagesConfig>
|
||||
<PackagesConfig Condition="Exists('$(PackagesProjectConfig)')">$(PackagesProjectConfig)</PackagesConfig>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<!-- NuGet command -->
|
||||
<NuGetExePath Condition=" '$(NuGetExePath)' == '' ">$(NuGetToolsPath)\NuGet.exe</NuGetExePath>
|
||||
<PackageSources Condition=" $(PackageSources) == '' ">@(PackageSource)</PackageSources>
|
||||
|
||||
<NuGetCommand Condition=" '$(OS)' == 'Windows_NT'">"$(NuGetExePath)"</NuGetCommand>
|
||||
<NuGetCommand Condition=" '$(OS)' != 'Windows_NT' ">mono --runtime=v4.0.30319 "$(NuGetExePath)"</NuGetCommand>
|
||||
|
||||
<PackageOutputDir Condition="$(PackageOutputDir) == ''">$(TargetDir.Trim('\\'))</PackageOutputDir>
|
||||
|
||||
<RequireConsentSwitch Condition=" $(RequireRestoreConsent) == 'true' ">-RequireConsent</RequireConsentSwitch>
|
||||
<NonInteractiveSwitch Condition=" '$(VisualStudioVersion)' != '' AND '$(OS)' == 'Windows_NT' ">-NonInteractive</NonInteractiveSwitch>
|
||||
|
||||
<PaddedSolutionDir Condition=" '$(OS)' == 'Windows_NT'">"$(SolutionDir) "</PaddedSolutionDir>
|
||||
<PaddedSolutionDir Condition=" '$(OS)' != 'Windows_NT' ">"$(SolutionDir)"</PaddedSolutionDir>
|
||||
|
||||
<!-- Commands -->
|
||||
<RestoreCommand>$(NuGetCommand) install "$(PackagesConfig)" -source "$(PackageSources)" $(NonInteractiveSwitch) $(RequireConsentSwitch) -solutionDir $(PaddedSolutionDir)</RestoreCommand>
|
||||
<BuildCommand>$(NuGetCommand) pack "$(ProjectPath)" -Properties "Configuration=$(Configuration);Platform=$(Platform)" $(NonInteractiveSwitch) -OutputDirectory "$(PackageOutputDir)" -symbols</BuildCommand>
|
||||
|
||||
<!-- We need to ensure packages are restored prior to assembly resolve -->
|
||||
<BuildDependsOn Condition="$(RestorePackages) == 'true'">
|
||||
RestorePackages;
|
||||
$(BuildDependsOn);
|
||||
</BuildDependsOn>
|
||||
|
||||
<!-- Make the build depend on restore packages -->
|
||||
<BuildDependsOn Condition="$(BuildPackage) == 'true'">
|
||||
$(BuildDependsOn);
|
||||
BuildPackage;
|
||||
</BuildDependsOn>
|
||||
</PropertyGroup>
|
||||
|
||||
<Target Name="CheckPrerequisites">
|
||||
<!-- Raise an error if we're unable to locate nuget.exe -->
|
||||
<Error Condition="'$(DownloadNuGetExe)' != 'true' AND !Exists('$(NuGetExePath)')" Text="Unable to locate '$(NuGetExePath)'" />
|
||||
<!--
|
||||
Take advantage of MsBuild's build dependency tracking to make sure that we only ever download nuget.exe once.
|
||||
This effectively acts as a lock that makes sure that the download operation will only happen once and all
|
||||
parallel builds will have to wait for it to complete.
|
||||
-->
|
||||
<MsBuild Targets="_DownloadNuGet" Projects="$(MSBuildThisFileFullPath)" Properties="Configuration=NOT_IMPORTANT;DownloadNuGetExe=$(DownloadNuGetExe)" />
|
||||
</Target>
|
||||
|
||||
<Target Name="_DownloadNuGet">
|
||||
<DownloadNuGet OutputFilename="$(NuGetExePath)" Condition=" '$(DownloadNuGetExe)' == 'true' AND !Exists('$(NuGetExePath)')" />
|
||||
</Target>
|
||||
|
||||
<Target Name="RestorePackages" DependsOnTargets="CheckPrerequisites">
|
||||
<Exec Command="$(RestoreCommand)"
|
||||
Condition="'$(OS)' != 'Windows_NT' And Exists('$(PackagesConfig)')" />
|
||||
|
||||
<Exec Command="$(RestoreCommand)"
|
||||
LogStandardErrorAsError="true"
|
||||
Condition="'$(OS)' == 'Windows_NT' And Exists('$(PackagesConfig)')" />
|
||||
</Target>
|
||||
|
||||
<Target Name="BuildPackage" DependsOnTargets="CheckPrerequisites">
|
||||
<Exec Command="$(BuildCommand)"
|
||||
Condition=" '$(OS)' != 'Windows_NT' " />
|
||||
|
||||
<Exec Command="$(BuildCommand)"
|
||||
LogStandardErrorAsError="true"
|
||||
Condition=" '$(OS)' == 'Windows_NT' " />
|
||||
</Target>
|
||||
|
||||
<UsingTask TaskName="DownloadNuGet" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll">
|
||||
<ParameterGroup>
|
||||
<OutputFilename ParameterType="System.String" Required="true" />
|
||||
</ParameterGroup>
|
||||
<Task>
|
||||
<Reference Include="System.Core" />
|
||||
<Using Namespace="System" />
|
||||
<Using Namespace="System.IO" />
|
||||
<Using Namespace="System.Net" />
|
||||
<Using Namespace="Microsoft.Build.Framework" />
|
||||
<Using Namespace="Microsoft.Build.Utilities" />
|
||||
<Code Type="Fragment" Language="cs">
|
||||
<![CDATA[
|
||||
try {
|
||||
OutputFilename = Path.GetFullPath(OutputFilename);
|
||||
|
||||
Log.LogMessage("Downloading latest version of NuGet.exe...");
|
||||
WebClient webClient = new WebClient();
|
||||
webClient.DownloadFile("https://www.nuget.org/nuget.exe", OutputFilename);
|
||||
|
||||
return true;
|
||||
}
|
||||
catch (Exception ex) {
|
||||
Log.LogErrorFromException(ex);
|
||||
return false;
|
||||
}
|
||||
]]>
|
||||
</Code>
|
||||
</Task>
|
||||
</UsingTask>
|
||||
</Project>
|
@ -27,7 +27,7 @@ using System.Linq;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Management.Automation.Host;
|
||||
using System.Threading;
|
||||
using Openstack.Client.Powershell.Utility;
|
||||
using OpenStack.Client.Powershell.Utility;
|
||||
|
||||
namespace OpenStack.Client.Powershell.Cmdlets.Common
|
||||
{
|
||||
|
@ -107,7 +107,7 @@ namespace OpenStack.Client.Powershell.Cmdlets.Common
|
||||
Console.ForegroundColor = ConsoleColor.Green;
|
||||
Console.WriteLine("Name : " + service.Name);
|
||||
Console.WriteLine("Type : " + service.Type);
|
||||
// Console.WriteLine("Provider Name : " + service.ProviderName);
|
||||
|
||||
Console.ForegroundColor = ConsoleColor.Yellow;
|
||||
Console.WriteLine("");
|
||||
Console.WriteLine("Associated Endpoints");
|
||||
|
@ -18,7 +18,8 @@ using System.Management.Automation;
|
||||
using System.Xml.Linq;
|
||||
using System.Xml.XPath;
|
||||
using System.Linq;
|
||||
using Openstack.Client.Powershell.Utility;
|
||||
using OpenStack.Client.Powershell.Utility;
|
||||
using OpenStack.Client.Powershell.Utility;
|
||||
|
||||
namespace OpenStack.Client.Powershell.Cmdlets.Common
|
||||
{
|
||||
@ -31,7 +32,7 @@ namespace OpenStack.Client.Powershell.Cmdlets.Common
|
||||
/// </summary>
|
||||
//=========================================================================================
|
||||
protected override void ProcessRecord()
|
||||
{
|
||||
{
|
||||
AvailabilityZone zone = this.Context.CurrentServiceProvider.AvailabilityZones.Where(z => z.IsDefault == true).Single();
|
||||
|
||||
if (zone != null) {
|
||||
|
@ -21,7 +21,7 @@ using OpenStack.Client.Powershell.Cmdlets.Common;
|
||||
using System.Management.Automation;
|
||||
using System.Xml.Linq;
|
||||
using System.Xml.XPath;
|
||||
using Openstack.Client.Powershell.Utility;
|
||||
using OpenStack.Client.Powershell.Utility;
|
||||
|
||||
namespace OpenStack.Client.Powershell.Cmdlets.Common
|
||||
{
|
||||
|
@ -20,7 +20,7 @@ using System.Xml.XPath;
|
||||
using OpenStack.Client.Powershell.Cmdlets.Common;
|
||||
using OpenStack.Client.Powershell.Utility;
|
||||
|
||||
namespace Openstack.Client.Powershell.Cmdlets.Common
|
||||
namespace OpenStack.Client.Powershell.Cmdlets.Common
|
||||
{
|
||||
[Cmdlet("Set", "Zone", SupportsShouldProcess = true)]
|
||||
public class SetZoneCmdlet : BasePSCmdlet
|
||||
|
@ -4,10 +4,10 @@ ACTION REQUIRED : Change the DocPath Variable below to reflect your Personal Doc
|
||||
=====================================================================================================================
|
||||
set DocPath=C:\Users\Travis\Documents
|
||||
|
||||
md %DocPath%\WindowsPowershell\
|
||||
md %DocPath%\OS\
|
||||
md %DocPath%\OS\
|
||||
md %DocPath%\WindowsPowershell\
|
||||
md %DocPath%\OS\
|
||||
md %DocPath%\OS\
|
||||
|
||||
copy ..\..\.\Deployment\DevProfile.ps1 %DocPath%\WindowsPowershell\Microsoft.PowerShell_profile.ps1
|
||||
copy ..\..\.\Deployment\OpenStack.config %DocPath%\OS\OpenStack.config
|
||||
copy ..\..\.\Deployment\OpenStack.config %DocPath%\OS\OpenStack.config
|
||||
copy ..\..\.\Deployment\OpenStack.Client.Powershell.dll-Help.xml %DocPath%\OS\OpenStack.Client.Powershell.dll-Help.xml
|
@ -1,6 +1,15 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<appSettings>
|
||||
<Testing>
|
||||
<add key= "TestFilePath" value="c:\Projects\Testing\Anothertest.txt"/>
|
||||
<add key= "TeststorageContainer" value="testcon"/>
|
||||
<add key= "TeststorageContainerSecondary" value="b10"/>
|
||||
<add key= "LocalTestDirectory" value="e:\Projects\Testing\"/>
|
||||
<add key= "TestServerId" value="8079afef-d6c3-44a9-9276-0ee8fe344b67"/>
|
||||
<add key= "TestImageId" value="5a1408cb-25f2-43a6-b1d9-931f5e47c871"/>
|
||||
<add key= "TestFlavorId" value="100"/>
|
||||
</Testing>
|
||||
<StorageManagement>
|
||||
<add key="largeFileSize" value="314572800" />
|
||||
<add key="defSegmentNumber" value="16" />
|
||||
@ -20,11 +29,11 @@
|
||||
<add key="SSHClientPath" value="C:\Users\tplummer\Desktop\Utilities\Putty.exe" />
|
||||
</ComputeServices>
|
||||
<IdentityServices>
|
||||
<ServiceProvider name="" isDefault = "true">
|
||||
<add key="AuthenticationServiceURI" value="" displayName="Authentication Service URI" helpText ="" isMandatory="True"/>
|
||||
<add key="Username" value="" displayName="User name" helpText ="" isMandatory="True"/>
|
||||
<add key="Password" value="" displayName="Password" helpText ="" isMandatory="True" />
|
||||
<add key="DefaultTenantId" value="" displayName="Default Tenant Id" helpText ="" isMandatory="True"/>
|
||||
<ServiceProvider name="HP" isDefault = "true">
|
||||
<add key="AuthenticationServiceURI" value="https://region-a.geo-1.identity.hpcloudsvc.com:35357/v2.0/" displayName="Authentication Service URI" helpText ="" isMandatory="True"/>
|
||||
<add key="Username" value="Travis.Plummer@hp.com" displayName="User name" helpText ="" isMandatory="True"/>
|
||||
<add key="Password" value="Armbar40" displayName="Password" helpText ="" isMandatory="True" />
|
||||
<add key="DefaultTenantId" value="Travis.Plummer@hp.com" displayName="Default Tenant Id" helpText ="" isMandatory="True"/>
|
||||
<AvailabilityZones>
|
||||
<AvailabilityZone id="1" isDefault="True" name="region-a.geo-1" shellForegroundColor="Green" />
|
||||
<AvailabilityZone id="2" isDefault="False" name="region-b.geo-1" shellForegroundColor="Green" />
|
||||
|
Binary file not shown.
@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Do not remove this test for UTF-8: if “Ω” doesn’t appear as greek uppercase omega letter enclosed in quotation marks, you should use an editor that supports UTF-8, not this one. -->
|
||||
<package>
|
||||
<metadata>
|
||||
<id>openstack-cli-powershell</id>
|
||||
<title>openstack-cli-powershell</title>
|
||||
<version>2.0.0</version>
|
||||
<authors>ThatGuy</authors>
|
||||
<owners>Travis Plummer</owners>
|
||||
<summary>Thid package allows Users to manage their Openstack environments from the Powershell command line.</summary>
|
||||
<description>Thid package allows Users to manage their Openstack environments from the Powershell command line.</description>
|
||||
<tags>OpenStack Powershell CLI Windows</tags>
|
||||
<copyright>2014</copyright>
|
||||
<licenseUrl>http://www.apache.org/licenses/LICENSE-2.0</licenseUrl>
|
||||
<requireLicenseAcceptance>false</requireLicenseAcceptance>
|
||||
<!--<iconUrl>https://raw.github.com/__CHOCO_PKG_OWNER_REPO__/master/__NAME__/__NAME__.png</iconUrl>-->
|
||||
<!--<dependencies>
|
||||
<dependency id="" version="" />
|
||||
</dependencies>-->
|
||||
<releaseNotes>This first release demonstrates the Mutli-Vendor functionality as well as a Read-onoly version of the ObjectStorage Provider.</releaseNotes>
|
||||
</metadata>
|
||||
<files>
|
||||
<file src="tools\**" target="tools" />
|
||||
</files>
|
||||
</package>
|
@ -0,0 +1,46 @@
|
||||
|
||||
$packageName = 'openstack-cli-powershell'
|
||||
$installerType = 'msi'
|
||||
#$url = 'https://onedrive.live.com/redir?resid=4BB76CA4826F85D5%2119977'
|
||||
$url = 'C:\Users\plummert\Source\Builds\Openstack.Client.Powershell.Deployment.msi'
|
||||
$silentArgs = '/quiet'
|
||||
$validExitCodes = @(0)
|
||||
|
||||
Install-ChocolateyPackage "$packageName" "$installerType" "$silentArgs" "$url" -validExitCodes $validExitCodes
|
||||
|
||||
$p = [Environment]::GetEnvironmentVariable("PSModulePath")
|
||||
$p += ";" + $env:USERPROFILE + "\Documents\WindowsPowerShell\Modules\Openstack-Core"
|
||||
|
||||
[Environment]::SetEnvironmentVariable("PSModulePath",$p)
|
||||
|
||||
#try { #error handling is only necessary if you need to do anything in addition to/instead of the main helpers
|
||||
# other helpers - using any of these means you want to uncomment the error handling up top and at bottom.
|
||||
# downloader that the main helpers use to download items
|
||||
|
||||
# if removing $url64, please remove from here
|
||||
#Get-ChocolateyWebFile "$packageName" 'DOWNLOAD_TO_FILE_FULL_PATH' "$url"
|
||||
# installer, will assert administrative rights - used by Install-ChocolateyPackage
|
||||
#Install-ChocolateyInstallPackage "$packageName" "$installerType" "$silentArgs" '_FULLFILEPATH_' -validExitCodes $validExitCodes
|
||||
# unzips a file to the specified location - auto overwrites existing content
|
||||
#Get-ChocolateyUnzip "FULL_LOCATION_TO_ZIP.zip" "$(Split-Path -parent $MyInvocation.MyCommand.Definition)"
|
||||
# Runs processes asserting UAC, will assert administrative rights - used by Install-ChocolateyInstallPackage
|
||||
#Start-ChocolateyProcessAsAdmin 'STATEMENTS_TO_RUN' 'Optional_Application_If_Not_PowerShell' -validExitCodes $validExitCodes
|
||||
# add specific folders to the path - any executables found in the chocolatey package folder will already be on the path. This is used in addition to that or for cases when a native installer doesn't add things to the path.
|
||||
#Install-ChocolateyPath 'LOCATION_TO_ADD_TO_PATH' 'User_OR_Machine' # Machine will assert administrative rights
|
||||
# add specific files as shortcuts to the desktop
|
||||
#$target = Join-Path $MyInvocation.MyCommand.Definition "$($packageName).exe"
|
||||
#Install-ChocolateyDesktopLink $target
|
||||
|
||||
#------- ADDITIONAL SETUP -------#
|
||||
# make sure to uncomment the error handling if you have additional setup to do
|
||||
|
||||
#$processor = Get-WmiObject Win32_Processor
|
||||
#$is64bit = $processor.AddressWidth -eq 64
|
||||
|
||||
|
||||
# the following is all part of error handling
|
||||
#Write-ChocolateySuccess "$packageName"
|
||||
#} catch {
|
||||
#Write-ChocolateyFailure "$packageName" "$($_.Exception.Message)"
|
||||
#throw
|
||||
#}
|
@ -8,7 +8,7 @@
|
||||
<ProjectGuid>{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>Openstack.Client.Powershell</RootNamespace>
|
||||
<RootNamespace>OpenStack.Client.Powershell</RootNamespace>
|
||||
<AssemblyName>Openstack.Client.Powershell</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
@ -21,7 +21,7 @@
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>..\..\..\..\..\Documents\WindowsPowerShell\Modules\Openstack\Openstack-Core\</OutputPath>
|
||||
<OutputPath>..\..\..\..\Documents\WindowsPowerShell\Modules\Openstack-Core\</OutputPath>
|
||||
<DefineConstants>DEBUG</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
@ -58,13 +58,13 @@
|
||||
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Reference Include="AWSSDK, Version=2.0.11.0, Culture=neutral, PublicKeyToken=9f476d3089b52be3, processorArchitecture=MSIL">
|
||||
<Reference Include="AWSSDK, Version=2.1.3.0, Culture=neutral, PublicKeyToken=9f476d3089b52be3, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\packages\AWSSDK.2.0.11.0\lib\net45\AWSSDK.dll</HintPath>
|
||||
<HintPath>..\packages\AWSSDK.2.1.3.0\lib\net45\AWSSDK.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\packages\Newtonsoft.Json.6.0.2\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
<HintPath>..\packages\Newtonsoft.Json.6.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="OpenStack, Version=0.9.1.0, Culture=neutral, PublicKeyToken=baf191d8aca7391c, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
@ -111,7 +111,6 @@
|
||||
<Compile Include="Cmdlets\Common\GetZonesCmdlet.cs" />
|
||||
<Compile Include="Cmdlets\Common\SetConfigCmdlet.cs" />
|
||||
<Compile Include="Cmdlets\Common\SetZoneCmdlet.cs" />
|
||||
<Compile Include="Cmdlets\Common\TokenTestCmdlet.cs" />
|
||||
<Compile Include="Providers\Common\BaseNavigationCmdletProvider.cs" />
|
||||
<Compile Include="Providers\Common\CommonDriveInfo.cs" />
|
||||
<Compile Include="Providers\Common\CommonDriveParameters.cs" />
|
||||
@ -134,7 +133,6 @@
|
||||
<Compile Include="Utility\Enums.cs" />
|
||||
<Compile Include="Utility\ExtensionManager.cs" />
|
||||
<Compile Include="Providers\ObjectStorage\ObjectStorageDriveConverter.cs" />
|
||||
<Compile Include="Utility\ExtensionMethods.cs" />
|
||||
<Compile Include="Utility\OpenstackCoreRegistrationManager.cs" />
|
||||
<Compile Include="Utility\RegistrationManager.cs" />
|
||||
<Compile Include="Utility\RegistrationResponse.cs" />
|
||||
@ -150,18 +148,17 @@
|
||||
<None Include="app.config">
|
||||
<SubType>Designer</SubType>
|
||||
</None>
|
||||
<None Include="Deployment\NavigationGraph.dgml" />
|
||||
<None Include="Deployment\Openstack.config">
|
||||
<SubType>Designer</SubType>
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Deployment\DevProfile.ps1" />
|
||||
<None Include="Deployment\PostBuild.bat" />
|
||||
<None Include="Deployment\Openstack.config.example">
|
||||
<None Include="Deployment\Examples\PostBuild.bat" />
|
||||
<None Include="Deployment\Examples\Openstack.config.example">
|
||||
<SubType>Designer</SubType>
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Deployment\DevProfile.ps1.example" />
|
||||
<None Include="Deployment\Examples\DevProfile.ps1.example" />
|
||||
<None Include="Deployment\Openstack.format.ps1xml">
|
||||
<SubType>Designer</SubType>
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
@ -169,7 +166,9 @@
|
||||
<None Include="Deployment\Microsoft.PowerShell_profile.ps1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Deployment\PostBuild.example" />
|
||||
<None Include="Deployment\Examples\PostBuild.example" />
|
||||
<None Include="Deployment\tools\chocolateyInstall.ps1" />
|
||||
<None Include="Deployment\openstack-cli-powershell.nuspec" />
|
||||
<None Include="packages.config" />
|
||||
<Resource Include="Deployment\powershell.exe.config">
|
||||
<SubType>Designer</SubType>
|
||||
@ -193,32 +192,23 @@
|
||||
<Folder Include="Providers\Security\" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="Deployment\Aliases.txt">
|
||||
<Content Include="Deployment\Examples\Aliases.txt">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="Deployment\ApacheLicense.txt" />
|
||||
<Content Include="Deployment\CredentialList.xml">
|
||||
<Content Include="Deployment\Examples\ApacheLicense.txt" />
|
||||
<Content Include="Deployment\Examples\CredentialList.xml">
|
||||
<SubType>Designer</SubType>
|
||||
</Content>
|
||||
<Content Include="Deployment\NavigationGraph.txt" />
|
||||
<Content Include="Deployment\Openstack.Client.Powershell.dll-Help.xml">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Content>
|
||||
<Content Include="Deployment\readme.txt" />
|
||||
<Content Include="Deployment\ReleaseManifest.xml" />
|
||||
<Content Include="Deployment\ScratchPad\SecurityGroupData\SecurityGroupTest.xml" />
|
||||
<Content Include="Deployment\ScratchPad\SecurityGroupData\SecurityGroupsTest.xml" />
|
||||
<Content Include="Deployment\ScratchPad\SecurityGroupData\SecurityGroups.xml" />
|
||||
<Content Include="Deployment\ScratchPad\ServerData\Server.xml">
|
||||
<SubType>Designer</SubType>
|
||||
</Content>
|
||||
<Content Include="Deployment\ScratchPad\ServerData\Server1.xml" />
|
||||
<Content Include="Deployment\ScratchPad\ServerData\Servers.xml" />
|
||||
<Content Include="Deployment\Examples\readme.txt" />
|
||||
<Content Include="Deployment\Examples\ReleaseManifest.xml" />
|
||||
<Content Include="License.txt" />
|
||||
<None Include="Deployment\Openstack-Core.psd1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Deployment\ReleaseNotes.xml">
|
||||
<None Include="Deployment\Examples\ReleaseNotes.xml">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
<SubType>Designer</SubType>
|
||||
</None>
|
||||
@ -240,12 +230,11 @@ Echo =====================
|
||||
|
||||
md %25USERPROFILE%25\Documents\WindowsPowerShell
|
||||
md %25USERPROFILE%25\Documents\WindowsPowerShell\Modules
|
||||
md %25USERPROFILE%25\Documents\WindowsPowerShell\Modules\Openstack
|
||||
md %25USERPROFILE%25\Documents\WindowsPowerShell\Modules\Openstack\Openstack-Core
|
||||
md %25USERPROFILE%25\Documents\WindowsPowerShell\Modules\Openstack-Core
|
||||
md %25USERPROFILE%25\Documents\OS
|
||||
md $(ProjectDir)bin\debug
|
||||
|
||||
copy $(ProjectDir)\Deployment\*.* %25USERPROFILE%25\Documents\WindowsPowerShell\Modules\Openstack\Openstack-Core
|
||||
copy $(ProjectDir)\Deployment\*.* %25USERPROFILE%25\Documents\WindowsPowerShell\Modules\Openstack-Core
|
||||
copy $(ProjectDir)\Deployment\DevProfile.ps1 %25USERPROFILE%25\Documents\WindowsPowerShell\Microsoft.Powershell_profile.ps1
|
||||
copy $(ProjectDir)\Deployment\Openstack.config %25USERPROFILE%25\Documents\OS\Openstack.config
|
||||
|
||||
@ -259,8 +248,7 @@ echo copy C:\Users\tplummer\Source\Repos\FixIt\openstack-cli-powershell\Openstac
|
||||
|
||||
Echo The statement below is causing symbol mismatches when attaching the debugger remotely. For now, you should point this projects output folder
|
||||
Echo to the correct runtime location. That is C:\Users\username\Documents\WindowsPowerShell\Modules\Openstack\Openstack-Core
|
||||
Echo ' copy $(ProjectDir)bin\debug\*.* %25USERPROFILE%25\Documents\WindowsPowershell\Modules\Openstack\openstack-core
|
||||
|
||||
Echo ' copy $(ProjectDir)bin\debug\*.* %25USERPROFILE%25\Documents\WindowsPowershell\Modules\openstack-core
|
||||
|
||||
|
||||
|
||||
|
@ -1,12 +1,9 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2013
|
||||
VisualStudioVersion = 12.0.21005.1
|
||||
VisualStudioVersion = 12.0.30501.0
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{D129B468-4E23-4226-AA0E-AE02BB697D9A}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
HPCloud.Client.Powershell.vsmdi = HPCloud.Client.Powershell.vsmdi
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Openstack.Client.Powershell", "Openstack.Client.Powershell.csproj", "{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}"
|
||||
EndProject
|
||||
@ -20,6 +17,13 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Openstack.Common", "..\..\A
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Openstack.Objects.Test", "..\..\API\Openstack.Objects.Test\Openstack.Objects.Test.csproj", "{E90D4392-6748-4405-9F99-2D5FBB09DFC8}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".nuget", ".nuget", "{58823660-23CD-44FD-A588-2592A2932EC3}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
.nuget\NuGet.Config = .nuget\NuGet.Config
|
||||
.nuget\NuGet.exe = .nuget\NuGet.exe
|
||||
.nuget\NuGet.targets = .nuget\NuGet.targets
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
|
@ -21,7 +21,7 @@ using System.Xml.Linq;
|
||||
using System.Xml.XPath;
|
||||
using OpenStack.Client.Powershell.Utility;
|
||||
using System.Linq;
|
||||
using Openstack.Client.Powershell.Utility;
|
||||
using OpenStack.Client.Powershell.Utility;
|
||||
|
||||
namespace OpenStack.Client.Powershell.Providers.Common
|
||||
{
|
||||
@ -112,13 +112,16 @@ namespace OpenStack.Client.Powershell.Providers.Common
|
||||
private void SetZoneColor(ServiceProvider provider)
|
||||
{
|
||||
// We don't throw a critical exception if this operation fails..
|
||||
try
|
||||
{
|
||||
AvailabilityZone defZone = provider.AvailabilityZones.Where(z => z.IsDefault == true).DefaultIfEmpty(null).FirstOrDefault();
|
||||
if (defZone == null) return;
|
||||
|
||||
AvailabilityZone defZone = provider.AvailabilityZones.Where(z => z.IsDefault == true).DefaultIfEmpty(null).FirstOrDefault();
|
||||
if (defZone == null) return;
|
||||
|
||||
Console.ForegroundColor = (ConsoleColor)Enum.Parse(typeof(ConsoleColor), defZone.ShellForegroundColor);
|
||||
this.Host.UI.RawUI.ForegroundColor = (ConsoleColor)Enum.Parse(typeof(ConsoleColor), defZone.ShellForegroundColor);
|
||||
this.Context.Forecolor = defZone.ShellForegroundColor;
|
||||
Console.ForegroundColor = (ConsoleColor)Enum.Parse(typeof(ConsoleColor), defZone.ShellForegroundColor);
|
||||
this.Host.UI.RawUI.ForegroundColor = (ConsoleColor)Enum.Parse(typeof(ConsoleColor), defZone.ShellForegroundColor);
|
||||
this.Context.Forecolor = defZone.ShellForegroundColor;
|
||||
}
|
||||
catch (System.Management.Automation.Host.HostException) { }
|
||||
}
|
||||
//==================================================================================================
|
||||
/// <summary>
|
||||
|
@ -16,9 +16,9 @@ limitations under the License.
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Management.Automation;
|
||||
using Openstack.Client.Powershell.Providers.Common;
|
||||
using OpenStack.Client.Powershell.Providers.Common;
|
||||
|
||||
namespace Openstack.Client.Powershell.Providers.Common
|
||||
namespace OpenStack.Client.Powershell.Providers.Common
|
||||
{
|
||||
public class CommonDriveInfo : PSDriveInfo
|
||||
{
|
||||
|
@ -18,7 +18,7 @@ using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
|
||||
namespace Openstack.Client.Powershell.Providers.Common
|
||||
namespace OpenStack.Client.Powershell.Providers.Common
|
||||
{
|
||||
public class CommonDriveParameters
|
||||
{
|
||||
|
@ -5,7 +5,7 @@ using System.Linq;
|
||||
using System.Management.Automation;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Openstack.Client.Powershell.Utility;
|
||||
using OpenStack.Client.Powershell.Utility;
|
||||
using OpenStack;
|
||||
using OpenStack.Client.Powershell.Providers.Storage;
|
||||
using OpenStack.Client.Powershell.Utility;
|
||||
|
@ -28,7 +28,7 @@ using System.Threading.Tasks;
|
||||
using System.Threading;
|
||||
using OpenStack.Client.Powershell.Providers.ObjectStorage;
|
||||
using System.Diagnostics.Contracts;
|
||||
using Openstack.Client.Powershell.Utility;
|
||||
using OpenStack.Client.Powershell.Utility;
|
||||
|
||||
namespace OpenStack.Client.Powershell.Providers.Storage
|
||||
{
|
||||
@ -177,7 +177,7 @@ namespace OpenStack.Client.Powershell.Providers.Storage
|
||||
//==================================================================================================
|
||||
protected override System.Collections.ObjectModel.Collection<PSDriveInfo> InitializeDefaultDrives()
|
||||
{
|
||||
Thread.Sleep(new TimeSpan(0, 0, 0, 5, 0));
|
||||
//Thread.Sleep(new TimeSpan(0, 0, 0, 5, 0));
|
||||
|
||||
this.InitializeSession();
|
||||
|
||||
@ -522,7 +522,7 @@ namespace OpenStack.Client.Powershell.Providers.Storage
|
||||
storagePath = new StoragePath(this.StorageServiceURL, this.Drive.Name, path.Substring(1) + "/");
|
||||
}
|
||||
|
||||
IStorageServiceClient storageService = this.CoreClient.CreateServiceClient<IStorageServiceClient>();
|
||||
IStorageServiceClient storageService = this.CreateServiceClient<IStorageServiceClient>(CoreServices.ObjectStorage);
|
||||
Task<StorageObject> getStorageObjectTask = storageService.GetStorageObject(storagePath.Volume, storagePath.ResourcePath); //(storagePath.AbsoluteURI);
|
||||
getStorageObjectTask.Wait();
|
||||
StorageObject sObject = getStorageObjectTask.Result;
|
||||
|
@ -21,7 +21,7 @@ using System;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using OpenStack.Storage;
|
||||
using Openstack.Client.Powershell.Utility;
|
||||
using OpenStack.Client.Powershell.Utility;
|
||||
|
||||
|
||||
namespace OpenStack.Client.Powershell.Providers.Storage
|
||||
|
@ -19,7 +19,7 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Openstack.Client.Powershell.Utility
|
||||
namespace OpenStack.Client.Powershell.Utility
|
||||
{
|
||||
public class AvailabilityZone
|
||||
{
|
||||
|
@ -20,7 +20,7 @@ using System.Xml.Linq;
|
||||
using System.Collections;
|
||||
using System.IO;
|
||||
using System.Xml.XPath;
|
||||
using Openstack.Client.Powershell.Utility;
|
||||
using OpenStack.Client.Powershell.Utility;
|
||||
using System.Xml.Schema;
|
||||
using System.Xml;
|
||||
|
||||
@ -148,6 +148,7 @@ namespace OpenStack.Client.Powershell.Utility
|
||||
{
|
||||
ValidationResult result = new ValidationResult();
|
||||
|
||||
#region XSD Approach
|
||||
// First we check the structural integrity of the document via XSD..
|
||||
|
||||
//string xsdMarkup = this.GetSchema();
|
||||
@ -159,7 +160,8 @@ namespace OpenStack.Client.Powershell.Utility
|
||||
// result.Errors.Add(e.Message);
|
||||
// result.HasErrors = true;
|
||||
//});
|
||||
|
||||
#endregion
|
||||
|
||||
// Next, ensure that a default Service Provider exist..
|
||||
|
||||
var serviceProviders = this.Document.Descendants("ServiceProvider");
|
||||
@ -201,8 +203,7 @@ namespace OpenStack.Client.Powershell.Utility
|
||||
result.Errors.Add("Please ensure that all Service Providers have a unique name assigned to them.");
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
return result;
|
||||
}
|
||||
//=========================================================================================
|
||||
@ -446,6 +447,27 @@ namespace OpenStack.Client.Powershell.Utility
|
||||
}
|
||||
//=========================================================================================
|
||||
/// <summary>
|
||||
/// Used by Extension Authors to register their Service Provider info. The path should point
|
||||
/// to the ServiceProvider.xml definition file,.
|
||||
/// </summary>
|
||||
//=========================================================================================
|
||||
public void WriteServiceProvider(string serviceProviderPath)
|
||||
{
|
||||
// Load up the Primary Config file..
|
||||
|
||||
this.Load(this.GetFullConfigPath());
|
||||
XDocument serviceProvider = XDocument.Load(serviceProviderPath);
|
||||
|
||||
// Validate the ServiceProvider.xml definition file. If it passes, add it to the config file.
|
||||
|
||||
if (this.ValidateDocument(serviceProvider).Errors.Count() == 0) {
|
||||
XElement identityServices = this.Document.Descendants("IdentityServices").FirstOrDefault();
|
||||
identityServices.Add(serviceProvider.FirstNode);
|
||||
this.Document.Save(this.GetFullConfigPath());
|
||||
}
|
||||
}
|
||||
//=========================================================================================
|
||||
/// <summary>
|
||||
/// Flush and fill style..
|
||||
/// </summary>
|
||||
//=========================================================================================
|
||||
|
@ -26,7 +26,6 @@ using System.Diagnostics.Contracts;
|
||||
|
||||
namespace OpenStack.Client.Powershell.Utility
|
||||
{
|
||||
|
||||
public class ServiceProviderInfo
|
||||
{
|
||||
public string Name;
|
||||
|
@ -15,25 +15,44 @@ using System;
|
||||
using System.Management.Automation;
|
||||
using System.Reflection;
|
||||
using System.Security.Policy;
|
||||
using OpenStack.Client.Powershell.Utility;
|
||||
using System.Linq;
|
||||
using OpenStack.Identity;
|
||||
using System.Threading;
|
||||
using Openstack.Client.Powershell.Utility;
|
||||
|
||||
namespace OpenStack.Client.Powershell.Utility
|
||||
{
|
||||
public class LoadResult
|
||||
{
|
||||
public LoadResult(IOpenStackClient client, Context context)
|
||||
{
|
||||
CoreClient = client;
|
||||
Context = context;
|
||||
}
|
||||
public IOpenStackClient CoreClient;
|
||||
public Context Context;
|
||||
}
|
||||
|
||||
public class ExtensionManager
|
||||
{
|
||||
private SessionState _session;
|
||||
private Context _context;
|
||||
|
||||
#region Properties
|
||||
//==================================================================================================
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
//==================================================================================================
|
||||
public Context Context
|
||||
{
|
||||
get { return _context; }
|
||||
set { _context = value; }
|
||||
}
|
||||
//==================================================================================================
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
//==================================================================================================
|
||||
public SessionState Session
|
||||
{
|
||||
get { return _session; }
|
||||
@ -46,6 +65,17 @@ namespace OpenStack.Client.Powershell.Utility
|
||||
/// </summary>
|
||||
/// <param name="session"></param>
|
||||
/// <param name="context"></param>
|
||||
//==================================================================================================
|
||||
public ExtensionManager(Context context)
|
||||
{
|
||||
_context = context;
|
||||
}
|
||||
//==================================================================================================
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
/// <param name="session"></param>
|
||||
/// <param name="context"></param>
|
||||
//==================================================================================================
|
||||
public ExtensionManager(SessionState session, Context context)
|
||||
{
|
||||
@ -79,7 +109,7 @@ namespace OpenStack.Client.Powershell.Utility
|
||||
/// <param name="context"></param>
|
||||
/// <param name="client"></param>
|
||||
//==================================================================================================
|
||||
private void SetSessionState(IOpenStackCredential credential, IOpenStackClient client, ServiceProvider provider)
|
||||
private LoadResult SetSessionState(IOpenStackCredential credential, IOpenStackClient client, ServiceProvider provider)
|
||||
{
|
||||
// Setup the environment based on what came back from Auth..
|
||||
|
||||
@ -90,9 +120,13 @@ namespace OpenStack.Client.Powershell.Utility
|
||||
context.Version = Assembly.GetExecutingAssembly().GetName().Version.ToString();
|
||||
context.CurrentServiceProvider = provider;
|
||||
context.CurrentRegion = provider.AvailabilityZones.Where(z => z.IsDefault == true).Single().Name;
|
||||
|
||||
this.Session.PSVariable.Set(new PSVariable("Context", context));
|
||||
this.Session.PSVariable.Set(new PSVariable("CoreClient", client));
|
||||
|
||||
if (this.Session != null)
|
||||
{
|
||||
this.Session.PSVariable.Set(new PSVariable("Context", context));
|
||||
this.Session.PSVariable.Set(new PSVariable("CoreClient", client));
|
||||
}
|
||||
return new LoadResult(client, context);
|
||||
}
|
||||
//==================================================================================================
|
||||
/// <summary>
|
||||
@ -138,7 +172,7 @@ namespace OpenStack.Client.Powershell.Utility
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
//==================================================================================================
|
||||
public void LoadCore(ServiceProvider provider)
|
||||
public LoadResult LoadCore(ServiceProvider provider)
|
||||
{
|
||||
OpenstackCoreRegistrationManager manager = new OpenstackCoreRegistrationManager();
|
||||
RegistrationResponse response = manager.Register(provider);
|
||||
@ -147,7 +181,8 @@ namespace OpenStack.Client.Powershell.Utility
|
||||
|
||||
CancellationTokenSource source = new CancellationTokenSource();
|
||||
CancellationToken token = source.Token;
|
||||
this.Session.PSVariable.Set(new PSVariable("CancellationTokenSource", source));
|
||||
if (this.Session != null)
|
||||
this.Session.PSVariable.Set(new PSVariable("CancellationTokenSource", source));
|
||||
|
||||
// Connect to the Service Provider..
|
||||
|
||||
@ -155,10 +190,11 @@ namespace OpenStack.Client.Powershell.Utility
|
||||
var connectTask = client.Connect();
|
||||
connectTask.Wait();
|
||||
|
||||
this.SetSessionState(response.Credentials, client, provider);
|
||||
LoadResult result = this.SetSessionState(response.Credentials, client, provider);
|
||||
|
||||
ConfigurationManager configManager = new ConfigurationManager();
|
||||
configManager.WriteServiceProvider(response.Provider, true);
|
||||
return result;
|
||||
}
|
||||
//==================================================================================================
|
||||
/// <summary>
|
||||
|
@ -19,7 +19,7 @@ using System.Linq;
|
||||
using System.Security;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Openstack.Client.Powershell.Utility;
|
||||
using OpenStack.Client.Powershell.Utility;
|
||||
using OpenStack.Client.Powershell.Utility;
|
||||
using OpenStack.Identity;
|
||||
|
||||
|
@ -4,7 +4,7 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Openstack.Client.Powershell.Utility
|
||||
namespace OpenStack.Client.Powershell.Utility
|
||||
{
|
||||
|
||||
public enum CoreServices
|
||||
|
@ -18,7 +18,7 @@ using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Openstack.Client.Powershell.Utility;
|
||||
using OpenStack.Client.Powershell.Utility;
|
||||
|
||||
namespace OpenStack.Client.Powershell.Utility
|
||||
{
|
||||
|
@ -4,7 +4,7 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Openstack.Client.Powershell.Utility
|
||||
namespace OpenStack.Client.Powershell.Utility
|
||||
{
|
||||
public class ServiceProviderAttribute : Attribute
|
||||
{
|
||||
|
@ -1,18 +1,20 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<configSections>
|
||||
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<section name="OpenStack.Client.Powershell.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
|
||||
</sectionGroup>
|
||||
</configSections>
|
||||
<userSettings>
|
||||
<OpenStack.Client.Powershell.Properties.Settings>
|
||||
<setting name="FileQueueAppPath2" serializeAs="String">
|
||||
<value>C:\Projects\OS\OpenStack.Client.Powershell\OpenStack.Client.AsyncQueue\OpenStack.Client.AsyncQueue\bin\Debug\OpenStack.Client.AsyncQueue.exe</value>
|
||||
</setting>
|
||||
</OpenStack.Client.Powershell.Properties.Settings>
|
||||
</userSettings>
|
||||
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" /></startup>
|
||||
<configSections>
|
||||
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<section name="OpenStack.Client.Powershell.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
|
||||
</sectionGroup>
|
||||
</configSections>
|
||||
<userSettings>
|
||||
<OpenStack.Client.Powershell.Properties.Settings>
|
||||
<setting name="FileQueueAppPath2" serializeAs="String">
|
||||
<value>C:\Projects\OS\OpenStack.Client.Powershell\OpenStack.Client.AsyncQueue\OpenStack.Client.AsyncQueue\bin\Debug\OpenStack.Client.AsyncQueue.exe</value>
|
||||
</setting>
|
||||
</OpenStack.Client.Powershell.Properties.Settings>
|
||||
</userSettings>
|
||||
<startup>
|
||||
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
|
||||
</startup>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
@ -21,4 +23,11 @@
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
<appSettings>
|
||||
<!--AWSProfileName is used to reference an account that has been registered with the SDK.
|
||||
If using AWS Toolkit for Visual Studio then this value is the same value shown in the AWS Explorer.
|
||||
It is also possible to registered an accounts using the <solution-dir>/packages/AWSSDK-X.X.X.X/tools/account-management.ps1 PowerShell script
|
||||
that is bundled with the nuget package under the tools folder.-->
|
||||
<add key="AWSProfileName" value="" />
|
||||
</appSettings>
|
||||
</configuration>
|
@ -1,10 +1,10 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="AWSSDK" version="2.0.11.0" targetFramework="net45" />
|
||||
<package id="AWSSDK" version="2.1.3.0" targetFramework="net45" />
|
||||
<package id="BouncyCastle" version="1.7.0" targetFramework="net40" />
|
||||
<package id="Microsoft.Bcl" version="1.1.9" targetFramework="net45" />
|
||||
<package id="Microsoft.Bcl.Build" version="1.0.14" targetFramework="net45" />
|
||||
<package id="Microsoft.Net.Http" version="2.2.22" targetFramework="net45" />
|
||||
<package id="Newtonsoft.Json" version="6.0.2" targetFramework="net45" />
|
||||
<package id="OpenStack-SDK-DotNet" version="0.9.0.0" targetFramework="net45" />
|
||||
<package id="Newtonsoft.Json" version="6.0.3" targetFramework="net45" />
|
||||
<package id="OpenStack-SDK-DotNet" version="0.9.1.0" targetFramework="net45" />
|
||||
</packages>
|
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<solution>
|
||||
<add key="disableSourceControlIntegration" value="true" />
|
||||
</solution>
|
||||
</configuration>
|
BIN
WidgetInc.Openstack.Client.Powershell/.nuget/NuGet.exe
Normal file
BIN
WidgetInc.Openstack.Client.Powershell/.nuget/NuGet.exe
Normal file
Binary file not shown.
144
WidgetInc.Openstack.Client.Powershell/.nuget/NuGet.targets
Normal file
144
WidgetInc.Openstack.Client.Powershell/.nuget/NuGet.targets
Normal file
@ -0,0 +1,144 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">$(MSBuildProjectDirectory)\..\</SolutionDir>
|
||||
|
||||
<!-- Enable the restore command to run before builds -->
|
||||
<RestorePackages Condition=" '$(RestorePackages)' == '' ">false</RestorePackages>
|
||||
|
||||
<!-- Property that enables building a package from a project -->
|
||||
<BuildPackage Condition=" '$(BuildPackage)' == '' ">false</BuildPackage>
|
||||
|
||||
<!-- Determines if package restore consent is required to restore packages -->
|
||||
<RequireRestoreConsent Condition=" '$(RequireRestoreConsent)' != 'false' ">true</RequireRestoreConsent>
|
||||
|
||||
<!-- Download NuGet.exe if it does not already exist -->
|
||||
<DownloadNuGetExe Condition=" '$(DownloadNuGetExe)' == '' ">false</DownloadNuGetExe>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup Condition=" '$(PackageSources)' == '' ">
|
||||
<!-- Package sources used to restore packages. By default, registered sources under %APPDATA%\NuGet\NuGet.Config will be used -->
|
||||
<!-- The official NuGet package source (https://www.nuget.org/api/v2/) will be excluded if package sources are specified and it does not appear in the list -->
|
||||
<!--
|
||||
<PackageSource Include="https://www.nuget.org/api/v2/" />
|
||||
<PackageSource Include="https://my-nuget-source/nuget/" />
|
||||
-->
|
||||
</ItemGroup>
|
||||
|
||||
<PropertyGroup Condition=" '$(OS)' == 'Windows_NT'">
|
||||
<!-- Windows specific commands -->
|
||||
<NuGetToolsPath>$([System.IO.Path]::Combine($(SolutionDir), ".nuget"))</NuGetToolsPath>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup Condition=" '$(OS)' != 'Windows_NT'">
|
||||
<!-- We need to launch nuget.exe with the mono command if we're not on windows -->
|
||||
<NuGetToolsPath>$(SolutionDir).nuget</NuGetToolsPath>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<PackagesProjectConfig Condition=" '$(OS)' == 'Windows_NT'">$(MSBuildProjectDirectory)\packages.$(MSBuildProjectName.Replace(' ', '_')).config</PackagesProjectConfig>
|
||||
<PackagesProjectConfig Condition=" '$(OS)' != 'Windows_NT'">$(MSBuildProjectDirectory)\packages.$(MSBuildProjectName).config</PackagesProjectConfig>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<PackagesConfig Condition="Exists('$(MSBuildProjectDirectory)\packages.config')">$(MSBuildProjectDirectory)\packages.config</PackagesConfig>
|
||||
<PackagesConfig Condition="Exists('$(PackagesProjectConfig)')">$(PackagesProjectConfig)</PackagesConfig>
|
||||
</PropertyGroup>
|
||||
|
||||
<PropertyGroup>
|
||||
<!-- NuGet command -->
|
||||
<NuGetExePath Condition=" '$(NuGetExePath)' == '' ">$(NuGetToolsPath)\NuGet.exe</NuGetExePath>
|
||||
<PackageSources Condition=" $(PackageSources) == '' ">@(PackageSource)</PackageSources>
|
||||
|
||||
<NuGetCommand Condition=" '$(OS)' == 'Windows_NT'">"$(NuGetExePath)"</NuGetCommand>
|
||||
<NuGetCommand Condition=" '$(OS)' != 'Windows_NT' ">mono --runtime=v4.0.30319 "$(NuGetExePath)"</NuGetCommand>
|
||||
|
||||
<PackageOutputDir Condition="$(PackageOutputDir) == ''">$(TargetDir.Trim('\\'))</PackageOutputDir>
|
||||
|
||||
<RequireConsentSwitch Condition=" $(RequireRestoreConsent) == 'true' ">-RequireConsent</RequireConsentSwitch>
|
||||
<NonInteractiveSwitch Condition=" '$(VisualStudioVersion)' != '' AND '$(OS)' == 'Windows_NT' ">-NonInteractive</NonInteractiveSwitch>
|
||||
|
||||
<PaddedSolutionDir Condition=" '$(OS)' == 'Windows_NT'">"$(SolutionDir) "</PaddedSolutionDir>
|
||||
<PaddedSolutionDir Condition=" '$(OS)' != 'Windows_NT' ">"$(SolutionDir)"</PaddedSolutionDir>
|
||||
|
||||
<!-- Commands -->
|
||||
<RestoreCommand>$(NuGetCommand) install "$(PackagesConfig)" -source "$(PackageSources)" $(NonInteractiveSwitch) $(RequireConsentSwitch) -solutionDir $(PaddedSolutionDir)</RestoreCommand>
|
||||
<BuildCommand>$(NuGetCommand) pack "$(ProjectPath)" -Properties "Configuration=$(Configuration);Platform=$(Platform)" $(NonInteractiveSwitch) -OutputDirectory "$(PackageOutputDir)" -symbols</BuildCommand>
|
||||
|
||||
<!-- We need to ensure packages are restored prior to assembly resolve -->
|
||||
<BuildDependsOn Condition="$(RestorePackages) == 'true'">
|
||||
RestorePackages;
|
||||
$(BuildDependsOn);
|
||||
</BuildDependsOn>
|
||||
|
||||
<!-- Make the build depend on restore packages -->
|
||||
<BuildDependsOn Condition="$(BuildPackage) == 'true'">
|
||||
$(BuildDependsOn);
|
||||
BuildPackage;
|
||||
</BuildDependsOn>
|
||||
</PropertyGroup>
|
||||
|
||||
<Target Name="CheckPrerequisites">
|
||||
<!-- Raise an error if we're unable to locate nuget.exe -->
|
||||
<Error Condition="'$(DownloadNuGetExe)' != 'true' AND !Exists('$(NuGetExePath)')" Text="Unable to locate '$(NuGetExePath)'" />
|
||||
<!--
|
||||
Take advantage of MsBuild's build dependency tracking to make sure that we only ever download nuget.exe once.
|
||||
This effectively acts as a lock that makes sure that the download operation will only happen once and all
|
||||
parallel builds will have to wait for it to complete.
|
||||
-->
|
||||
<MsBuild Targets="_DownloadNuGet" Projects="$(MSBuildThisFileFullPath)" Properties="Configuration=NOT_IMPORTANT;DownloadNuGetExe=$(DownloadNuGetExe)" />
|
||||
</Target>
|
||||
|
||||
<Target Name="_DownloadNuGet">
|
||||
<DownloadNuGet OutputFilename="$(NuGetExePath)" Condition=" '$(DownloadNuGetExe)' == 'true' AND !Exists('$(NuGetExePath)')" />
|
||||
</Target>
|
||||
|
||||
<Target Name="RestorePackages" DependsOnTargets="CheckPrerequisites">
|
||||
<Exec Command="$(RestoreCommand)"
|
||||
Condition="'$(OS)' != 'Windows_NT' And Exists('$(PackagesConfig)')" />
|
||||
|
||||
<Exec Command="$(RestoreCommand)"
|
||||
LogStandardErrorAsError="true"
|
||||
Condition="'$(OS)' == 'Windows_NT' And Exists('$(PackagesConfig)')" />
|
||||
</Target>
|
||||
|
||||
<Target Name="BuildPackage" DependsOnTargets="CheckPrerequisites">
|
||||
<Exec Command="$(BuildCommand)"
|
||||
Condition=" '$(OS)' != 'Windows_NT' " />
|
||||
|
||||
<Exec Command="$(BuildCommand)"
|
||||
LogStandardErrorAsError="true"
|
||||
Condition=" '$(OS)' == 'Windows_NT' " />
|
||||
</Target>
|
||||
|
||||
<UsingTask TaskName="DownloadNuGet" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll">
|
||||
<ParameterGroup>
|
||||
<OutputFilename ParameterType="System.String" Required="true" />
|
||||
</ParameterGroup>
|
||||
<Task>
|
||||
<Reference Include="System.Core" />
|
||||
<Using Namespace="System" />
|
||||
<Using Namespace="System.IO" />
|
||||
<Using Namespace="System.Net" />
|
||||
<Using Namespace="Microsoft.Build.Framework" />
|
||||
<Using Namespace="Microsoft.Build.Utilities" />
|
||||
<Code Type="Fragment" Language="cs">
|
||||
<![CDATA[
|
||||
try {
|
||||
OutputFilename = Path.GetFullPath(OutputFilename);
|
||||
|
||||
Log.LogMessage("Downloading latest version of NuGet.exe...");
|
||||
WebClient webClient = new WebClient();
|
||||
webClient.DownloadFile("https://www.nuget.org/nuget.exe", OutputFilename);
|
||||
|
||||
return true;
|
||||
}
|
||||
catch (Exception ex) {
|
||||
Log.LogErrorFromException(ex);
|
||||
return false;
|
||||
}
|
||||
]]>
|
||||
</Code>
|
||||
</Task>
|
||||
</UsingTask>
|
||||
</Project>
|
@ -18,13 +18,11 @@ using System.Management.Automation;
|
||||
using OpenStack.Client.Powershell.Cmdlets.Common;
|
||||
using OpenStack.Storage;
|
||||
|
||||
|
||||
namespace Rackspace.Client.Powershell.Cmdlets
|
||||
namespace WidgetInc.Client.Powershell.Cmdlets
|
||||
{
|
||||
[Cmdlet("Hello", "RS", SupportsShouldProcess = true)]
|
||||
[Cmdlet("Hello", "WidgetInc", SupportsShouldProcess = true)]
|
||||
//[RequiredServiceIdentifierAttribute(OpenStack.Objects.Domain.Admin.Services.ObjectStorage)]
|
||||
public class HelloRackspaceCmdlet : BasePSCmdlet
|
||||
{
|
||||
public class HelloWidgetIncCmdlet : BasePSCmdlet {
|
||||
|
||||
//=========================================================================================
|
||||
/// <summary>
|
||||
@ -33,20 +31,20 @@ namespace Rackspace.Client.Powershell.Cmdlets
|
||||
//=========================================================================================
|
||||
protected override void ProcessRecord()
|
||||
{
|
||||
Console.WriteLine("Hello World, from Rackspace!");
|
||||
Console.WriteLine("Hello World, from WidgetInc!");
|
||||
if (this.CoreClient != null)
|
||||
{
|
||||
var client = this.CoreClient.CreateServiceClient<IStorageServiceClient>();
|
||||
//var client = this.CoreClient.CreateServiceClient<IStorageServiceClient>();
|
||||
|
||||
|
||||
var connectTask = client.GetStorageAccount();
|
||||
connectTask.Wait();
|
||||
//var connectTask = client.GetStorageAccount();
|
||||
//connectTask.Wait();
|
||||
|
||||
StorageAccount account = connectTask.Result;
|
||||
int h = 8;
|
||||
//StorageAccount account = connectTask.Result;
|
||||
//int h = 8;
|
||||
|
||||
|
||||
Console.WriteLine(this.Context.Settings.LocalTestDirectory);
|
||||
//Console.WriteLine(this.Context.Settings.LocalTestDirectory);
|
||||
|
||||
|
||||
|
@ -0,0 +1,16 @@
|
||||
<ServiceProvider name="WidgetInc" isDefault="false">
|
||||
<add key="AuthenticationServiceURI" value="https://region-a.geo-1.identity.hpcloudsvc.com:35357/v2.0/" displayName="Authentication Service URI" helpText ="" isMandatory="True"/>
|
||||
<add key="Username" value="" displayName="User name" helpText ="" isMandatory="True"/>
|
||||
<add key="Password" value="" displayName="Password" helpText ="" isMandatory="True" />
|
||||
<add key="DefaultTenantId" value="" displayName="Default Tenant Id" helpText ="" isMandatory="True"/>
|
||||
<AvailabilityZones>
|
||||
<AvailabilityZone id="1" isDefault="True" name="region-a.geo-1" shellForegroundColor="Green" />
|
||||
<AvailabilityZone id="2" isDefault="False" name="region-b.geo-1" shellForegroundColor="Green" />
|
||||
</AvailabilityZones>
|
||||
<ServiceMaps>
|
||||
<ServiceMap source="ObjectStorage" target="Object Storage"/>
|
||||
<ServiceMap source="ImageManagement" target="Image Management"/>
|
||||
<ServiceMap source="BlockStorage" target="Block Storage"/>
|
||||
<ServiceMap source="Compute" target="Compute"/>
|
||||
</ServiceMaps>
|
||||
</ServiceProvider>
|
@ -1,22 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<appSettings>
|
||||
<Testing>
|
||||
<add key="TestServerName" value="TestServer" />
|
||||
<add key="TestNetworkName" value="TestNetwork" />
|
||||
<add key="TestPortName" value="TestPort" />
|
||||
<add key="TestRouterName" value="TestRouterOO" />
|
||||
<add key="TestSecurityGroupName" value="TestSecurityGroup" />
|
||||
<add key="TestSnapshotName" value="TestSnapshot" />
|
||||
<add key="TestStorageContainerName" value="TestContainer" />
|
||||
<add key="TestSubnetName" value="TestSubnet" />
|
||||
<add key="TestVolumeName" value="TestVolume" />
|
||||
<add key="TestFilePath" value="e:\Projects\Testing\Anothertest.txt" />
|
||||
<add key="TestStorageContainerSecondaryName" value="b10" />
|
||||
<add key="LocalTestDirectory" value="Your moma" />
|
||||
<add key="TestImageId" value="5a1408cb-25f2-43a6-b1d9-931f5e47c871" />
|
||||
<add key="TestFlavorId" value="100" />
|
||||
</Testing>
|
||||
<appSettings>
|
||||
<StorageManagement>
|
||||
<add key="largeFileSize" value="314572800" />
|
||||
<add key="defSegmentNumber" value="16" />
|
||||
@ -30,16 +14,22 @@
|
||||
<add key="NewReleaseFolder" value="e:\" />
|
||||
<SharedContainers></SharedContainers>
|
||||
</StorageManagement>
|
||||
<IdentityServices>
|
||||
<ServiceProvider name="Rackspace" isDefault="true">
|
||||
<AvailabilityZones>
|
||||
<AvailabilityZone id="1" isDefault="True" name="Rregion-a.geo-1" shellForegroundColor="Green" />
|
||||
<AvailabilityZone id="2" isDefault="False" name="Rregion-b.geo-1" shellForegroundColor="Green" />
|
||||
</AvailabilityZones>
|
||||
<IdentityServices>
|
||||
<ServiceProvider name="WidgetInc" isDefault="true">
|
||||
<add key="AuthenticationServiceURI" value="" displayName="Authentication Service URI" isMandatory="true" />
|
||||
<add key="Username" value="" displayName="User name" isMandatory="true" />
|
||||
<add key="Password" value="" displayName="Password" isMandatory="true" />
|
||||
<add key="DefaultTenantId" value="" displayName="Default Tenant Id" isMandatory="true" />
|
||||
<AvailabilityZones>
|
||||
<AvailabilityZone id="1" isDefault="True" name="Rregion-a.geo-1" shellForegroundColor="Green" />
|
||||
<AvailabilityZone id="2" isDefault="False" name="Rregion-b.geo-1" shellForegroundColor="Green" />
|
||||
</AvailabilityZones>
|
||||
<ServiceMaps>
|
||||
<ServiceMap source="ObjectStorage" target="Object Storage"/>
|
||||
<ServiceMap source="ImageManagement" target="Image Management"/>
|
||||
<ServiceMap source="BlockStorage" target="Block Storage"/>
|
||||
<ServiceMap source="Compute" target="Compute"/>
|
||||
</ServiceMaps>
|
||||
</ServiceProvider>
|
||||
</IdentityServices>
|
||||
<ComputeServices>
|
||||
@ -47,10 +37,6 @@
|
||||
<add key="LogReadAttemptIntervalInMilliSeconds" value="40000" />
|
||||
<add key="EnableCredentialTracking" value="true" />
|
||||
<add key="SSHClientPath" value="C:\Users\tplummer\Desktop\Utilities\Putty.exe" />
|
||||
</ComputeServices>
|
||||
<!--<AvailabilityZones>
|
||||
<AvailabilityZone id="1" isDefault="True" name="region-a.geo-1" shellForegroundColor="Green" />
|
||||
<AvailabilityZone id="2" isDefault="False" name="region-b.geo-1" shellForegroundColor="Green" />
|
||||
</AvailabilityZones>-->
|
||||
</ComputeServices>
|
||||
</appSettings>
|
||||
</configuration>
|
@ -0,0 +1,25 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Do not remove this test for UTF-8: if “Ω” doesn’t appear as greek uppercase omega letter enclosed in quotation marks, you should use an editor that supports UTF-8, not this one. -->
|
||||
<package>
|
||||
<metadata>
|
||||
<id>widget-cli-powershell</id>
|
||||
<title>widget-cli-powershell</title>
|
||||
<version>2.0.0</version>
|
||||
<authors>Lateralus</authors>
|
||||
<owners>thatGuy</owners>
|
||||
<summary>Thid package allows Users to manage their Openstack environments from the Powershell command line.</summary>
|
||||
<description>Thid package allows Users to manage their Openstack environments from the Powershell command line.</description>
|
||||
<tags>OpenStack Powershell CLI Windows</tags>
|
||||
<copyright>2014</copyright>
|
||||
<licenseUrl>http://www.apache.org/licenses/LICENSE-2.0</licenseUrl>
|
||||
<requireLicenseAcceptance>false</requireLicenseAcceptance>
|
||||
<!--<iconUrl>https://raw.github.com/__CHOCO_PKG_OWNER_REPO__/master/__NAME__/__NAME__.png</iconUrl>-->
|
||||
<!--<dependencies>
|
||||
<dependency id="" version="" />
|
||||
</dependencies>-->
|
||||
<releaseNotes>This first release demonstrates the Mutli-Vendor functionality as well as a Read-onoly version of the ObjectStorage Provider.</releaseNotes>
|
||||
</metadata>
|
||||
<files>
|
||||
<file src="tools\**" target="tools" />
|
||||
</files>
|
||||
</package>
|
@ -1,9 +1,9 @@
|
||||
@{
|
||||
ModuleToProcess = 'HP.OpenStack.Client.Powershell.dll'
|
||||
ModuleToProcess = 'WidgetInc.OpenStack.Client.Powershell.dll'
|
||||
GUID="{847a28a4-6407-4aa6-8070-a4a51396db70}"
|
||||
Author="Travis Plummer"
|
||||
CompanyName="Hewlett-Packard Corporation"
|
||||
Copyright="© Hewlett-Packard. All rights reserved."
|
||||
Author="Lateralus"
|
||||
CompanyName="WidgetInc Corporation"
|
||||
Copyright="© WidgetInc. All rights reserved."
|
||||
ModuleVersion="1.0.0.0"
|
||||
PowerShellVersion="2.0"
|
||||
CLRVersion="4.0.30319"
|
@ -0,0 +1,38 @@
|
||||
|
||||
# Install the Extensions Package...
|
||||
|
||||
$packageName = 'widget-cli-powershell'
|
||||
$installerType = 'msi'
|
||||
$url = $env:USERPROFILE + '\Source\Builds\WidgetInc.Openstack.Deployment.msi'
|
||||
$silentArgs = '/quiet'
|
||||
$validExitCodes = @(0)
|
||||
|
||||
Install-ChocolateyPackage "$packageName" "$installerType" "$silentArgs" "$url" -validExitCodes $validExitCodes
|
||||
|
||||
try
|
||||
{
|
||||
# Add the extensions location to PSModulePath for easy loading later on..
|
||||
|
||||
$p = [Environment]::GetEnvironmentVariable("PSModulePath")
|
||||
$p += ";" + $env:USERPROFILE + "\Documents\WindowsPowerShell\Modules\WidgetInc"
|
||||
[Environment]::SetEnvironmentVariable("PSModulePath", $p)
|
||||
|
||||
# Import our Openstack.Client.Powershell assembly. This has the ConfigurationMAnager type which lets you
|
||||
# register your Service Provider information.
|
||||
|
||||
$configManagerAsmPath = $env:USERPROFILE + "\Documents\WindowsPowerShell\Modules\Openstack-core\Openstack.Client.Powershell.dll"
|
||||
add-type -Path ($configManagerAsmPath)
|
||||
|
||||
# Register the Service Provider. This requires the Extension Author to have a ServiceProvider.xml definition file in the
|
||||
# Deployment Folder.
|
||||
|
||||
$serviceProviderPath = $env:USERPROFILE + "\Documents\WindowsPowerShell\Modules\WidgetInc\Deployment\ServiceProvider.xml"
|
||||
$manager = New-Object -TypeName OpenStack.Client.Powershell.Utility.ConfigurationManager
|
||||
$manager.WriteServiceProvider($serviceProviderPath)
|
||||
Write-ChocolateySuccess "$packageName"
|
||||
}
|
||||
catch
|
||||
{
|
||||
Write-ChocolateyFailure "$packageName" "$($_.Exception.Message)"
|
||||
throw
|
||||
}
|
Binary file not shown.
@ -5,11 +5,11 @@ using System.Runtime.InteropServices;
|
||||
// General Information about an assembly is controlled through the following
|
||||
// set of attributes. Change these attribute values to modify the information
|
||||
// associated with an assembly.
|
||||
[assembly: AssemblyTitle("Rackspace.Client.Powershell")]
|
||||
[assembly: AssemblyTitle("WidgetInc.Client.Powershell")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("Rackspace.Client.Powershell")]
|
||||
[assembly: AssemblyProduct("WidgetInc.Client.Powershell")]
|
||||
[assembly: AssemblyCopyright("Copyright © 2014")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
@ -1,17 +1,12 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Security;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using Openstack.Client.Powershell.Utility;
|
||||
using OpenStack.Client.Powershell.Utility;
|
||||
using OpenStack.Identity;
|
||||
|
||||
namespace Rackspace.Client.Powershell.Utility
|
||||
namespace WidgetInc.Client.Powershell.Utility
|
||||
{
|
||||
[ServiceProviderAttribute("Rackspace")]
|
||||
public class RackspaceRegistrationManager : RegistrationManager
|
||||
[ServiceProviderAttribute("WidgetInc")]
|
||||
public class WidgetIncRegistrationManager : RegistrationManager
|
||||
{
|
||||
public override RegistrationResponse Register(ServiceProvider serviceProvider)
|
||||
{
|
||||
@ -25,14 +20,6 @@ namespace Rackspace.Client.Powershell.Utility
|
||||
|
||||
return new RegistrationResponse(credential, serviceProvider);
|
||||
}
|
||||
|
||||
private SecureString GetSecureString(string password)
|
||||
{
|
||||
SecureString securePassword = new SecureString();
|
||||
password.ToCharArray().ToList().ForEach(securePassword.AppendChar);
|
||||
return SecureStringHelper.ConvertToSecureString(password);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -7,8 +7,8 @@
|
||||
<ProjectGuid>{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}</ProjectGuid>
|
||||
<OutputType>Library</OutputType>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<RootNamespace>Rackspace.Client.Powershell</RootNamespace>
|
||||
<AssemblyName>Rackspace.Openstack.Client.Powershell</AssemblyName>
|
||||
<RootNamespace>WidgetInc.Client.Powershell</RootNamespace>
|
||||
<AssemblyName>WidgetInc.Openstack.Client.Powershell</AssemblyName>
|
||||
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
||||
<FileAlignment>512</FileAlignment>
|
||||
<SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
|
||||
@ -18,7 +18,7 @@
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>full</DebugType>
|
||||
<Optimize>false</Optimize>
|
||||
<OutputPath>..\..\..\..\..\Documents\WindowsPowerShell\Modules\Openstack\Rackspace\</OutputPath>
|
||||
<OutputPath>..\..\..\..\Documents\WindowsPowerShell\Modules\WidgetInc\</OutputPath>
|
||||
<DefineConstants>DEBUG;TRACE</DefineConstants>
|
||||
<ErrorReport>prompt</ErrorReport>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
@ -34,10 +34,9 @@
|
||||
<ItemGroup>
|
||||
<Reference Include="Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<HintPath>..\packages\Newtonsoft.Json.6.0.2\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
<HintPath>..\packages\Newtonsoft.Json.6.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="OpenStack, Version=0.9.1.0, Culture=neutral, PublicKeyToken=baf191d8aca7391c, processorArchitecture=MSIL">
|
||||
<SpecificVersion>False</SpecificVersion>
|
||||
<Reference Include="OpenStack">
|
||||
<HintPath>..\packages\OpenStack-SDK-DotNet.0.9.1.0\lib\net40\OpenStack.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
@ -62,17 +61,19 @@
|
||||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Cmdlets\HelloRackspaceCmdlet.cs" />
|
||||
<Compile Include="Cmdlets\HelloWidgetIncCmdlet.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Utility\RackspaceRegistrationManager.cs" />
|
||||
<Compile Include="Utility\WidgetIncRegistrationManager.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="app.config" />
|
||||
<None Include="Deployment\Rackspace.config">
|
||||
<None Include="Deployment\tools\chocolateyInstall.ps1" />
|
||||
<None Include="Deployment\WidgetInc.config">
|
||||
<SubType>Designer</SubType>
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="Deployment\Rackspace.psd1">
|
||||
<None Include="Deployment\WidgetInc.nuspec" />
|
||||
<None Include="Deployment\WidgetInc.psd1">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</None>
|
||||
<None Include="packages.config" />
|
||||
@ -83,10 +84,16 @@
|
||||
<Name>Openstack.Client.Powershell</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="Deployment\ServiceProvider.xml">
|
||||
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||
</Content>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||
<Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition="Exists('$(SolutionDir)\.nuget\NuGet.targets')" />
|
||||
<PropertyGroup>
|
||||
<PostBuildEvent>copy .\Deployment\Rackspace.psd1 C:\Users\tplummer\Documents\WindowsPowerShell\Modules\Openstack\Rackspace\Rackspace.psd1</PostBuildEvent>
|
||||
<PostBuildEvent>md %25USERPROFILE%25\Documents\WindowsPowerShell\Modules\WidgetInc
|
||||
copy .\Deployment\WidgetInc.psd1 %25USERPROFILE%25\Documents\WindowsPowerShell\Modules\WidgetInc\WidgetInc.psd1</PostBuildEvent>
|
||||
</PropertyGroup>
|
||||
<Import Project="..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets" Condition="Exists('..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets')" />
|
||||
<Target Name="EnsureBclBuildImported" BeforeTargets="BeforeBuild" Condition="'$(BclBuildImported)' == ''">
|
@ -0,0 +1,29 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2013
|
||||
VisualStudioVersion = 12.0.30501.0
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WidgetInc.Openstack.Client.Powershell", "WidgetInc.Openstack.Client.Powershell.csproj", "{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".nuget", ".nuget", "{CF5FC33F-FBA8-4028-A6D5-D6D8002DB57E}"
|
||||
ProjectSection(SolutionItems) = preProject
|
||||
.nuget\NuGet.Config = .nuget\NuGet.Config
|
||||
.nuget\NuGet.exe = .nuget\NuGet.exe
|
||||
.nuget\NuGet.targets = .nuget\NuGet.targets
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
11
WidgetInc.Openstack.Client.Powershell/app.config
Normal file
11
WidgetInc.Openstack.Client.Powershell/app.config
Normal file
@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
@ -3,6 +3,6 @@
|
||||
<package id="Microsoft.Bcl" version="1.1.9" targetFramework="net45" />
|
||||
<package id="Microsoft.Bcl.Build" version="1.0.14" targetFramework="net45" />
|
||||
<package id="Microsoft.Net.Http" version="2.2.22" targetFramework="net45" />
|
||||
<package id="Newtonsoft.Json" version="6.0.2" targetFramework="net45" />
|
||||
<package id="OpenStack-SDK-DotNet" version="0.9.0.0" targetFramework="net45" />
|
||||
<package id="Newtonsoft.Json" version="6.0.3" targetFramework="net45" />
|
||||
<package id="OpenStack-SDK-DotNet" version="0.9.1.0" targetFramework="net45" />
|
||||
</packages>
|
@ -0,0 +1,20 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 11.00
|
||||
# Visual Studio 2010
|
||||
Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "WidgetInc.Openstack.Deployment", "WidgetInc.Openstack.Deployment\WidgetInc.Openstack.Deployment.vdproj", "{1896E037-7922-4FA5-8B1A-56C8841F0113}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Default = Debug|Default
|
||||
Release|Default = Release|Default
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{1896E037-7922-4FA5-8B1A-56C8841F0113}.Debug|Default.ActiveCfg = Debug
|
||||
{1896E037-7922-4FA5-8B1A-56C8841F0113}.Debug|Default.Build.0 = Debug
|
||||
{1896E037-7922-4FA5-8B1A-56C8841F0113}.Release|Default.ActiveCfg = Release
|
||||
{1896E037-7922-4FA5-8B1A-56C8841F0113}.Release|Default.Build.0 = Release
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
File diff suppressed because it is too large
Load Diff
65
openstack-cli-powershell.sln
Normal file
65
openstack-cli-powershell.sln
Normal file
@ -0,0 +1,65 @@
|
||||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2013
|
||||
VisualStudioVersion = 12.0.30501.0
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Core Functionality", "Core Functionality", "{E34080DF-5386-4484-8BE1-25A38A47FF72}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Extensions (examples)", "Extensions (examples)", "{9A68856A-BE71-4EDB-9281-5D5331379DCA}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "AcmeInc", "AcmeInc", "{7213BD80-6393-4DD3-8835-6AC37BC0F804}"
|
||||
EndProject
|
||||
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WidgetInc", "WidgetInc", "{29141AFB-8FAF-4E7F-8748-EA65E5FD3F3A}"
|
||||
EndProject
|
||||
Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "WidgetInc.Openstack.Deployment", "..\WidgetInc.Openstack.Deployment\WidgetInc.Openstack.Deployment\WidgetInc.Openstack.Deployment.vdproj", "{1896E037-7922-4FA5-8B1A-56C8841F0113}"
|
||||
EndProject
|
||||
Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "Openstack.Client.Powershell.Deployment", "..\Openstack.Client.Powershell.Deployment\Openstack.Client.Powershell.Deployment\Openstack.Client.Powershell.Deployment.vdproj", "{ED796A88-B8B7-49FC-9B16-2FD43492DADB}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Openstack.Client.Powershell", "Openstack.Client.Powershell\Openstack.Client.Powershell.csproj", "{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AcmeInc.Openstack.Client.Powershell", "AcmeInc.Openstack.Client.Powershell\AcmeInc.Openstack.Client.Powershell.csproj", "{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WidgetInc.Openstack.Client.Powershell", "WidgetInc.Openstack.Client.Powershell\WidgetInc.Openstack.Client.Powershell.csproj", "{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}"
|
||||
EndProject
|
||||
Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "AcmeInc.Openstack.Deployment", "AcmeInc.Openstack.Deployment\AcmeInc.Openstack.Deployment\AcmeInc.Openstack.Deployment.vdproj", "{D2DB9636-72E1-47E2-98E8-E23AFD996109}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
TransformTool Build|Any CPU = TransformTool Build|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.TransformTool Build|Any CPU.ActiveCfg = TransformTool Build|Any CPU
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD}.TransformTool Build|Any CPU.Build.0 = TransformTool Build|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.TransformTool Build|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD}.TransformTool Build|Any CPU.Build.0 = Release|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.TransformTool Build|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF}.TransformTool Build|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(NestedProjects) = preSolution
|
||||
{7213BD80-6393-4DD3-8835-6AC37BC0F804} = {9A68856A-BE71-4EDB-9281-5D5331379DCA}
|
||||
{29141AFB-8FAF-4E7F-8748-EA65E5FD3F3A} = {9A68856A-BE71-4EDB-9281-5D5331379DCA}
|
||||
{1896E037-7922-4FA5-8B1A-56C8841F0113} = {29141AFB-8FAF-4E7F-8748-EA65E5FD3F3A}
|
||||
{ED796A88-B8B7-49FC-9B16-2FD43492DADB} = {E34080DF-5386-4484-8BE1-25A38A47FF72}
|
||||
{32BAC168-2EC8-4074-9E6D-8C13460DCFAD} = {E34080DF-5386-4484-8BE1-25A38A47FF72}
|
||||
{B6C5D486-BEDE-4E4F-8035-63B72513E4BD} = {7213BD80-6393-4DD3-8835-6AC37BC0F804}
|
||||
{8E2903DF-9FB6-48F8-85BF-FD2422BE38AF} = {29141AFB-8FAF-4E7F-8748-EA65E5FD3F3A}
|
||||
{D2DB9636-72E1-47E2-98E8-E23AFD996109} = {7213BD80-6393-4DD3-8835-6AC37BC0F804}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
Loading…
Reference in New Issue
Block a user