From d45addf6922999a547adafb200c07f62100fdea1 Mon Sep 17 00:00:00 2001 From: Guilherme Becker Agge <gba17@inf.ufpr.br> Date: Wed, 6 Jun 2018 10:04:43 -0300 Subject: [PATCH] SCRUM#463: Add more testing stages on CI --- .deploy.sh | 15 ++++++++++++--- .gitlab-ci.yml | 27 ++++++++++++++++++++++++++- 2 files changed, 38 insertions(+), 4 deletions(-) diff --git a/.deploy.sh b/.deploy.sh index 7ebaab5..75916dd 100755 --- a/.deploy.sh +++ b/.deploy.sh @@ -10,9 +10,18 @@ ssh-add <(echo "$PRIV_KEY") echo "Deploy job name: $CI_JOB_NAME" -if [ "$CI_JOB_NAME" = "deploy_for_testing" ]; then +if [ "$CI_JOB_NAME" = "deploy_for_unstable" ]; then dput -u -f --config=dput.cf repo build/*.changes -elif [ "$CI_JOB_NAME" = "deploy_for_stable" ]; then +elif [ "$CI_JOB_NAME" = "deploy_for_testing" ]; then + CHANGELOG="package/debian/changelog" + LINE=$(head -n 1 $CHANGELOG) + PACKAGE=$(echo "$LINE" | cut -d' ' -f1) + VERSION=$(echo "$LINE" | cut -d' ' -f2 | grep -o -E '[0-9]*\.[0-9]*\.[0-9]*') + + REPREPRO_CMD="reprepro -Vb /home/repository/www/le6 copysrc testing unstable $PACKAGE $VERSION" + # shellcheck disable=SC2029 + ssh -o StrictHostKeyChecking=no -i ~/.ssh/id_rsa repository@repo.c3sl.ufpr.br "$REPREPRO_CMD" +elif [ "$CI_JOB_NAME" = "deploy_for_testing" ]; then CHANGELOG="package/debian/changelog" LINE=$(head -n 1 $CHANGELOG) PACKAGE=$(echo "$LINE" | cut -d' ' -f1) @@ -21,4 +30,4 @@ elif [ "$CI_JOB_NAME" = "deploy_for_stable" ]; then REPREPRO_CMD="reprepro -Vb /home/repository/www/le6 copysrc stable testing $PACKAGE $VERSION" # shellcheck disable=SC2029 ssh -o StrictHostKeyChecking=no -i ~/.ssh/id_rsa repository@repo.c3sl.ufpr.br "$REPREPRO_CMD" -fi +fi diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 323fa63..daf6101 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -43,12 +43,37 @@ test: - ubuntu - regular script: + - echo "Installation test:" - apt-get update && apt-get install -y glib2.0 && apt-get -y install $(pwd)/build/*.deb language-pack-gnome-pt language-pack-pt-base + - echo "Removal test:" + - pkg_name=$(dpkg -I $(pwd)/build/*.deb | grep Package | head -1 | cut -d ':' -f2) + - DEBIAN_FRONTEND=noninteractive apt -y remove $pkg_name + - echo "Getting latest stable package from repo..." + - DEBIAN_FRONTEND=noninteractive apt-get -y install wget + - wget http://repo.c3sl.ufpr.br/le6/dists/stable/main/binary-amd64/Packages + - wget http://repo.c3sl.ufpr.br/le6/$(tail -n +$(grep -n "Package:${pkg_name}" Packages | cut -d ":" -f1) Packages | grep "Filename" | head -1 |cut -d " " -f2) + - echo "Update test:" + - DEBIAN_FRONTEND=noninteractive apt-get -y install $(pwd)/*.deb + - DEBIAN_FRONTEND=noninteractive apt-get -y install $(pwd)/build/*.deb + - echo "Downgrade test:" + - DEBIAN_FRONTEND=noninteractive apt-get -y --allow-downgrades install $(pwd)/*.deb + dependencies: + - build + +deploy_for_unstable: + stage: deploy + only: + - develop + tags: + - debian-packaging + script: + - ./.deploy.sh dependencies: - build deploy_for_testing: stage: deploy + when: manual only: - master tags: @@ -57,7 +82,7 @@ deploy_for_testing: - ./.deploy.sh dependencies: - build - + deploy_for_stable: stage: deploy when: manual -- GitLab