The tests spawn the service via GTestDBus framework and make some test API call while checking libmm interface to verify that informations are well propagated. To be able to use the fresh built libmm typelib, I used a wrapper script to set GI_TYPELIB_PATH (because DBus activation process clean the environment so it is not possible to set it directly in the file). This requires also the install of libgirepository-dev and python3-gi in the CI docker. Signed-off-by: Frederic Martinsons <frederic.martinsons@sigfox.com>
156 lines
4.5 KiB
YAML
156 lines
4.5 KiB
YAML
image: gcc
|
|
|
|
stages:
|
|
- build
|
|
|
|
before_script:
|
|
- apt update || true
|
|
- apt -y install autoconf automake libtool libgettextpo-dev libgirepository1.0-dev libglib2.0-dev libgudev-1.0-dev python3-dbus python3-gi autopoint xsltproc dbus autoconf-archive gettext
|
|
|
|
build-no-qmi:
|
|
stage: build
|
|
only:
|
|
- master
|
|
- merge_requests
|
|
- tags
|
|
- schedules
|
|
script:
|
|
- git clone --depth 1 https://gitlab.freedesktop.org/mobile-broadband/libmbim.git
|
|
- pushd libmbim
|
|
- NOCONFIGURE=1 ./autogen.sh
|
|
- ./configure --prefix=/usr
|
|
- make
|
|
- make install
|
|
- popd
|
|
- NOCONFIGURE=1 ./autogen.sh
|
|
- ./configure --prefix=/tmp/build-no-qmi --disable-gtk-doc --without-qmi
|
|
- make
|
|
- make check
|
|
- make install
|
|
|
|
build-no-mbim:
|
|
stage: build
|
|
only:
|
|
- master
|
|
- merge_requests
|
|
- tags
|
|
- schedules
|
|
script:
|
|
- git clone --depth 1 https://gitlab.freedesktop.org/mobile-broadband/libqmi.git
|
|
- pushd libqmi
|
|
- NOCONFIGURE=1 ./autogen.sh
|
|
- ./configure --prefix=/usr --disable-mbim-qmux --enable-collection=basic
|
|
- make
|
|
- make install
|
|
- popd
|
|
- NOCONFIGURE=1 ./autogen.sh
|
|
- ./configure --prefix=/tmp/build-no-mbim --disable-gtk-doc --without-mbim
|
|
- make
|
|
- make check
|
|
- make install
|
|
|
|
build-no-qmi-no-mbim:
|
|
stage: build
|
|
only:
|
|
- master
|
|
- merge_requests
|
|
- tags
|
|
- schedules
|
|
script:
|
|
- NOCONFIGURE=1 ./autogen.sh
|
|
- ./configure --prefix=/tmp/build-no-qmi-no-mbim --disable-gtk-doc --without-qmi --without-mbim
|
|
- make
|
|
- make check
|
|
- make install
|
|
|
|
build-qmi-newest-commands:
|
|
stage: build
|
|
only:
|
|
- master
|
|
- merge_requests
|
|
- tags
|
|
- schedules
|
|
script:
|
|
- git clone --depth 1 https://gitlab.freedesktop.org/mobile-broadband/libqmi.git
|
|
- pushd libqmi
|
|
- NOCONFIGURE=1 ./autogen.sh
|
|
- ./configure --prefix=/usr --disable-mbim-qmux --enable-collection=basic
|
|
- make
|
|
- make install
|
|
- popd
|
|
- NOCONFIGURE=1 ./autogen.sh
|
|
- ./configure --prefix=/tmp/build-qmi-newest-commands --disable-gtk-doc --without-mbim CFLAGS="-DWITH_NEWEST_QMI_COMMANDS"
|
|
- make
|
|
- make check
|
|
- make install
|
|
|
|
build-single-plugins:
|
|
stage: build
|
|
only:
|
|
- schedules
|
|
script:
|
|
- git clone --depth 1 https://gitlab.freedesktop.org/mobile-broadband/libmbim.git
|
|
- pushd libmbim
|
|
- NOCONFIGURE=1 ./autogen.sh
|
|
- ./configure --prefix=/usr
|
|
- make
|
|
- make install
|
|
- popd
|
|
- git clone --depth 1 https://gitlab.freedesktop.org/mobile-broadband/libqmi.git
|
|
- pushd libqmi
|
|
- NOCONFIGURE=1 ./autogen.sh
|
|
- ./configure --prefix=/usr --enable-mbim-qmux --enable-collection=basic
|
|
- make
|
|
- make install
|
|
- popd
|
|
- NOCONFIGURE=1 ./autogen.sh
|
|
- for plugin in generic altair-lte anydata broadmobi cinterion
|
|
dell dlink fibocom foxconn gosuncn haier huawei iridium
|
|
linktop longcheer mbm motorola mtk nokia nokia-icera
|
|
novatel novatel-lte option option-hso pantech
|
|
qcom-soc quectel samsung sierra-legacy sierra simtech
|
|
telit thuraya tplink ublox via wavecom x22x zte; do
|
|
./configure --prefix=/usr --disable-gtk-doc --disable-all-plugins --enable-plugin-$plugin;
|
|
make;
|
|
make clean;
|
|
done
|
|
|
|
build-default:
|
|
stage: build
|
|
only:
|
|
- master
|
|
- branches
|
|
- merge_requests
|
|
- tags
|
|
- schedules
|
|
- pushes
|
|
script:
|
|
- apt -y install gtk-doc-tools libglib2.0-doc gobject-introspection libsystemd-dev libpolkit-gobject-1-dev valac
|
|
- git clone --depth 1 https://gitlab.freedesktop.org/mobile-broadband/libmbim.git
|
|
- pushd libmbim
|
|
- NOCONFIGURE=1 ./autogen.sh
|
|
- ./configure --prefix=/usr
|
|
- make
|
|
- make install
|
|
- popd
|
|
- git clone --depth 1 https://gitlab.freedesktop.org/mobile-broadband/libqmi.git
|
|
- pushd libqmi
|
|
- NOCONFIGURE=1 ./autogen.sh
|
|
- ./configure --prefix=/usr --enable-mbim-qmux --enable-collection=basic
|
|
- make
|
|
- make install
|
|
- popd
|
|
- NOCONFIGURE=1 ./autogen.sh
|
|
- ./configure --prefix=/usr --enable-gtk-doc --with-polkit=strict --with-suspend-resume=systemd --with-systemdsystemunitdir=/lib/systemd/system
|
|
- make
|
|
- make check
|
|
- make install
|
|
- make distcheck
|
|
- sha256sum $CI_PROJECT_NAME-*.tar.xz | awk '{print $1;}' > pkg_hash.txt
|
|
artifacts:
|
|
name: "$CI_PROJECT_NAME-$CI_COMMIT_SHORT_SHA"
|
|
paths:
|
|
- /builds/$CI_PROJECT_ROOT_NAMESPACE/$CI_PROJECT_NAME/$CI_PROJECT_NAME-*.tar.xz
|
|
- /builds/$CI_PROJECT_ROOT_NAMESPACE/$CI_PROJECT_NAME/pkg_hash.txt
|
|
expire_in: 2 days
|