Newer
Older
image: python:3.9
POSTGRES_DB: kszkepzes
CONTAINER_IMAGE: 'registry.kszk.bme.hu/kszk/devteam/$CI_PROJECT_NAME:$CI_COMMIT_REF_NAME'
- python -V
- python3 -m venv env
- source env/bin/activate
- pip install -r requirements/production.txt
- flake8 --max-line-length=125 --exclude=src/kszkepzes,migrations,env
# TODO write tests
# Test:
# stage: Test and Flake8
# only:
# - dev
# - master
# tags: [kszk]
# variables:
# DATABASE_URL: 'postgresql://postgres:postgres@postgres:5432/$POSTGRES_DB'
# SECRET_KEY: 'secret'
# AUTHSCH_KEY: 'secret'
# AUTHSCH_SECRET: 'secret'
# script:
# - python -V
# - python3 -m venv env
# - source env/bin/activate
# - pip install -r requirements/production.txt
# - python src/manage.py test
only:
- tags
image:
name: gcr.io/kaniko-project/executor:debug
entrypoint: ['']
script:
- echo "{\"auths\":{\"registry.kszk.bme.hu\":{\"username\":\"$REGISTRY_USER\",\"password\":\"$REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json
- /kaniko/executor --context $CI_PROJECT_DIR --dockerfile $CI_PROJECT_DIR/Dockerfile --destination $CONTAINER_IMAGE
Deploy to Kubernetes:
stage: deploy
image: alpine
tags: [devteam]
environment:
name: master
script:
- apk add --no-cache curl
- curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
- chmod +x ./kubectl
- mv ./kubectl /usr/local/bin/kubectl
- kubectl version
- cd k8s
- sed -i "s|##IMAGETAG##|${CI_COMMIT_REF_NAME}|" deployment.yml
# A kovetkezo ket sor egy undorito workaround a mindig valtozo init kontenerek miatt letrejovo es beakado replicasetek miatt. Pls replace, ha van jobb otlet.
- kubectl delete deployment apache-static || true
- kubectl delete deployment kszkepzes-backend || true
- kubectl apply -f deployment.yml
only:
- tags