2015-02-17 11 views
7

Ho un progetto mvc ASPNET che utilizza sia Nuget che Bower per le dipendenze. Ora ho bisogno di innescare bower per installare i componenti al momento dell'implementazione o come fallback includere i pacchetti permettendoli nel mio .gitignore. Ovviamente non vorrei includere quelli nel repository e semplicemente installarli durante la distribuzione, proprio come con i pacchetti di nuget. Ho provato a seguire questa guida http://gregtrowbridge.com/deploying-a-bower-dependent-node-app-on-windows-azure/ ma ancora non sembra accadere nulla. Quindi ogni aiuto è benvenuto :)Distribuire il sito Web in blu con dipendenze bower

migliori saluti

+0

stai usando git per distribuire il tuo sito? – ahmelsayed

+0

Sì distribuzione git normale da bitbucket –

risposta

12

tutti i siti web Azure lavoratori hanno scrigno di pre-installato e dovrebbe essere sul vostro cammino.

Tutto quello che dovete fare è aggiungere uno script di distribuzione personalizzato che farebbe bower install Here is a sample repo for an ASP.NET MVC site that uses bower

Fondamentalmente assicurarsi bower.json c'è e referenced in your csproj

<Content Include="bower.json" /> 

quindi scaricare lo script di distribuzione personalizzato. se si va a https://<yourSiteName>.scm.azurewebsites.net cliccare su Tools -> Download custom deployment script o semplicemente scaricarlo dal D:\home\deployment\tools quindi controllare nella root del vostro repo like here fondamentalmente ci saranno 2 file deploy.cmd e .deployment

questa è la logica di distribuzione, aggiungere un passaggio per ripristinare pergolato in esso like here dopo l'ultimo passo ci

:: 4. Bower Install 
if EXIST "%DEPLOYMENT_TARGET%\bower.json" (
    pushd "%DEPLOYMENT_TARGET%" 
    call :ExecuteCmd bower install 
    IF !ERRORLEVEL! NEQ 0 goto error 
    popd 
) 
+0

Dovrò verificare di nuovo come ho già provato questo. Forse ho dimenticato di escludere alcuni dei pacchetti di bower in .gitignore –

+0

prova a distribuire il repository a cui mi sono collegato e vedere se questo funziona per ripristinare i componenti bower corretti nelle posizioni corrette. Puoi sfogliare facilmente il contenuto del tuo sito se navighi su 'https: // .scm.azurewebsites.net/DebugConsole' quindi vedi cosa c'è di diverso nel tuo repository credo e perché il ripristino non sta accadendo – ahmelsayed

+1

Grazie per il commento. Ho avuto un errore in una lib esterna, e dopo alcune ricerche di lettura e scm si è lavorato. Grazie per il suggerimento –

0

Un importante aggiunta a quanto sopra - si deve spingere sia il file .deployment invariato e file .cmd modificato per radice distribuzione per Azure per poi copiare/eseguire i vostri emendamenti .cmd. In caso contrario, rigenererà un valore predefinito .cmd

0

È possibile utilizzare la funzione console della app Web di Azure per attivare i comandi. Anche se la console ha accesso a una funzionalità limitate, è comunque possibile installare i componenti Bower utilizzando il comando:

bower install 

L'opzione console è elencato nella sezione implementazione delle applicazioni Web. È possibile fare riferimento al seguente schermo per riferimento.

Screen 1

Prerequisiti:

  1. non pubblicare la cartella bowerComponents per l'applicazione Web.
  2. Include il file bower.json che include tutte le dipendenze.

Spero che sia d'aiuto.