Strumento da riga di comando CSPack
Aggiornamento: giugno 2011
Lo strumento da riga di comando CSPack (Cspack.exe) consente di preparare un'applicazione per la distribuzione. L'utilizzo dello strumento CSPack varia in base a dove si desidera distribuire l'applicazione.
-
Per preparare l'applicazione per la distribuzione a Emulatore di calcolo Windows Azure, utilizzare lo strumento CSPack per copiare i file binari in una struttura di directory.
-
Per preparare l'applicazione per la distribuzione a Windows Azure, utilizzare lo strumento CSPack per generare un file di pacchetto che viene caricato in Windows Azure.
Se SDK è stato installato nel percorso predefinito, lo strumento CSPack sarà disponibile in C:\Programmi\Windows Azure SDK\<versione SDK>\bin\cspack.exe.
CSPack <DefinitionFile> [options]
Nella tabella seguente sono elencate le opzioni per lo strumento CSPack. Per visualizzare l'elenco di opzioni più recente, digitare CSPack /? a un prompt dei comandi dal percorso di installazione.
| Opzione | Descrizione |
|---|---|
| /out:<file> | directory> | Questa opzione indica il formato di output e il percorso per i file binari del ruolo. Quando l'opzione /copyOnly viene specificata insieme a questa opzione, lo strumento CSPack crea la directory di output denominata e copia i file binari del ruolo in quella directory. Se /copyOnly non viene specificato, questa opzione specifica il nome file del pacchetto di applicazioni. Se non è specificato alcun nome file, il pacchetto di applicazioni viene creato come <nome-file-definizione-servizio>.cspkg. |
| /copyOnly | Quando viene specificata questa opzione, lo strumento CSPack crea una struttura di directory per i file binari del ruolo che vengono utilizzati da emulatore di calcolo per eseguire in locale l'applicazione. Se non è specificato alcun percorso di output con l'opzione /out, lo strumento CSPack crea una directory denominata <nome-file-definizione-servizio>.csx. |
| /role:<RoleName>;[<RoleBinariesDirectory>];[<RoleEntryPointDLL>] | Quando viene specificata questa opzione, lo strumento CSPack crea una struttura di directory per i file binari del ruolo che vengono utilizzati da emulatore di calcolo per eseguire in locale l'applicazione. Se non è specificato alcun percorso di output con l'opzione /out, lo strumento CSPack crea una directory denominata <nome-file-definizione-servizio>.csx. |
| /roleFiles:<RoleName>;<RoleFileList> | Questa opzione specifica un file che include il set dei percorsi dei file che costituiscono il ruolo. Nella riga di comando è possibile includere un'opzione /roleFiles per ogni ruolo indicato nel file di definizione. Per specificare la DLL che definisce il punto di ingresso del ruolo, utilizzare l'opzione /rolePropertiesFile insieme all'opzione /roleFiles. Il parametro <RoleFileList> specifica un file di testo locale semplice dove ogni riga è nel seguente formato: <InputPath>;<TargetPath> È possibile che <InputPath> sia un percorso assoluto o un percorso relativo di un file che costituisce il ruolo. Se <InputPath> è relativo, è relativo rispetto al percorso del file specificato da <RoleFileList>. <TargetPath> è un percorso relativo che specifica dove è necessario posizionare il file al quale fa riferimento <InputPath> nel pacchetto del servizio. Se si specifica l'opzione /roleFiles, non è necessario specificare anche l'opzione /role. |
| /rolePropertiesFile:<RoleName>;<RolePropertyFile> | Questa opzione specifica un file che contiene un elenco di proprietà per un ruolo. L'opzione /rolePropertiesFile deve essere specificata insieme all'opzione /roleFiles. Nel file di proprietà del ruolo è possibile specificare la DLL contenente il punto di ingresso al ruolo e la versione del .NET Framework di destinazione che verrà utilizzata per eseguire il ruolo. Il parametro <RolePropertyFile> specifica un file di testo locale semplice dove ogni riga è nel seguente formato: <PropertyName>=<PropertyValue> Per i dettagli sui nomi e sui valori di proprietà validi, vedere la sezione Note. |
| /sitePhysicalDirectories:<RoleName>;<VirtualPath1>; | Questa opzione abilita la definizione di directory fisiche per ogni percorso virtuale definito nella sezione Sites. Ogni elemento Site, VirtualDirectory e VirtualApplication crea un percorso virtuale (denominato anche percorso di posizione nell'elemento posizione di web.config). Per ulteriori informazioni sull'utilizzo dell'elemento Site, vedere Come configurare la voce del sito nel file di definizione del servizio. |
| /sites:<RoleName>;<SiteName>;<VirtualPath1>; | Questa opzione abilita il mapping del contenuto presente nelle directory fisiche alle directory virtuali del sito Web. Ogni elemento Site, VirtualDirectory e VirtualApplication viene aggiunto nell'ordine in cui sono definiti per creare percorsi virtuali (denominato anche percorso di posizione nell'elemento posizione di web.config). VirtualPath1 esegue il mapping al nome del sito come definito dall'attributo nome dell'elemento <Site> nel file di definizione del servizio. PhysicalPath1 è il percorso dei contenuti di Site. Per ulteriori informazioni sull'utilizzo dell'elemento Site, vedere Come configurare la voce del sito nel file di definizione del servizio. |
| /generateConfigurationFile:<ConfigurationFile> | Questa opzione è utilizzata per generare una bozza di file di configurazione per un'applicazione. Modificare il file generato per specificare i valori delle impostazioni e il numero delle istanze del ruolo nell'applicazione prima di distribuirla. |
| /allowLegacyWebRoles | Questo flag omette gli avvisi generati per un pacchetto contenente ruoli Web legacy in esecuzione in un HWC (Hostable Web Core). È possibile eseguire le istanze del ruolo in un HWC (Hostable Web Core) tramite questa opzione o è possibile aggiungere l'elemento Sites alla definizione del servizio. |
| /sslthumbprint:<Thumbprint> | Questa opzione è obsoleta. Vedere Panoramica dei certificati in Windows Azure per le informazioni sull'associazione dei certificati all'applicazione. |
| /certui:<Thumbprint> | Questa opzione è obsoleta. Vedere Panoramica dei certificati in Windows Azure per le informazioni sull'associazione dei certificati all'applicazione. |
È possibile specificare le seguenti proprietà nel file di proprietà del ruolo:
| Nome proprietà | Valore proprietà | Esempi |
|---|---|---|
| TargetFrameWorkVersion | Numero che indica la versione di .NET Framework che verrà utilizzata per eseguire il ruolo. Il formato per l'impostazione di questa proprietà è TargetFrameWorkVersion=vMajor.Minor, dove Major fa riferimento al numero della versione principale e Minor fa riferimento al numero della versione secondaria. | TargetFrameWorkVersion=v4.0 TargetFrameWorkVersion=v3.5 |
| EntryPoint | Il nome della DLL che ha la funzione di punto di ingresso nel ruolo. Il formato per l'impostazione di questa proprietà è EntryPoint=DLLFileName, dove DLLFileName è una stringa che specifica il nome file della DLL. | EntryPoint=myroleentrypoint.dl |
Importante |
|---|
| Se una chiamata a CSPack eseguita regolarmente in Windows Azure SDK 1.1 non riesce dopo l'aggiornamento a Windows Azure SDK 1.2 o versioni successive, è possibile che non è stata specificata correttamente la versione del .NET Framework di destinazione per CSPack. Per impostazione predefinita di CSPack, si suppone che il codice del servizio sia stato compilato in .NET 3.5. Se il codice è stato compilato in .NET 4, è necessario specificare questa informazione creando un file delle proprietà del ruolo e includendo l'opzione /rolePropertiesFile sulla riga di comando. |
Negli esempi seguenti viene mostrato come includere manualmente in un pacchetto diversi esempi di codice di Windows Azure SDK dalla riga di comando utilizzando lo strumento CSPack.
Nell'esempio seguente viene mostrato come includere in un pacchetto l'esempio HelloWorld per la distribuzione nell'ambiente di sviluppo:
c:\samples\HelloWorld>cspack HelloWorld\ServiceDefinition.csdef /out:HelloWorld.csx /role:HelloWorld_WebRole;HelloWorld_WebRole /sites:HelloWorld_WebRole;Web;d:\HelloWorld_WebRole\HelloWorld_WebRole /copyOnly
Nell'esempio seguente viene mostrato come includere in un pacchetto l'esempio HelloWorld per la distribuzione in Windows Azure:
c:\samples\HelloWorld>cspack HelloWorld\ServiceDefinition.csdef /out:HelloWorld.cspkg /role:HelloWorld_WebRole;HelloWorld_WebRole /sites:HelloWorld_WebRole;Web;d:\HelloWorld_WebRole\HelloWorld_WebRole
Negli esempi seguenti viene mostrato come includere in un pacchetto esempi di codice che comprendono un ruolo di lavoro:
c:\samples\HelloFabric>cspack HelloFabric\ServiceDefinition.csdef /role:HelloFabric_WorkerRole;HelloFabric_WorkerRole\bin\Debug;HelloFabric_WorkerRole.dll /out:HelloFabric.cspkg
c:\samples\Thumbnails>cspack ThumbnailsWorkerOnly\ServiceDefinition.csdef /role:Thumbnails_WorkerRole;Thumbnails_WorkerRole\bin\Debug;Thumbnails_WorkerRole.dll /out:ThumbnailsWorkerOnly.cspkg
Vedere anche
Importante