MASMOVIL TECHNOLOGY
release
master
a
b
1
2
3
4
5
6
apps
commons
release
master
a
b
1
2
3
4
5
6
PACKAGES => 2
release
master
a
b
1
2
3
4
5
6
PACKAGES => 1
release
master
a
b
1
2
3
4
5
6
PACKAGES => 2
release
master
a
b
1
2
3
4
5
6
PACKAGES => 1, 2
release
master
a
b
1
2
3
4
5
6
PACKAGES => 3, 4, 5, 6
release
master
a
b
1
2
3
4
5
6
PACKAGES => 1, 2, 3, 4, 5, 6
Dependencies
lockfile
package
package
package
pipeline
Lint
Test
Build
lockfile
SHA
sd34afg
install
sd34afg.tgz
node_modules
Dependencies
lockfile
package
package
package
pipeline
Lint
Test
Build
SHA
sd34afg
untar
node_modules
deps cache
install
sd34afg.tgz?
yes
no
lockfile
package
package
package
lockfile
SHA
zslwps9
install
zslwps9.tgz
node_modules
+
-
lockfile
package
package
package
install
node_modules
no cache invalidation!!!
!!!
lockfile
SHA
sd34afg
{
"name": "masfront",
"version": "1.0.0",
"lockfileVersion": 2,
...
}
New packages requires manual lockfile upgrade
package-lock.json
Communicate packages/dependencies addition or upgrades
Dependencies
pipeline
Lint
Test
Build
BUILD_ID + BRANCH_NAME => 13-PR-123
build
13-PR-123.tgz
dist
Dependencies
pipeline
Lint
Test
Build
BUILD-CACHE.tgz
Build
Docker
Dockerfile
DEPS-CACHE.tgz
Docker image
from node
copy cache
untar
run
Avoid install/build inside docker
@anthanh | #frontend-general | #mas-front