include: - project: gitlab-ci/kubernetes-base ref: v5 file: panter-kubernetes-base.yml app-build: extends: .app-build artifacts: paths: - $CI_PROJECT_DIR/dist - $CI_PROJECT_DIR/.next .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