Newer
Older
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
file: panter-kubernetes-base.yml
app-build:
extends: .app-build
script:
- cd $APP_PATH
- echo "add healthcheck package"
- meteor add panter:healthroute --allow-superuser
- meteor add qualia:prod-shell --allow-superuser
- echo "current path is $(pwd)"
- yarn
- echo "building into $CI_PROJECT_DIR"
- TOOL_NODE_FLAGS="--max_old_space_size=4096 --min_semi_space_size=8 --max_semi_space_size=256" meteor build $CI_PROJECT_DIR --architecture os.linux.x86_64 --allow-superuser --server-only --directory
artifacts:
paths:
- $CI_PROJECT_DIR/bundle
.ensureDocker: &ensureDocker |
function ensureDockerfile() {
# this is for meteor
if [ ! -f Dockerfile ]; then
echo "Creating Dockerfile"
NODE_VERSION_FULL=$(cat bundle/.node_version.txt)
NODE_VERSION=${NODE_VERSION_FULL/v} # remove v
cat > Dockerfile <<EOF
FROM node:$NODE_VERSION
ADD . /src
RUN cd /src && rm -rf node_modules
RUN cd /src/bundle/programs/server && npm install
WORKDIR /src/bundle
EXPOSE 8888
CMD ["node", "main.js"]
EOF
fi
}
docker-build:
extends: .docker-build
before_script:
- *ensureDocker
- ensureDockerfile