[meld: 2/3] Build win32 installers with gnome gitlab win32 runners



commit 333996f75ece54a977954f13bb2e993d1a541e74
Author: Vasily Galkin <galkin-vv ya ru>
Date:   Wed Aug 15 10:53:13 2018 +0300

    Build win32 installers with gnome gitlab win32 runners
    
    appveyor.yml is removed since it is based on pygobject-win32 which
    is to old for meld 3.19+
    
    Currently pacman invocation isn't perfect since
    it doesn't cache used package versions,
    so build can't be reproduced with same msys2 package versions.

 .gitlab-ci.yml | 46 ++++++++++++++++++++++++++++++++++++++++------
 appveyor.yml   | 55 -------------------------------------------------------
 2 files changed, 40 insertions(+), 61 deletions(-)
---
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index e089d484..0f6a2631 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,4 +1,3 @@
-image: fedora:rawhide
 stages:
   - check
   - build
@@ -8,9 +7,11 @@ variables:
                 python3-gobject gtk3 gtksourceview3
                 python3-pytest intltool
 
-before_script:
-  - dnf update -y
-  - dnf install -y $DEPENDENCIES
+.linux-common: &linux-common
+  image: fedora:rawhide
+  before_script:
+    - dnf update -y
+    - dnf install -y $DEPENDENCIES
 
 flake8:
   stage: check
@@ -18,13 +19,46 @@ flake8:
     - pip3 install -r dev-requirements.txt
     - flake8 bin/meld meld/
   allow_failure: true
+  <<: *linux-common
 
-pytest:
+linux-pytest:
   stage: check
   script:
     - py.test-3 test/
+  <<: *linux-common
 
-build:
+linux-build:
   stage: build
   script:
     - python3 setup.py build
+  <<: *linux-common
+
+.mingw-common: &mingw-common
+  stage: build
+  tags: # select gitlab runners with specific tag (unrelated to git repo tags)
+    - win32
+  artifacts:
+    name: "%CI_JOB_STAGE%-%CI_COMMIT_REF_NAME%"
+    paths:
+      - dist/
+  before_script:
+    - path C:\msys64\%MSYSTEM%\bin;C:\msys64\usr\bin;%PATH%
+    - pacman --noconfirm -S --refresh --sysupgrade --needed mingw-w64-%MSYS2_ARCH%-python3-cx_Freeze 
mingw-w64-%MSYS2_ARCH%-python3-gobject mingw-w64-%MSYS2_ARCH%-python3-pytest 
mingw-w64-%MSYS2_ARCH%-gtksourceview3 mingw-w64-%MSYS2_ARCH%-gsettings-desktop-schemas glib2-devel intltool
+  script:
+    - glib-compile-schemas data
+    - python3 setup_win32.py bdist_dumb --bdist-dir build\bdist.mingw\msi --keep-temp bdist_msi --keep-temp
+  # main purpose of this job is creating installers and not checking for breakage by changes in code
+  # so allow failures since the status of the build may depend on updates of rolling-release msys2 packages
+  allow_failure: true
+
+mingw64-dist:
+  variables:
+    MSYS2_ARCH: x86_64
+    MSYSTEM: MINGW64
+  <<: *mingw-common
+
+mingw32-dist:
+  variables:
+    MSYS2_ARCH: i686
+    MSYSTEM: "MINGW32"
+  <<: *mingw-common


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