11#! /bin/bash
22
33setup_installer_dockerfile () {
4- cp -f " ${tool_dir} /src/language/node/nestjs/container/docker/dockerfile/v1/template/installer" " ${project_root_dir} /Dockerfile"
5- perl -pi -e " s/~~~language version~~~/${projectinit_language_version} /g" " ${project_root_dir} /Dockerfile"
6- perl -pi -e " s/~~~nestjs version~~~/${projectinit_nestjs_version} /g" " ${project_root_dir} /Dockerfile"
4+ local target_file
5+ target_file=" ${project_root_dir} /Dockerfile"
6+
7+ cp -f " ${tool_dir} /src/language/node/nestjs/container/docker/dockerfile/v1/template/installer" " ${target_file} "
8+ perl -pi -e " s/~~~language version~~~/${projectinit_language_version} /g" " ${target_file} "
9+ perl -pi -e " s/~~~nestjs version~~~/${projectinit_nestjs_version} /g" " ${target_file} "
710}
811
912setup_dev_dockerfile () {
10- cp -f " ${tool_dir} /src/language/node/nestjs/container/docker/dockerfile/v1/template/dev" " ${project_root_dir} /Dockerfile_dev"
11- perl -pi -e " s/~~~language version~~~/${projectinit_language_version} /g" " ${project_root_dir} /Dockerfile_dev"
12- perl -pi -e " s/~~~nestjs version~~~/${projectinit_nestjs_version} /g" " ${project_root_dir} /Dockerfile_dev"
13+ local target_file
14+ target_file=" ${project_root_dir} /Dockerfile"
15+
16+ cp -f " ${tool_dir} /src/language/node/nestjs/container/docker/dockerfile/v1/template/dev" " ${target_file} "
17+ perl -pi -e " s/~~~language version~~~/${projectinit_language_version} /g" " ${target_file} "
18+ perl -pi -e " s/~~~nestjs version~~~/${projectinit_nestjs_version} /g" " ${target_file} "
1319 case " $projectinit_node_package_manager " in
1420 " npm" )
15- perl -pi -e " s/~~~install pnpm~~~//g" " ${project_root_dir} /Dockerfile_dev "
16- perl -pi -e " s/~~~package manager~~~/npm/g" " ${project_root_dir} /Dockerfile_dev "
17- perl -pi -e " s/~~~install options~~~//g" " ${project_root_dir} /Dockerfile_dev "
21+ perl -pi -e " s/~~~install pnpm~~~//g" " ${target_file} "
22+ perl -pi -e " s/~~~package manager~~~/npm/g" " ${target_file} "
23+ perl -pi -e " s/~~~install options~~~//g" " ${target_file} "
1824 ;;
1925 " yarn" )
20- perl -pi -e " s/~~~install pnpm~~~//g" " ${project_root_dir} /Dockerfile_dev "
21- perl -pi -e " s/~~~package manager~~~/yarn/g" " ${project_root_dir} /Dockerfile_dev "
22- perl -pi -e " s/~~~install options~~~/ --frozen-lockfile --non-interactive/g" " ${project_root_dir} /Dockerfile_dev "
26+ perl -pi -e " s/~~~install pnpm~~~//g" " ${target_file} "
27+ perl -pi -e " s/~~~package manager~~~/yarn/g" " ${target_file} "
28+ perl -pi -e " s/~~~install options~~~/ --frozen-lockfile --non-interactive/g" " ${target_file} "
2329 ;;
2430 " pnpm" )
25- perl -pi -e " s/~~~install pnpm~~~/ pnpm/g" " ${project_root_dir} /Dockerfile_dev "
26- perl -pi -e " s/~~~package manager~~~/pnpm/g" " ${project_root_dir} /Dockerfile_dev "
27- perl -pi -e " s/~~~install options~~~/ --no-color --frozen-lockfile/g" " ${project_root_dir} /Dockerfile_dev "
31+ perl -pi -e " s/~~~install pnpm~~~/ pnpm/g" " ${target_file} "
32+ perl -pi -e " s/~~~package manager~~~/pnpm/g" " ${target_file} "
33+ perl -pi -e " s/~~~install options~~~/ --no-color --frozen-lockfile/g" " ${target_file} "
2834 ;;
2935 esac
3036}
3137
3238setup_prod_dockerfile () {
33- cp -f " ${tool_dir} /src/language/node/nestjs/container/docker/dockerfile/v1/template/prod" " ${project_root_dir} /Dockerfile"
34- perl -pi -e " s/~~~language version~~~/${projectinit_language_version} /g" " ${project_root_dir} /Dockerfile"
35- perl -pi -e " s/~~~nestjs version~~~/${projectinit_nestjs_version} /g" " ${project_root_dir} /Dockerfile"
39+ local target_file
40+ target_file=" ${project_root_dir} /projectinit_docker/prod/Dockerfile"
41+ if [ ! -d " ${project_root_dir} /projectinit_docker/prod" ]; then
42+ mkdir -p " ${project_root_dir} /projectinit_docker/prod"
43+ fi
44+
45+ cp -f " ${tool_dir} /src/language/node/nestjs/container/docker/dockerfile/v1/template/prod" " ${target_file} "
46+ perl -pi -e " s/~~~language version~~~/${projectinit_language_version} /g" " ${target_file} "
47+ perl -pi -e " s/~~~nestjs version~~~/${projectinit_nestjs_version} /g" " ${target_file} "
3648 case " $projectinit_node_package_manager " in
3749 " npm" )
38- perl -pi -e " s/~~~install pnpm~~~//g" " ${project_root_dir} /Dockerfile "
39- perl -pi -e " s/~~~package manager~~~/npm/g" " ${project_root_dir} /Dockerfile "
40- perl -pi -e " s/~~~install options~~~//g" " ${project_root_dir} /Dockerfile "
50+ perl -pi -e " s/~~~install pnpm~~~//g" " ${target_file} "
51+ perl -pi -e " s/~~~package manager~~~/npm/g" " ${target_file} "
52+ perl -pi -e " s/~~~install options~~~//g" " ${target_file} "
4153 ;;
4254 " yarn" )
43- perl -pi -e " s/~~~install pnpm~~~//g" " ${project_root_dir} /Dockerfile "
44- perl -pi -e " s/~~~package manager~~~/yarn/g" " ${project_root_dir} /Dockerfile "
45- perl -pi -e " s/~~~install options~~~/ --prod --frozen-lockfile --non-interactive/g" " ${project_root_dir} /Dockerfile "
55+ perl -pi -e " s/~~~install pnpm~~~//g" " ${target_file} "
56+ perl -pi -e " s/~~~package manager~~~/yarn/g" " ${target_file} "
57+ perl -pi -e " s/~~~install options~~~/ --prod --frozen-lockfile --non-interactive/g" " ${target_file} "
4658 ;;
4759 " pnpm" )
48- perl -pi -e " s/~~~install pnpm~~~/ pnpm/g" " ${project_root_dir} /Dockerfile "
49- perl -pi -e " s/~~~package manager~~~/pnpm/g" " ${project_root_dir} /Dockerfile "
50- perl -pi -e " s/~~~install options~~~/ --no-color --frozen-lockfile --prod/g" " ${project_root_dir} /Dockerfile "
60+ perl -pi -e " s/~~~install pnpm~~~/ pnpm/g" " ${target_file} "
61+ perl -pi -e " s/~~~package manager~~~/pnpm/g" " ${target_file} "
62+ perl -pi -e " s/~~~install options~~~/ --no-color --frozen-lockfile --prod/g" " ${target_file} "
5163 ;;
5264 esac
5365}
0 commit comments