diff --git a/docs/other/tips/angular.md b/docs/other/tips/angular.md new file mode 100644 index 00000000..3fd8c233 --- /dev/null +++ b/docs/other/tips/angular.md @@ -0,0 +1,38 @@ +--- +title: Angular +--- +## Tips and Tricks for Angular + +### Build with 0 downtime on Angular + +The recommended way to have 0 downtime it's using dockerized builds with a docker registry service. +In case that this isn't possible in your project, here you have a quick fix. + +Create this folders on `/dist`: + +1. `/dist/previousbuild` +1. `/dist/nginx` (the new production path) + +`package.json` add on `scripts` section: +```json +... +"prebuild": "rm -rf dist/previousbuild", +"build": "ng build --prod --source-map --optimization=true --buildOptimizer=true --progress=true", +"postbuild": "mv dist/nginx dist/previousbuild && mv dist/tempbuild dist/nginx", +... +``` + +`angular.json` add on `projects -> *projectname* -> architect -> build -> options`: +```json +... +"outputPath": "dist/tempbuild", +... +``` + +And the result: + +1. on build starts, the folder `previousbuild` will be erased +1. the new build will be created on `tempbuild` +1. when the new build is done, the previous production build will move to `previousbuild` and the new one will be on + `nginx` folder +1. in case that you need to recover the previous version, you only need rename the two folders diff --git a/docs/other/tips/git.md b/docs/other/tips/git.md index 032393c6..5b1c7184 100644 --- a/docs/other/tips/git.md +++ b/docs/other/tips/git.md @@ -1,7 +1,7 @@ --- title: Git --- -Tips and Tricks for Git +## Tips and Tricks for Git ### Git Submodules diff --git a/docs/other/tips/node.md b/docs/other/tips/node.md new file mode 100644 index 00000000..079b1d4e --- /dev/null +++ b/docs/other/tips/node.md @@ -0,0 +1,10 @@ +--- +title: Node +--- +## Tips and Tricks for Node + +### npm install + +Unlike with PHP `composer install`, the command `npm install` takes `package.json` and resolves the dependencies which means that you might introduce a version different from the one you tested on. + +For deploys, CI or initial local environment setup, the **recommended** way to install the dependencies of a project is using `npm ci`. diff --git a/src/sidebars.js b/src/sidebars.js index 3c67ff55..48ae1a2a 100644 --- a/src/sidebars.js +++ b/src/sidebars.js @@ -147,16 +147,18 @@ module.exports = { ] } ] - }, - { - type: 'category', - label: 'Tips and Tricks', - items: [ - 'other/tips/git' - ] } ] }, + { + type: 'category', + label: 'Tips and Tricks', + items: [ + 'other/tips/node', + 'other/tips/angular', + 'other/tips/git' + ] + }, { type: 'category', label: 'Old',