Skip to content
Snippets Groups Projects
Commit 6f361371 authored by Manuel Spuhler's avatar Manuel Spuhler
Browse files

Merge branch '1-developer-test-build-and-run' into 'develop'

Resolve "As a developer, I want to continually test to ensure that the project build and run correctly"

Closes #1

See merge request sibmip/gateway!1
parents b54b8207 2fe90412
No related branches found
No related tags found
No related merge requests found
services:
- docker:dind
stages:
- build
- deploy
build:
stage: build
variables:
IMAGE_TAG: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG
script:
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
- docker build -t $IMAGE_TAG .
- docker push $IMAGE_TAG
only:
- main
- develop
- /^release-.*$/
\ No newline at end of file
FROM node:12.13-alpine As development
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm ci --development
COPY . .
RUN npm run build
RUN npm run test
FROM node:12.13-alpine as production
ARG NODE_ENV=production
ENV NODE_ENV=${NODE_ENV}
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm ci --production
COPY . .
COPY --from=development /usr/src/app/dist ./dist
CMD ["node", "dist/main"]
\ No newline at end of file
import { HttpService } from "@nestjs/axios";
import { IEngineOptions, IEngineService } from "src/engine/engine.interface";
import { IEngineOptions, IEngineService } from "src/engine/engine.interfaces";
export default class DataShieldService implements IEngineService {
constructor(private readonly options: IEngineOptions, private readonly httpService: HttpService) { }
......
import { HttpService } from "@nestjs/axios";
import { IEngineOptions, IEngineService } from "src/engine/engine.interface";
import { IEngineOptions, IEngineService } from "src/engine/engine.interfaces";
export default class ExaremeService implements IEngineService {
constructor(private readonly options: IEngineOptions, private readonly httpService: HttpService) { }
......
import { HttpService } from '@nestjs/axios';
import { Controller, Get, Inject } from '@nestjs/common';
import { ENGINE_SERVICE } from './engine.constants';
import { IEngineService } from './engine.interface';
import { IEngineService } from './engine.interfaces';
@Controller()
export class EngineController {
......
import { AxiosResponse } from "axios";
import { Observable } from "rxjs";
export interface IEngineOptions {
type: string;
}
......
......@@ -4,7 +4,7 @@ import { GraphQLModule } from '@nestjs/graphql';
import { join } from 'path';
import { ENGINE_MODULE_OPTIONS, ENGINE_SERVICE } from './engine.constants';
import { EngineController } from './engine.controller';
import { IEngineOptions, IEngineService } from './engine.interface';
import { IEngineOptions, IEngineService } from './engine.interfaces';
import { EngineResolver } from './engine.resolver';
@Global()
......
import { Inject } from '@nestjs/common';
import { Query, Resolver } from '@nestjs/graphql';
import { ENGINE_SERVICE } from './engine.constants';
import { IEngineService } from './engine.interface';
import { IEngineService } from './engine.interfaces';
@Resolver()
export class EngineResolver {
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment