Skip to content
Snippets Groups Projects
.gitlab-ci.yml 1.52 KiB
Newer Older
Yann Leboulanger's avatar
Yann Leboulanger committed
before_script:
  - sudo apt-get update -qq && sudo apt-get install -y -qq libtool pkg-config python3-openssl gir1.2-gtk-3.0 python3-gi python3-nbxmpp-nightly python3-cairo python3-pip
Yann Leboulanger's avatar
Yann Leboulanger committed
  - sudo apt-get build-dep -y -qq gajim-default-nightly
  - sudo pip3 install pylint==2.1.1
Yann Leboulanger's avatar
Yann Leboulanger committed

stages:
  - test
  - build

run-test:
  stage: test
  script:
André's avatar
André committed
    - python3 setup.py test -s test.no_gui
Philipp Hörist's avatar
Philipp Hörist committed
run-mypy:
  stage: test
  script:
Philipp Hörist's avatar
Philipp Hörist committed
    - mypy gajim
Yann Leboulanger's avatar
Yann Leboulanger committed
run-pylint:
  stage: test
  script:
    - pylint3 --version
    - pylint --version
    - scripts/dev/pylint-ci.sh --jobs=2 gajim
run-appdata:
  stage: test
  script:
    - appstream-util validate data/org.gajim.Gajim.appdata.xml.in

Yann Leboulanger's avatar
Yann Leboulanger committed
run-build:
  stage: build
  script:
André's avatar
André committed
    - python3 setup.py sdist
    - cd dist
Yann Leboulanger's avatar
Yann Leboulanger committed
    - export FN="gajim-default-"$(date +%F)".tar"
    - mv gajim-*.tar.gz $FN.gz
    - mkdir tmp_add_plugins
    - mv $FN.gz tmp_add_plugins/
    - cd tmp_add_plugins/
    - tar xzf $FN.gz
    - rm $FN.gz
    - export GF=$(find . -maxdepth 1 -type d -name 'gajim-*')
    - mkdir -p $GF/gajim/data/plugins/
    - cd $GF/gajim/data/plugins/
Yann Leboulanger's avatar
Yann Leboulanger committed
    - curl -O https://ftp.gajim.org/plugins_1/plugin_installer.zip
    - unzip plugin_installer.zip
    - rm plugin_installer.zip
    - cd ../../../..
Yann Leboulanger's avatar
Yann Leboulanger committed
    - tar czf ../$FN.gz gajim-*
    - cd ..
    - rm -rf tmp_add_plugins
Yann Leboulanger's avatar
Yann Leboulanger committed
    - scp $FN.gz panoramix:/var/www/gajim/downloads/snap/ci/gajim-default-$CI_COMMIT_SHA.tar.gz
Yann Leboulanger's avatar
Yann Leboulanger committed

  artifacts:
    name: "gajim-default-$CI_COMMIT_REF_NAME-$CI_COMMIT_SHA"
    expire_in: 1 week
    paths:
      - gajim-default-2???-??-??.tar.gz