diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000000000000000000000000000000000000..cf480c5ba908ba19b655c4be1225f735b56e8347 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,40 @@ + +stages: + - test + - deploy + +# Uncomment these lines if you would use tdd using selenium in your project +# UnitTest: +# image: python:3.6 +# stage: test +# before_script: +# - wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - +# - echo "deb http://dl.google.com/linux/chrome/deb/ stable main" > /etc/apt/sources.list.d/google.list +# - pip install -r requirements.txt +# - python manage.py makemigrations +# - python manage.py migrate +# - apt-get update -qq && apt-get install -y -qq unzip +# - apt-get install -y google-chrome-stable +# - apt-get install -y xvfb +# - wget https://chromedriver.storage.googleapis.com/2.32/chromedriver_linux64.zip +# - unzip chromedriver_linux64.zip +# - python manage.py collectstatic --no-input +# - python manage.py runserver 8000 & +# when: on_success +# script: +# - coverage run manage.py test +# - coverage report -m + +Deployment: + image: ruby:2.4 + stage: deploy + before_script: + - gem install dpl + - wget -qO- https://cli-assets.heroku.com/install-ubuntu.sh | sh + script: + - dpl --provider=heroku --app=$HEROKU_APPNAME --api-key=$HEROKU_APIKEY + - export HEROKU_API_KEY=$HEROKU_APIKEY + - heroku run --app $HEROKU_APPNAME python manage.py migrate + environment: + name: production + url: $HEROKU_APP_HOST \ No newline at end of file diff --git a/Procfile b/Procfile new file mode 100644 index 0000000000000000000000000000000000000000..2356e9598c3d58bebfb2aa045379f21d03a896c7 --- /dev/null +++ b/Procfile @@ -0,0 +1,2 @@ +migrate: bash python manage.py migrate +web: gunicorn my_app.wsgi \ No newline at end of file