diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 687c1db..e86e8d2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -5,6 +5,5 @@ all_tests: - sh ./scripts/autoinstall.sh - docker-compose run web python manage.py test after_script: - - docker-compose exec -T web find . -path '*/migrations*' -delete - docker-compose exec -T web find . -type f -name '*.pyc' -delete when: on_success diff --git a/scripts/autoinstall.sh b/scripts/autoinstall.sh index 657f689..5ab9ef5 100755 --- a/scripts/autoinstall.sh +++ b/scripts/autoinstall.sh @@ -1,5 +1,8 @@ #!/bin/bash +echo "SIKWEB 2.0 Dockerific install script" +echo "====================================" + echo "Checking if docker is installed..." docker --version if [ "$?" -ne 0 ] @@ -9,7 +12,7 @@ then fi echo "Starting docker daemon and sleeping for 10 seconds..." -dockerd & +dockerd & 2>/dev/null || { echo "Docker daemon failed to start!"; exit 1; } sleep 10 echo "Checking if docker-compose is installed..." @@ -21,40 +24,34 @@ then chmod +x /usr/local/bin/docker-compose fi +PROJECT="web20_site" + echo "Building db container..." -docker-compose build db +docker-compose -p "$PROJECT" build db || { echo "Failed to build db!"; exit 1; } echo "Starting db container..." -docker-compose up -d db +docker-compose -p "$PROJECT" up -d db || { echo "Failed to start db container!"; exit 1; } echo "Waiting 10 seconds..." sleep 10 echo "Importing database settings..." -docker-compose exec -T db sh /db/install.sh -if [ "$?" -eq 0 ] -then - echo "Success!" -else - echo "Failure!" - exit 1 -fi +docker-compose -p "$PROJECT" exec -T db sh /db/install.sh || { echo "Failed to import database settings!"; exit 1; } echo "Shutting down db container..." +docker-compose -p "$PROJECT" down db echo "Copying settings..." -cp sikweb/settings-docker-sample.py sikweb/settings.py +cp sikweb/settings-docker-sample.py sikweb/settings.py || { echo "Failed to copy settings!"; exit 1; } echo "Building web container..." -docker-compose build web +docker-compose -p "$PROJECT" build web echo "Running manage.py commands..." -docker-compose run web python manage.py migrate -docker-compose run web python manage.py makemigrations infoscreen members webapp -docker-compose run web python manage.py migrate -docker-compose run web python manage.py createdefaultadmin +docker-compose -p "$PROJECT" run web python manage.py migrate || { echo "Failed to apply migrations!"; exit 1; } +docker-compose -p "$PROJECT" run web python manage.py createdefaultadmin || { echo "Failed to create default admin user."; } echo "Starting all containers..." -docker-compose up -d +docker-compose -p "$PROJECT" up -d || { echo "Failed to start containers!"; exit 1; } echo "Done."