Merge branch 'gitlab-ci'

results
Pierre-Antoine Rouby 2023-07-26 17:15:16 +02:00
commit 21209fdb79
2 changed files with 66 additions and 39 deletions

View File

@ -1,6 +1,7 @@
stages:
- build
- test
- package
- release
#########
@ -12,11 +13,16 @@ build:
script:
- echo "TODO build pamhyr"
# build-lang:
# stage: build
# script:
# - cd ./src/lang/
# - ./create_ts.sh
build-lang:
stage: build
tags:
- linux
script:
- cd ./src/lang/
- ./create_ts.sh
artifacts:
paths:
- src/lang/*.qm
#########
# TESTS #
@ -32,56 +38,61 @@ test:
############
linux-package:
stage: release
stage: package
tags:
- release
- linux
needs:
- job: build-lang
artifacts: true
rules:
- if: $CI_COMMIT_BRANCH == 'master'
- if: $CI_COMMIT_TAG
when: never
- if: $CI_COMMIT_BRANCH == 'master' || $CI_COMMIT_TAG
artifacts:
paths:
# - packages/pamhyr-src.tar.gz
- packages/pamhyr-gnulinux-amd64.tar.xz
script:
- cd packages
- ./linux.sh
# windows-package:
# stage: release
# tags:
# - release
# - wine
# rules:
# - if: $CI_COMMIT_BRANCH == 'master'
# - if: $CI_COMMIT_TAG
# when: never
# artifacts:
# paths:
# - packages/pamhyr-win-amd64.zip
# - packages/pamhyr-win-amd64.exe
# script:
# - cd packages
# - ./wine.sh ci
windows-package:
stage: package
tags:
- release
- wine
needs:
- job: build-lang
artifacts: true
rules:
- if: $CI_COMMIT_BRANCH == 'master' || $CI_COMMIT_TAG
artifacts:
paths:
- packages/pamhyr-win-amd64.exe
script:
- cd packages
- ./windows.bat
###########
# RELEASE #
###########
tag-release:
stage: release
tags:
- release
- linux
- wine
needs:
- job: linux-package
artifacts: true
- job: windows-package
artifacts: true
rules:
- if: $CI_COMMIT_TAG
artifacts:
paths:
- packages/pamhyr-gnulinux-amd64.tar.xz
# - packages/pamhyr-win-amd64.zip
# - packages/pamhyr-win-amd64.exe
- packages/pamhyr-win-amd64.exe
script:
- cd packages
- ./linux.sh
# - ./wine.sh ci
release:
name: '$CI_COMMIT_TAG'
description: 'Automatic release from tag $CI_COMMIT_TAG'
@ -93,11 +104,7 @@ tag-release:
url: '${CI_PROJECT_URL}/-/jobs/${CI_JOB_ID}/artifacts/raw/packages/pamhyr-gnulinux-amd64.tar.xz'
filepath: '/packages/pamhyr-gnulinux-amd64.tar.xz'
link_type: 'other'
# - name: 'Windows amd64 (zip)'
# url: '${CI_PROJECT_URL}/-/jobs/${CI_JOB_ID}/artifacts/raw/packages/pamhyr-win-amd64.zip'
# filepath: '/packages/pamhyr-win-amd64.zip'
# link_type: 'Packages'
# - name: 'Windows amd64 (exe)'
# url: '${CI_PROJECT_URL}/-/jobs/${CI_JOB_ID}/artifacts/raw/packages/pamhyr-win-amd64.exe'
# filepath: '/packages/pamhyr-win-amd64.exe'
# link_type: 'Packages'
- name: 'Windows amd64 (exe)'
url: '${CI_PROJECT_URL}/-/jobs/${CI_JOB_ID}/artifacts/raw/packages/pamhyr-win-amd64.exe'
filepath: '/packages/pamhyr-win-amd64.exe'
link_type: 'other'

20
packages/windows.bat Normal file
View File

@ -0,0 +1,20 @@
rem Windows batch for pamhyr windows version building
@ECHO ON
rem Python environment
python -m pip install -r ..\requirements.txt
rem Build windows version
pyinstaller ..\src\pamhyr.py -y
rem Copy data
mkdir dist\pamhyr\View\ui\ressources
mkdir dist\pamhyr\View\ui\Widgets
copy /y ..\src\View\ui\ressources\ dist\pamhyr\View\ui\ressources
copy /y ..\src\View\ui\Widgets\*.ui dist\pamhyr\View\ui\Widgets
copy /y ..\src\View\ui\*.ui dist\pamhyr\View\ui\
copy /y ..\src\lang\*.qm dist\pamhyr\lang\
rem Make installer
"C:\Program Files (x86)\NSIS\makensis.exe" pamhyr.nsi