stages: - build - lint - test - docker-build - docker-push .python-image: image: python:3.8-slim .angular-image: image: johnpapa/angular-cli ######## # BUILD ################################################################# #build_fe: # image: node:alpine # script: # - echo '' # extends: # - .build .build: stage: build build_be: before_script: - apt-get update - apt-get install -y build-essential gcc - python -m venv /opt/venv - python -m pip install --upgrade pip script: - cd ./backend - python setup.py sdist artifacts: untracked: true extends: - .build - .python-image ######## # LINT ################################################################# .lint: stage: lint lint_fe: script: - cd ./frontend - npm install - ng lint extends: - .lint - .angular-image artifacts: untracked: true # needs: # - build_fe #lint_be: # script: # - echo '' # extends: # - .lint # needs: # - build_be ######## # TEST ################################################################# .test: stage: test test_fe: script: - ng test extends: - .test - .angular-image needs: - lint_fe #test_be: # script: # - cd ./backend # - ls -l # extends: # - .test # needs: # - build_be ######## # DOCKER-BUILD ################################################################# .docker-build: stage: docker-build .docker-setup: before_script: - echo $DOCKER_PW | docker login -u $DOCKER_USER --password-stdin docker-build-fe: script: - echo "" extends: - .docker-build - .docker-setup needs: - test_fe docker-build-be: script: - echo "" extends: - .docker-build - .docker-setup needs: - build_be ######## # DOCKER-PUSH ################################################################# .docker-push: stage: docker-push docker-push-fe: script: - echo '' extends: - .docker-push needs: - docker-build-fe docker-push-be: script: - echo '' extends: - .docker-push needs: - docker-build-be