package-pipeline-nextcloud/nextcloud-29-app-news/package.sh
s3lph 0796b421be
Some checks failed
/ nextcloud-28 (push) Successful in 27m42s
/ nextcloud-28-app-calendar (push) Successful in 3m50s
/ nextcloud-28-app-contacts (push) Successful in 1m37s
/ nextcloud-28-app-deck (push) Successful in 3m50s
/ nextcloud-28-app-forms (push) Successful in 2m46s
/ nextcloud-28-app-gpoddersync (push) Successful in 1m15s
/ nextcloud-28-app-gpxpod (push) Successful in 7m54s
/ nextcloud-28-app-groupfolders (push) Successful in 1m52s
/ nextcloud-28-app-polls (push) Successful in 4m5s
/ nextcloud-28-app-previewgenerator (push) Successful in 1m11s
/ nextcloud-28-app-mail (push) Successful in 9m0s
/ nextcloud-28-app-news (push) Successful in 3m3s
/ nextcloud-28-app-nextpod (push) Successful in 1m42s
/ nextcloud-28-app-notes (push) Successful in 2m18s
/ nextcloud-28-app-notify-push (push) Successful in 4m32s
/ nextcloud-28-app-richdocuments (push) Successful in 3m44s
/ nextcloud-28-app-richdocumentscode (push) Successful in 15m44s
/ nextcloud-28-app-talk (push) Successful in 8m19s
/ nextcloud-28-app-tasks (push) Successful in 3m6s
/ nextcloud-28-app-twofactor-webauthn (push) Successful in 4m2s
/ nextcloud-28-app-user-oidc (push) Successful in 2m3s
/ nextcloud-29 (push) Successful in 22m9s
/ nextcloud-29-app-calendar (push) Successful in 4m48s
/ nextcloud-29-app-contacts (push) Successful in 3m27s
/ nextcloud-29-app-deck (push) Successful in 4m27s
/ nextcloud-29-app-forms (push) Successful in 3m20s
/ nextcloud-29-app-gpoddersync (push) Failing after 43s
/ nextcloud-29-app-gpxpod (push) Successful in 8m28s
/ nextcloud-29-app-groupfolders (push) Failing after 54s
/ nextcloud-29-app-polls (push) Successful in 4m25s
/ nextcloud-29-app-previewgenerator (push) Successful in 1m18s
/ nextcloud-29-app-mail (push) Successful in 8m42s
/ nextcloud-29-app-news (push) Successful in 3m27s
/ nextcloud-29-app-nextpod (push) Successful in 2m10s
/ nextcloud-29-app-notes (push) Successful in 2m36s
/ nextcloud-29-app-notify-push (push) Successful in 5m9s
/ nextcloud-29-app-richdocuments (push) Successful in 3m50s
/ nextcloud-29-app-richdocumentscode (push) Successful in 8m55s
/ nextcloud-29-app-talk (push) Successful in 6m8s
/ nextcloud-29-app-tasks (push) Failing after 51s
/ nextcloud-29-app-twofactor-webauthn (push) Successful in 3m32s
/ nextcloud-29-app-user-oidc (push) Successful in 1m50s
chore: add nextcloud-29, remove nextcloud-27
2024-04-28 18:05:46 +02:00

68 lines
2.7 KiB
Bash
Executable file

#!/bin/bash
. ../.skel/nextcloud-app/build-nextcloud-app
function pre_fetch() {
# Filter from .skel/build-nextcloud-app, but with restriction to stable versions removed
export _NCAPPS_JQ='.[] | select(.id == $app) | .releases[] | "\(.version) \(.download) \(.rawPlatformVersionSpec)"'
}
function _prepare() {
mkdir -p \
"${PKGDIR}/DEBIAN" \
"${PKGDIR}/usr/share/doc/${PKGNAME}" \
"${PKGDIR}/usr/lib/nextcloud/nextcloud-apps"
VERSION=$(cat "${SRCDIR}/${APP}/appinfo/info.xml" | xq-python -r .info.version | sed -re 's/-/~/g')
SUMMARY=$(cat "${SRCDIR}/${APP}/appinfo/info.xml" | xq-python -r '.info.summary | if type == "array" then (.[] | select(.["@lang"]=="en") | .["#text"]) else (.) end')
DESCRIPTION=$(cat "${SRCDIR}/${APP}/appinfo/info.xml" | xq-python -r '.info.description | if type == "array" then (.[] | select(.["@lang"]=="en") | .["#text"]) else (.) end')
PHP_MIN=$(cat "${SRCDIR}/${APP}/appinfo/info.xml" | xq-python -r '.info.dependencies.php."@min-version"')
PHP_MAX=$(cat "${SRCDIR}/${APP}/appinfo/info.xml" | xq-python -r '.info.dependencies.php."@max-version"')
PHP_DEP=""
# #f [[ "${PHP_MIN}" != "null" ]]; then
# PHP_DEP="${PHP_DEP}, php (>= ${PHP_MIN})"
# fi
# if [[ "${PHP_MAX}" != "null" ]]; then
# # awk increments the last version component, from https://stackoverflow.com/a/69489163
# PHP_MAX=$(echo "${PHP_MAX}" | awk -F. -v OFS=. '{$NF=$NF+1;print}')
# PHP_DEP="${PHP_DEP}, php (<< ${PHP_MAX})"
# fi
cp -r "${SRCDIR}/${APP}" "${PKGDIR}/usr/lib/nextcloud/nextcloud-apps/${APP}"
cat > "${PKGDIR}/DEBIAN/control" <<EOF
Package: ${PKGNAME}
Version: ${VERSION}
Maintainer: ${MAINTAINER}
Section: web
Priority: optional
Architecture: ${ARCH}
Depends: nextcloud-${NCMAJOR}${PHP_DEP}${ADDITIONAL_DEPS}
Provides: nextcloud-app-${APP//_/-}
Conflicts: nextcloud-app-${APP//_/-}
Description: ${SUMMARY}
$(echo ${DESCRIPTION} | fold --width=71 --spaces | sed -re 's/^([^ ])/ \1/g')
EOF
cat > "${PKGDIR}/DEBIAN/postinst" <<EOF
#!/bin/bash
set -exo pipefail
if [[ "\$1" == "configure" ]]; then
$(declare -f postinst_configure_pre | sed -e '1,2d' -e '$d')
# Only run migrations if nextcloud is installed and the app is enabled
if [[ -z "\$(grep installed /var/lib/nextcloud/webroot/config/config.php | grep false)" && \\
-n \$(sudo -u www-data php /var/lib/nextcloud/webroot/occ app:list | grep -B 10000 '^Disabled:' | grep -- "- ${APP}:") ]]; then
sudo -u www-data php /var/lib/nextcloud/webroot/occ upgrade
sudo -u www-data php /var/lib/nextcloud/webroot/occ maintenance:mode --off
fi
$(declare -f postinst_configure_post | sed -e '1,2d' -e '$d')
fi
EOF
}
post_prepare() {
github_changelog nextcloud/news
}
build_nextcloud_app news 29