[gjs: 2/3] CI: update docker images



commit 80953ecaf7fed31144e30a3d9c5e7e8f53fa30be
Author: Claudio André <claudioandre br gmail com>
Date:   Thu Feb 1 01:30:20 2018 -0200

    CI: update docker images
    
    - Remove unused CI code;
    - Use development versions of GLib and GObject-introspection when
      running a dev docker image.

 .gitlab-ci.yml          | 40 ++++++++++++++++++++++++++--------------
 test/extra/do_basic.sh  | 24 +++++++++++++++++++-----
 test/extra/do_docker.sh | 25 +++++++++++++++++++++++++
 test/test-ci.sh         | 46 +++++++++++-----------------------------------
 4 files changed, 81 insertions(+), 54 deletions(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index b9163575..16803cc9 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -24,7 +24,7 @@ before_script:
     - 'if [[ -n "${CODECHECK}" ]]; then
          $(pwd)/test/test-ci.sh "$CODECHECK";
        else
-         $(pwd)/test/test-ci.sh GJS;
+         $(pwd)/test/test-ci.sh GJS "$DEV";
        fi'
 
     # Run extra tests
@@ -39,10 +39,10 @@ before_script:
 
 ubuntu_gcc:
   <<: *build
-  image: claudioandre/spidermonkey:ubuntu.1710.gcc
+  image: claudioandre/spidermonkey:ubuntu.dev.gcc
   variables:
-    BASE: ubuntu
-    OS: ubuntu.1710.gcc
+    BASE: debian
+    OS: ubuntu.dev.gcc
     CC: gcc
     BUILD_OPTS: "--enable-installed-tests"
   only:
@@ -50,31 +50,43 @@ ubuntu_gcc:
 
 ubuntu_clang:
   <<: *build
-  image: claudioandre/spidermonkey:ubuntu.1710.gcc
+  image: claudioandre/spidermonkey:ubuntu.dev.gcc
   variables:
-    BASE: ubuntu
-    OS: ubuntu.1710.gcc
+    BASE: debian
+    OS: ubuntu.dev.gcc
     CC: clang
+    DEV: devel
     BUILD_OPTS: "--enable-installed-tests"
   only:
     - master@GNOME/gjs
 
 fedora_gcc:
   <<: *build
-  image: claudioandre/spidermonkey:fedora.26.gcc
+  image: claudioandre/spidermonkey:fedora.dev.gcc
   variables:
     BASE: fedora
-    OS: fedora.26.gcc
+    OS: fedora.dev.gcc
     CC: gcc
+    DEV: devel
     BUILD_OPTS: "--enable-ubsan"
 
 fedora_clang:
   <<: *build
-  image: claudioandre/spidermonkey:fedora.26.gcc
+  image: claudioandre/spidermonkey:fedora.dev.gcc
   variables:
     BASE: fedora
-    OS: fedora.26.gcc
+    OS: fedora.dev.gcc
     CC: clang
+    DEV: devel
+    BUILD_OPTS: "--enable-ubsan"
+
+coverage:
+  <<: *build
+  image: claudioandre/spidermonkey:fedora.27.gcc
+  variables:
+    BASE: fedora
+    OS: fedora.27.gcc
+    CC: gcc
     BUILD_OPTS: "--enable-code-coverage"
     coverage: '/^Lines:.\d+.\d+.(\d+\.\d+\%)/'
   artifacts:
@@ -83,12 +95,12 @@ fedora_clang:
     - $(pwd)/coverage/
     - $(pwd)/.cache/jhbuild/build/gjs/test-suite.log
 
-fedora_cppcheck:
+cppcheck:
   <<: *build
-  image: claudioandre/spidermonkey:fedora.26.gcc
+  image: claudioandre/spidermonkey:fedora.dev.gcc
   variables:
     BASE: fedora
-    OS: fedora.26.gcc
+    OS: fedora.dev.gcc
     CODECHECK: "CPPCHECK"
 
 # Failure routine
diff --git a/test/extra/do_basic.sh b/test/extra/do_basic.sh
index cd2f74d2..d10c39c1 100755
--- a/test/extra/do_basic.sh
+++ b/test/extra/do_basic.sh
@@ -4,7 +4,7 @@ function do_Install_Git(){
     echo
     echo '-- Installing Git --'
 
-    if [[ $BASE == "ubuntu" ]]; then
+    if [[ $BASE == "debian" ]]; then
         apt-get update -qq
 
         # Git
@@ -26,7 +26,7 @@ function do_Install_Base_Dependencies(){
     echo
     echo '-- Installing Base Dependencies --'
 
-    if [[ $BASE == "ubuntu" ]]; then
+    if [[ $BASE == "debian" ]]; then
         apt-get update -qq
 
         # Base dependencies
@@ -59,16 +59,30 @@ function do_Install_Dependencies(){
     echo
     echo '-- Installing Dependencies --'
 
-    if [[ $BASE == "ubuntu" ]]; then
+    if [[ $BASE == "debian" ]]; then
         # Testing dependencies
         apt-get -y -qq install libgtk-3-dev gir1.2-gtk-3.0 xvfb gnome-desktop-testing dbus-x11 dbus \
-                               libreadline6 libreadline6-dev > /dev/null
+                               libedit-dev > /dev/null
 
     elif [[ $BASE == "fedora" ]]; then
         # Testing dependencies
         dnf -y -q install gtk3 gtk3-devel gobject-introspection Xvfb gnome-desktop-testing dbus-x11 dbus \
                           cairo intltool libxslt bison nspr zlib python3-devel dbus-glib libicu libffi pcre 
libxml2 libxslt libtool flex \
                           cairo-devel zlib-devel libffi-devel pcre-devel libxml2-devel libxslt-devel \
-                          libedit libedit-devel libasan libubsan lcov
+                          libedit-devel libasan libubsan lcov
+    fi
+}
+
+function do_Install_Extras(){
+    echo
+    echo '-- Installing Extra Dependencies --'
+
+    if [[ $BASE == "debian" ]]; then
+        # Distros development versions of needed libraries
+        apt-get -y -qq install libgirepository1.0-dev > /dev/null
+
+    elif [[ $BASE == "fedora" ]]; then
+        # Distros development versions of needed libraries
+        dnf -y -q install gobject-introspection-devel
     fi
 }
diff --git a/test/extra/do_docker.sh b/test/extra/do_docker.sh
index f6e1a5d8..9caa6300 100755
--- a/test/extra/do_docker.sh
+++ b/test/extra/do_docker.sh
@@ -24,3 +24,28 @@ function do_Shrink_Image(){
 
     echo '-- Done --'
 }
+
+if [[ $1 == "BUILD_MOZ" ]]; then
+    do_Install_Base_Dependencies
+    do_Set_Env
+
+    do_Show_Info
+    do_Patch_JHBuild
+    do_Build_JHBuild RESET
+    do_Build_Mozilla
+    do_Save_Files
+
+    if [[ $2 == "SHRINK" ]]; then
+        do_Shrink_Image
+    fi
+
+elif [[ $1 == "GET_FILES" ]]; then
+    do_Set_Env
+    do_Get_Files
+
+    if [[ $2 == "DOCKER" ]]; then
+        do_Install_Base_Dependencies
+        do_Install_Dependencies
+        do_Shrink_Image
+    fi
+fi
diff --git a/test/test-ci.sh b/test/test-ci.sh
index 1d58593b..6ed9ad25 100755
--- a/test/test-ci.sh
+++ b/test/test-ci.sh
@@ -49,10 +49,10 @@ function do_Show_Info(){
 cd /cwd
 
 source test/extra/do_basic.sh
-source test/extra/do_docker.sh
 source test/extra/do_jhbuild.sh
 source test/extra/do_cache.sh
 source test/extra/do_mozilla.sh
+source test/extra/do_docker.sh
 
 # Show some environment info
 echo
@@ -60,41 +60,21 @@ echo '-- Environment --'
 echo "Running on: $BASE $OS"
 echo "Doing: $1"
 
-if [[ $1 == "BUILD_MOZ" ]]; then
-    do_Install_Base_Dependencies
-    do_Set_Env
-
-    do_Show_Info
-    do_Patch_JHBuild
-    do_Build_JHBuild RESET
-    do_Build_Mozilla
-    do_Save_Files
-
-    if [[ $2 == "SHRINK" ]]; then
-        do_Shrink_Image
-    fi
-
-elif [[ $1 == "GET_FILES" ]]; then
-    do_Set_Env
-    do_Get_Files
-
-    if [[ $2 == "DOCKER" ]]; then
-        do_Install_Base_Dependencies
-        do_Install_Dependencies
-        do_Shrink_Image
-    fi
-
-elif [[ $1 == "INSTALL_GIT" ]]; then
-    do_Install_Git
-
-elif [[ $1 == "GJS" ]]; then
+if [[ $1 == "GJS" ]]; then
     do_Set_Env
 
     do_Show_Info
     do_Patch_JHBuild
     do_Build_JHBuild
     do_Configure_JHBuild
-    do_Build_Package_Dependencies gjs
+
+    if [[ $2 != "devel" ]]; then
+        do_Build_Package_Dependencies gjs
+    else
+      jhbuild build m4-common
+      mkdir -p ~/jhbuild/checkout/gjs
+      do_Install_Extras
+    fi
 
     # Build and test the latest commit (merged or from a merge/pull request) of
     # Javascript Bindings for GNOME (gjs)
@@ -105,6 +85,7 @@ elif [[ $1 == "GJS" ]]; then
     cd ~/jhbuild/checkout/gjs
     git log --pretty=format:"%h %cd %s" -1
 
+    echo
     echo '-- gjs build --'
     echo
     jhbuild make --check
@@ -156,11 +137,6 @@ elif [[ $1 == "CPPCHECK" ]]; then
         echo '----------------------------------------'
         exit 3
     fi
-
-else
-    echo
-    echo '-- NOTHING TO DO --'
-    exit 1
 fi
 # Done
 echo


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]