53 lines
2.2 KiB
YAML
53 lines
2.2 KiB
YAML
.flatpak-base:
|
|
stage: deploy
|
|
rules:
|
|
# run the job on mainline branches of mainline repositories
|
|
- if: $KDECI_SECURE_SERVICES_KEY
|
|
when: on_success
|
|
# or if the manifest was modified
|
|
- changes:
|
|
paths:
|
|
- ".flatpak-manifest.*"
|
|
# files that are particularly prone to break the appstream checks in Flatpak
|
|
- "**/*.appdata.xml"
|
|
- "**/*.desktop"
|
|
# files that possibly indicate changes to dependencies
|
|
- ".kde-ci.yml"
|
|
- "CMakeLists.txt"
|
|
when: on_success
|
|
# or when triggered manually
|
|
- when: manual
|
|
# we don't want the manual job to block the pipeline
|
|
allow_failure: true
|
|
variables:
|
|
KDE_FLATPAK_MODULE_NAME: ${CI_PROJECT_NAME}
|
|
KDECI_SIGNFLATPAK_CONFIG: $CI_PROJECT_DIR/ci-utilities/signing/signflatpak.ini
|
|
interruptible: true
|
|
before_script:
|
|
- git clone https://invent.kde.org/sysadmin/ci-utilities.git --depth=1
|
|
- git clone https://invent.kde.org/sysadmin/ci-notary-service.git --depth=1
|
|
script:
|
|
- echo ${KDE_FLATPAK_MODULE_NAME}
|
|
# Build and install
|
|
- python3 -u ci-utilities/flatpak-build.py ${KDE_FLATPAK_MODULE_NAME}
|
|
# Test the Flatpak
|
|
- flatpak install -y --user "$CI_PROJECT_DIR/${KDE_FLATPAK_MODULE_NAME}.flatpak"
|
|
- python3 -u ci-utilities/flatpak-test.py
|
|
# Sign and publish (if the project branch is cleared for signing and publishing)
|
|
- |
|
|
if [ -f ${KDE_FLATPAK_MODULE_NAME}-locale.flatpak ]; then
|
|
python3 ci-notary-service/signflatpak.py -v --config $KDECI_SIGNFLATPAK_CONFIG --locale-bundle ${KDE_FLATPAK_MODULE_NAME}-locale.flatpak --debug-bundle ${KDE_FLATPAK_MODULE_NAME}-debug.flatpak ${KDE_FLATPAK_MODULE_NAME}.flatpak
|
|
else
|
|
python3 ci-notary-service/signflatpak.py -v --config $KDECI_SIGNFLATPAK_CONFIG --debug-bundle ${KDE_FLATPAK_MODULE_NAME}-debug.flatpak ${KDE_FLATPAK_MODULE_NAME}.flatpak
|
|
fi
|
|
artifacts:
|
|
name: Flatpak artifacts
|
|
expose_as: "Flatpak Bundle"
|
|
when: always
|
|
paths:
|
|
- "${KDE_FLATPAK_MODULE_NAME}.flatpak"
|
|
- "${KDE_FLATPAK_MODULE_NAME}-debug.flatpak"
|
|
- "${KDE_FLATPAK_MODULE_NAME}-locale.flatpak"
|
|
- "task.log"
|
|
- "task-debug.log"
|
|
expire_in: 7 days
|