[ 
https://issues.apache.org/jira/browse/NPANDAY-480?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Lars Corneliussen updated NPANDAY-480:
--------------------------------------

    Description: 
We want to build and package Azure Projects using NPanday. What that exactly 
means still has to be figured out here.

h2. High-level requirements

* NPanday Addin must support Azure project types (*.ccproj + 
ServiceConfiguration)
* NPanday must support Azure Packaging Type (-> *.cspkg) including an 
appropriate lifecycle until package-phase (publish is excluded!)
* NPanday should resolve all roles though Maven dependency mechanism.
-- Web Roles should be resolved as (msdeploy-package) ((!) requires NPANDAY-488)
-- Worker roles should be resolved as (dotnet-library)
-- Silverlight?

* The addin must be able to import Azure Cloud Service Projects *.ccproj -> 
generate pom.xml
* The addin must be able to track changes on Azure Projects (Add/Remove Roles)

* The addin must be able to import .NET 4.0/C#/VB Azure WCF Service Web Role 
Projects
* The addin must be able to import .NET 4.0/C#/VB Azure Worker Role Projects
* The addin must be able to import .NET 4.0/C#/VB Azure Web Role Silverlight 
Business Application Projects

*Optional*
* The addin should be able to import .NET 4.0/C#/VB Azure ASP.NET MVC 2 Web 
Role Projects
* The addin should be able to import .NET 4.0/C#/VB Azure ASP.NET MVC 3 Web 
Role Projects

*Limitations*
* {color:red}*Support for .NET 3.5 is not planned, but could be added later if 
needed*{color}
* {color:red}*Support Azure SDKs < 1.6 is not planned, but could be added later 
if needed*{color}
* Support of new Azure Tools will most certainly require new NPanday release; 
additional configuration can also be provided locally, though (-> NPANDAY-499)

h2. Flow

To test how this could work out, I used the custom lifecycle plugin plus 
registration of {azure-cloud-service} as package type for *.cspkg. Then, as 
soon as we know how this should exactly work, we can start creating the needed 
plugins.

*prepare-package*

- {dependency:copy-dependencies} resolve web roles as msdeploy.zip)
- {exec:exec: msdeploy -verb:sync -source:package=<resolved web role pkg> 
-dest:dirPath:<tmpdir>}

*package*

- {exec:exec: cspack ServiceDefinition.csdef /out:<final-name> /role:<webrole> 
/sites:<unpacked msdeploy package>}

h2. Just some notes

