dimanche 11 mai 2014

Amazon web services - compiler des fichiers moins et rapetisser les fichiers js node.js projet sur AWS Elastic Beanstalk - Stack Overflow


I am using the Eb Command Line Interface to deploy a node.js project to AWS Elastic Beanstalk. I am using git for version control. So the command I run to deploy is simply 'git aws.push'. Locally, I am using grunt to compile css files from less files and also minify and cmobine js files.


I don't want to include the *.min.css files or *.min.js files in my git repository but would rather have them recompiled on AWS after deployment. Is there a way to do this? Maybe with a .ebextensions hook or something?




I am not familiar with grunt, but I guess what you would have to do is install nodejs and grunt on elastic beanstalk and then running your grunt commands once the container is set up.


In a ebextensions hook such as .ebextensions/grunt.config you could do the following :


commands:
01-install-nodejs-npm:
command: "yum install -y --enablerepo=epel nodejs npm"
02-install-grunt:
command: "npm install -g grunt-cli"

container_commands:
01-compilecss-minifyjs:
command: "grunt build mytask"
leader_only: true

The commands would make sure nodejs, npm and grunt are installed. The container_commands are executed from within your repository's home directory, so the "source" files for your grunt build should be available from there.


Again - I don't work with grunt and can't tell if this would actually work, but I hope it helps anyway.



I am using the Eb Command Line Interface to deploy a node.js project to AWS Elastic Beanstalk. I am using git for version control. So the command I run to deploy is simply 'git aws.push'. Locally, I am using grunt to compile css files from less files and also minify and cmobine js files.


I don't want to include the *.min.css files or *.min.js files in my git repository but would rather have them recompiled on AWS after deployment. Is there a way to do this? Maybe with a .ebextensions hook or something?



I am not familiar with grunt, but I guess what you would have to do is install nodejs and grunt on elastic beanstalk and then running your grunt commands once the container is set up.


In a ebextensions hook such as .ebextensions/grunt.config you could do the following :


commands:
01-install-nodejs-npm:
command: "yum install -y --enablerepo=epel nodejs npm"
02-install-grunt:
command: "npm install -g grunt-cli"

container_commands:
01-compilecss-minifyjs:
command: "grunt build mytask"
leader_only: true

The commands would make sure nodejs, npm and grunt are installed. The container_commands are executed from within your repository's home directory, so the "source" files for your grunt build should be available from there.


Again - I don't work with grunt and can't tell if this would actually work, but I hope it helps anyway.


0 commentaires:

Enregistrer un commentaire