Merge branch 'develop' of https://gitlab.gcp.windtre.it/olympus_ai/apollo-fe into develop
This commit is contained in:
46
.gitlab-ci.yml
Normal file
46
.gitlab-ci.yml
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
# This file is a template, and might need editing before it works on your project.
|
||||||
|
# To contribute improvements to CI/CD templates, please follow the Development guide at:
|
||||||
|
# https://docs.gitlab.com/ee/development/cicd/templates.html
|
||||||
|
# This specific template is located at:
|
||||||
|
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Docker.gitlab-ci.yml
|
||||||
|
|
||||||
|
# Build a Docker image with CI/CD and push to the GitLab registry.
|
||||||
|
# Docker-in-Docker documentation: https://docs.gitlab.com/ee/ci/docker/using_docker_build.html
|
||||||
|
#
|
||||||
|
# This template uses one generic job with conditional builds
|
||||||
|
# for the default branch and all other (MR) branches.
|
||||||
|
|
||||||
|
docker-build:
|
||||||
|
# Use the official docker image.
|
||||||
|
image: gcr.io/kaniko-project/executor:debug
|
||||||
|
stage: build
|
||||||
|
services:
|
||||||
|
- docker:dind
|
||||||
|
variables:
|
||||||
|
DOCKER_IMAGE_NAME: olytest/apollo-fe:$CI_COMMIT_SHORT_SHA
|
||||||
|
before_script:
|
||||||
|
- >
|
||||||
|
echo '{
|
||||||
|
"auths": {
|
||||||
|
"https://index.docker.io/v1/": {
|
||||||
|
"auth": "b2x5dGVzdDpkY2tyX3BhdF9ZUFBCa21IVlVkbmx4R3dLT0t1TEtmQ1RTVTg="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} ' >> /kaniko/.docker/config.json
|
||||||
|
|
||||||
|
# All branches are tagged with $DOCKER_IMAGE_NAME (defaults to commit ref slug)
|
||||||
|
# Default branch is also tagged with `latest`
|
||||||
|
script:
|
||||||
|
- /kaniko/executor
|
||||||
|
--context "${CI_PROJECT_DIR}"
|
||||||
|
--dockerfile "${CI_PROJECT_DIR}/Dockerfile"
|
||||||
|
--destination "${DOCKER_IMAGE_NAME}"
|
||||||
|
--build-arg "VITE_BACKEND_URL=http://localhost:8082"
|
||||||
|
|
||||||
|
# Run this job in a branch where a Dockerfile exists
|
||||||
|
rules:
|
||||||
|
- if: $CI_COMMIT_BRANCH
|
||||||
|
exists:
|
||||||
|
- Dockerfile
|
||||||
|
tags:
|
||||||
|
- OLYMPUS
|
||||||
26
Dockerfile
Normal file
26
Dockerfile
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
FROM node:latest as builder
|
||||||
|
|
||||||
|
# automatically creates the dir and sets it as the current working dir
|
||||||
|
WORKDIR /usr/src/app
|
||||||
|
# this will allow us to run vite and other tools directly
|
||||||
|
ENV PATH /usr/src/node_modules/.bin:$PATH
|
||||||
|
|
||||||
|
# inject all environment vars we'll need
|
||||||
|
ARG VITE_BACKEND_URL
|
||||||
|
ENV VITE_BACKEND_URL=$VITE_BACKEND_URL
|
||||||
|
|
||||||
|
COPY package.json ./
|
||||||
|
|
||||||
|
RUN npm install
|
||||||
|
|
||||||
|
COPY . ./
|
||||||
|
|
||||||
|
FROM builder as prod-builder
|
||||||
|
RUN npm run build
|
||||||
|
|
||||||
|
# it's a good idea to pin this, but for demo purposes we'll leave it as is
|
||||||
|
FROM nginx:latest as prod
|
||||||
|
|
||||||
|
COPY --from=prod-builder /usr/src/app/dist /usr/share/nginx/html
|
||||||
|
|
||||||
|
CMD ["nginx", "-g", "daemon off;"]
|
||||||
Reference in New Issue
Block a user