socializer/.gitlab-ci.yml

154 lines
4.6 KiB
YAML
Raw Normal View History

# Jobs to build the two channels in Socializer.
2019-11-26 16:26:27 +01:00
# Currently using python 3.7.5
2019-01-02 03:56:12 +01:00
variables:
2019-11-25 20:52:51 +01:00
PYTHON3-32: "C:\\python37-32\\python.exe"
2019-11-26 16:52:13 +01:00
PYTHON3-64: "C:\\python37-64\\python.exe"
2019-11-25 21:04:44 +01:00
PYINSTALLER: "C:\\python37-32\\scripts\\pyinstaller.exe"
2019-01-17 23:22:49 +01:00
NSIS: "C:\\nsis\\makensis.exe"
2019-01-02 03:56:12 +01:00
2019-11-26 16:26:27 +01:00
### Job to make some tests (ToDo: I need to improve the current testing stuff. Currently those tests fails)
test_py3:
stage: test
tags:
- windows10
before_script:
2019-11-26 16:26:27 +01:00
- '%PYTHON3-32% -V'
2019-11-25 19:03:26 +01:00
- '%PYTHON3-32% -m pip install --upgrade pip'
- '%PYTHON3-32% -m pip install --upgrade -r requirements.txt'
2019-01-07 22:26:06 +01:00
only:
- schedules
script:
- cd src
2019-11-25 19:03:26 +01:00
- '%PYTHON3-32% -m coverage run run_tests.py'
- '%PYTHON3-32% -m coverage report --omit="test*"'
coverage: '/TOTAL.+ ([0-9]{1,3}%)/'
2019-11-26 16:26:27 +01:00
# Create documentation in all available languages so we'll have it at http://socializer.su/documentation
# this job is triggered on every commit to master, so we always will display the latest available version of the documentation in the website.
2019-05-07 17:29:15 +02:00
documentation:
type: deploy
tags:
- windows10
before_script:
2019-11-26 16:26:27 +01:00
- '%PYTHON3-32% -V'
2019-05-07 17:29:15 +02:00
script:
- copy changelog.md doc\changelog.md
- cd doc
2019-11-26 16:26:27 +01:00
- '%PYTHON3-32% documentation_importer.py'
2019-05-07 17:29:15 +02:00
- cd ..\src
2019-11-26 16:26:27 +01:00
- '%PYTHON3-32% ..\doc\generator.py'
2019-05-07 17:37:31 +02:00
- 'move documentation ..\'
2019-05-07 17:29:15 +02:00
only:
- master
artifacts:
paths:
- documentation
name: socializer_documentation
2019-11-26 16:26:27 +01:00
expire_in: 90 days
2019-05-07 17:29:15 +02:00
2019-11-26 16:26:27 +01:00
# Creates a version built with Python 3.7 and cx-freeze
# this is going to be the current alpha version after november 27.
2019-11-26 16:30:56 +01:00
alpha32:
2019-11-20 00:41:29 +01:00
type: deploy
tags:
- windows10
before_script:
2019-11-26 16:26:27 +01:00
- '%PYTHON3-32% -V'
2019-11-25 19:03:26 +01:00
- '%PYTHON3-32% -m pip install --upgrade pip cx_freeze'
- '%PYTHON3-32% -m pip install --upgrade -r requirements.txt'
- '%PYTHON3-32% -m pip uninstall enum34 -y'
2019-11-20 00:41:29 +01:00
script:
- copy changelog.md doc\changelog.md
- cd doc
2019-11-26 16:26:27 +01:00
- '%PYTHON3-32% documentation_importer.py'
2019-11-20 00:41:29 +01:00
- cd ..\src
2019-11-26 16:26:27 +01:00
- '%PYTHON3-32% ..\doc\generator.py'
2019-11-25 19:03:26 +01:00
- '%PYTHON3-32% write_version_data.py'
- '%PYTHON3-32% setup.py build'
2019-11-20 00:41:29 +01:00
- cd ..
- cd scripts
2019-12-03 17:34:34 +01:00
- '%PYTHON3-32% prepare_zipversion.py'
2019-11-20 00:41:29 +01:00
- call genpot_interface.bat
- call genpot_doc.bat
- cd ..
- move src\socializer.zip socializer_x86.zip
2019-11-20 00:41:29 +01:00
- move scripts\socializer.pot socializer.pot
- move scripts\socializer-documentation.pot socializer-documentation.pot
only:
- schedules
artifacts:
paths:
- socializer_x86.zip
2019-11-20 00:41:29 +01:00
- socializer.pot
- socializer-documentation.pot
name: socializer_alpha
expire_in: 1 day
### This is commented because there is no 64 bits version of enchant, thus pyenchant will not work.
### I will reenable this when we will get rid of enchant, probably in favour of symspellpy
2019-11-26 16:30:56 +01:00
# Creates a version built with Python 3.7 and cx-freeze
# this is going to be the current alpha version after november 27.
.alpha64:
2019-11-26 16:30:56 +01:00
type: deploy
tags:
- windows10
before_script:
- '%PYTHON3-64% -V'
- '%PYTHON3-64% -m pip install --upgrade pip cx_freeze'
- '%PYTHON3-64% -m pip install --upgrade -r requirements.txt'
- '%PYTHON3-64% -m pip uninstall enum34 -y'
script:
- copy changelog.md doc\changelog.md
- cd doc
- '%PYTHON3-64% documentation_importer.py'
- cd ..\src
- '%PYTHON3-64% ..\doc\generator.py'
- '%PYTHON3-64% write_version_data.py'
- '%PYTHON3-64% setup.py build'
- cd ..
- cd scripts
2019-12-03 17:34:34 +01:00
- '%PYTHON3-64% prepare_zipversion.py'
2019-11-26 16:30:56 +01:00
- call genpot_interface.bat
- call genpot_doc.bat
- cd ..
- move src\socializer.zip socializer_x64.zip
- move scripts\socializer.pot socializer.pot
- move scripts\socializer-documentation.pot socializer-documentation.pot
only:
- schedules
artifacts:
paths:
- socializer_x64.zip
- socializer.pot
- socializer-documentation.pot
name: socializer_alpha
expire_in: 1 day
2019-11-26 16:26:27 +01:00
# Generates a new stable version of the application every tag.
stable:
2018-12-16 14:23:45 +01:00
type: deploy
2018-12-18 10:55:24 +01:00
tags:
- windows
2019-01-17 23:34:44 +01:00
before_script:
2019-11-26 16:26:27 +01:00
- '%PYTHON3-32% -V'
2019-11-25 19:03:26 +01:00
- '%PYTHON3-32% -m pip install --upgrade pip'
- '%PYTHON3-32% -m pip install --upgrade -r requirements.txt'
- '%PYTHON3-32% -m pip uninstall enum34 -y'
2018-12-16 14:23:45 +01:00
script:
- copy changelog.md doc\changelog.md
2018-12-19 00:42:56 +01:00
- cd doc
2019-11-26 16:26:27 +01:00
- '%PYTHON3-32% documentation_importer.py'
2018-12-19 00:42:56 +01:00
- cd ..\src
2019-11-26 16:26:27 +01:00
- '%PYTHON3-32% ..\doc\generator.py'
2019-11-25 19:03:26 +01:00
- '%PYTHON3-32% write_version_data.py'
- '%PYTHON3-32% setup.py build'
2019-01-17 23:34:44 +01:00
- '%NSIS% installer.nsi'
2018-12-17 00:30:50 +01:00
- cd ..
2019-01-17 23:34:44 +01:00
- move src\socializer* .
2018-12-18 10:53:38 +01:00
- cd scripts
2019-11-25 19:03:26 +01:00
- '%PYTHON3-32% prepare_zipversion_cxfreeze.py'
2018-12-18 10:53:38 +01:00
- cd ..
- move src\socializer.zip socializer.zip
2019-11-25 19:03:26 +01:00
- '%PYTHON3-32% scripts/upload.py'
only:
2019-11-25 17:59:03 +01:00
- tags