* It seems like MSBuild CCPack task handles the packaging:
(on my machine: {{{C:\Program Files 
(x86)\MSBuild\Microsoft\VisualStudio\v10.0\Windows Azure Tools\1.6}}} 
* (!) It looks like Azure Packaging also packages the WebRoles by obtaining the 
files to be packaged from the MSBUILD PROJECT FILES!!!

  was:
We want to build and package Azure Projects using NPanday. What that exactly 
means still has to be figured out here.

h2. High-level requirements

* NPanday Addin must support Azure project types (*.ccproj + 
ServiceConfiguration)
* NPanday must support Azure Packaging Type (-> *.cspkg) including an 
appropriate lifecycle until package-phase (publish is excluded!)
* NPanday should resolve all roles though Maven dependency mechanism.
-- Web Roles should be resolved as (msdeploy-package) ((!) requires NPANDAY-488)
-- Worker roles should be resolved as (dotnet-library)
-- Silverlight?

* The addin must be able to import Azure Cloud Service Projects *.ccproj -> 
generate pom.xml
* The addin must be able to track changes on Azure Projects (Add/Remove Roles)


*Optional?*
* The addin should be able to import .NET 4.0/C# Azure ASP.NET MVC 2 Web Role 
Projects
* The addin should be able to import .NET 4.0/C# Azure ASP.NET MVC 3 Web Role 
Projects
* The addin should be able to import .NET 4.0/C# Azure Web Role Silverlight 
Business Application Projects
* The addin should be able to import .NET 4.0/C# Azure WCF Service Web Role 
Projects
* The addin should be able to import .NET 4.0/C# Azure Worker Role Projects

{panel:title=What about VB and .NET 3.5?| borderStyle=dashed| borderColor=#ccc| 
titleBGColor=#F7D6C1| bgColor=#FFFFCE}
All six Azure project types also exist for VB (.NET 4.0), four of them also run 
on .NET 3.5 (MVC 3 and Silverlight are not available on .NET 3.5).

Which combinations are required?
{panel} 

{panel:title=Azure SDK Version?| borderStyle=dashed| borderColor=#ccc| 
titleBGColor=#F7D6C1| bgColor=#FFFFCE}
The current Version is 1.6. (as of Nov 2011).

Do we need to support earlier versions?
$(MSBuildExtensionsPath)\Microsoft\Cloud Service\1.0\Visual Studio 10.0\
{panel} 

h2. Flow

To test how this could work out, I used the custom lifecycle plugin plus 
registration of {azure-cloud-service} as package type for *.cspkg. Then, as 
soon as we know how this should exactly work, we can start creating the needed 
plugins.

*prepare-package*

- {dependency:copy-dependencies} resolve web roles as msdeploy.zip)
- {exec:exec: msdeploy -verb:sync -source:package=<resolved web role pkg> 
-dest:dirPath:<tmpdir>}

*package*

- {exec:exec: cspack ServiceDefinition.csdef /out:<final-name> /role:<webrole> 
/sites:<unpacked msdeploy package>}

h2. Just some notes

* It seems like MSBuild CCPack task handles the packaging:
(on my machine: {{{C:\Program Files 
(x86)\MSBuild\Microsoft\VisualStudio\v10.0\Windows Azure Tools\1.6}}} 
* (!) It looks like Azure Packaging also packages the WebRoles by obtaining the 
files to be packaged from the MSBUILD PROJECT FILES!!!

* more to come...

    
> Support Windows Azure Cloud Service Project and Packaging (CCPack)
> ------------------------------------------------------------------
>
>                 Key: NPANDAY-480
>                 URL: https://issues.apache.org/jira/browse/NPANDAY-480
>             Project: NPanday
>          Issue Type: New Feature
>          Components: Maven Plugins, Visual Studio Add-in
>    Affects Versions: 1.4-incubating
>         Environment: Visual Studio 2010 + Windows Azure Tools + MVN 2/3
>            Reporter: Lars Corneliussen
>            Assignee: Lars Corneliussen
>              Labels: azure
>             Fix For: 1.5.0-incubating
>
>
> We want to build and package Azure Projects using NPanday. What that exactly 
> means still has to be figured out here.
> h2. High-level requirements
> * NPanday Addin must support Azure project types (*.ccproj + 
> ServiceConfiguration)
> * NPanday must support Azure Packaging Type (-> *.cspkg) including an 
> appropriate lifecycle until package-phase (publish is excluded!)
> * NPanday should resolve all roles though Maven dependency mechanism.
> -- Web Roles should be resolved as (msdeploy-package) ((!) requires 
> NPANDAY-488)
> -- Worker roles should be resolved as (dotnet-library)
> -- Silverlight?
> * The addin must be able to import Azure Cloud Service Projects *.ccproj -> 
> generate pom.xml
> * The addin must be able to track changes on Azure Projects (Add/Remove Roles)
> * The addin must be able to import .NET 4.0/C#/VB Azure WCF Service Web Role 
> Projects
> * The addin must be able to import .NET 4.0/C#/VB Azure Worker Role Projects
> * The addin must be able to import .NET 4.0/C#/VB Azure Web Role Silverlight 
> Business Application Projects
> *Optional*
> * The addin should be able to import .NET 4.0/C#/VB Azure ASP.NET MVC 2 Web 
> Role Projects
> * The addin should be able to import .NET 4.0/C#/VB Azure ASP.NET MVC 3 Web 
> Role Projects
> *Limitations*
> * {color:red}*Support for .NET 3.5 is not planned, but could be added later 
> if needed*{color}
> * {color:red}*Support Azure SDKs < 1.6 is not planned, but could be added 
> later if needed*{color}
> * Support of new Azure Tools will most certainly require new NPanday release; 
> additional configuration can also be provided locally, though (-> NPANDAY-499)
> h2. Flow
> To test how this could work out, I used the custom lifecycle plugin plus 
> registration of {azure-cloud-service} as package type for *.cspkg. Then, as 
> soon as we know how this should exactly work, we can start creating the 
> needed plugins.
> *prepare-package*
> - {dependency:copy-dependencies} resolve web roles as msdeploy.zip)
> - {exec:exec: msdeploy -verb:sync -source:package=<resolved web role pkg> 
> -dest:dirPath:<tmpdir>}
> *package*
> - {exec:exec: cspack ServiceDefinition.csdef /out:<final-name> 
> /role:<webrole> /sites:<unpacked msdeploy package>}
> h2. Just some notes
> * It seems like MSBuild CCPack task handles the packaging:
> (on my machine: {{{C:\Program Files 
> (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Windows Azure Tools\1.6}}} 
> * (!) It looks like Azure Packaging also packages the WebRoles by obtaining 
> the files to be packaged from the MSBUILD PROJECT FILES!!!

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to