¿Cómo ejecutar la compilation de grunt para implementar la aplicación web con pipeline bitbucket?

Quiero generar la aplicación web en modo de producción (ejecutando compilation de grunt) y empujar los files y las carpetas generados desde la carpeta dist / de mi server web con las canalizaciones de bitbucket a través de git ftp.

Estructura de la aplicación web Bitbucket

app[dir] tests[dir] .gitignore Gruntfile.js bitbucket-pipelines.yml bower.json package.json ... 

gitignore

 /node_modules /dist /.tmp /.sass-cache /bower_components # OS generated files # ###################### .DS_Store .DS_Store? ._* .Spotlight-V100 .Trashes Icon? ehthumbs.db Thumbs.db log node_modules node # Personal application yamls # ############################## *bitbucket-pipelines.yml src/main/resources/static/js/vendor application-cat.yml .tern-project bitbucket-pipelines.yml .idea/workspace.xml 

bitbucket-pipelines.yml

 image: node:4.6.0 pipelines: default: - step: script: - apt-get update - apt-get -qq install git-ftp - npm install - npm install -g grunt-cli - npm install -g grunt@0.4.5 - npm install -g bower - bower install --allow-root - grunt build - git ftp push --user $FTP_USERNAME --passwd $FTP_PASSWORD ftp://myDomain.com/public_html/folder/ 

darse count

Si ejecuto localmente "grunt build" generará una carpeta en mi nombre de aplicación raíz: dist (¡bruja está bien!). Si ejecuto el script bitbucket.pipelines.yml (todo con éxito), no generará ninguna carpeta dist (¡la bruja NO ES OK!).

Conclusión

Terminé empujando todo el repository en mi host porque no puedo apuntar a ninguna carpeta dist . Alguna sugerencia ?

Necesitamos usar el file .git-ftp-include para include los files sin seguimiento. si grunt build genera la carpeta de compilation . Luego, necesitamos agregar lo siguiente en .git-ftp-include para forzar la carpeta de compilation en el process de synchronization.

 !build/ 

Espero que ayude