From 9727d956fc284077df99c9aa41560c9e842707b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Enrico=20Tr=C3=B6ger?= Date: Thu, 27 Oct 2022 12:13:31 +0200 Subject: [PATCH] Remove Debian parts as these are still in WIP --- builders/Dockerfile.debian | 32 --- builders/README.md | 50 +---- builders/scripts/build_debian_geany.sh | 182 ----------------- .../scripts/build_debian_geany_plugins.sh | 183 ------------------ .../scripts/update_debian_repositories.sh | 49 ----- builders/start_build.sh | 83 +------- 6 files changed, 9 insertions(+), 570 deletions(-) delete mode 100644 builders/Dockerfile.debian delete mode 100644 builders/scripts/build_debian_geany.sh delete mode 100644 builders/scripts/build_debian_geany_plugins.sh delete mode 100644 builders/scripts/update_debian_repositories.sh diff --git a/builders/Dockerfile.debian b/builders/Dockerfile.debian deleted file mode 100644 index 5febc18..0000000 --- a/builders/Dockerfile.debian +++ /dev/null @@ -1,32 +0,0 @@ -# -# Copyright 2022 The Geany contributors -# License: GPLv2 -# -# Docker image for Geany and Geany-Plugins for building Debian packages. -# - -ARG BASE_IMAGE_NAME=debian:bullseye -FROM $BASE_IMAGE_NAME - -LABEL org.opencontainers.image.title="Geany-Debian-CI" -LABEL org.opencontainers.image.description="Build image for Geany CI to support automatic building of Debian packages." -LABEL org.opencontainers.image.url="https://github.com/geany/infrastructure" -LABEL org.opencontainers.image.source="https://github.com/geany/infrastructure" -LABEL org.opencontainers.image.authors="The Geany contributors" -LABEL org.opencontainers.image.licenses="GPL-2.0" - -ENV DEBIAN_FRONTEND=noninteractive - -RUN set -ex && \ - apt-get update && \ - apt-get dist-upgrade --assume-yes && \ - apt-get install --assume-yes --no-install-recommends \ - ca-certificates wget gnupg build-essential git \ - devscripts dpkg-dev equivs fakeroot git-buildpackage \ - intltool libdistro-info-perl reprepro \ - # pre-install a few basic dependencies we probably need to reduce build time - libgtk-3-dev python3 python3-docutils python3-lxml \ - # pre-install some geany-plugins dependencies - cppcheck valac libgpgme-dev libctpl-dev liblua5.1-0-dev libmarkdown2-dev \ - # tools not necessary for build but useful for debugging - nano less diff --git a/builders/README.md b/builders/README.md index 535cbd6..00137c3 100644 --- a/builders/README.md +++ b/builders/README.md @@ -4,15 +4,11 @@ CI / Nightly-Builders ## About Scripts and Dockerfiles for Geany and Geany-Plugins nightly builds. -`start_build.sh` will create (if missing) Docker images for -Debian stable and unstable as well as a Docker image for Mingw-w64 -cross-compilaton to Windows. -For the created Debian packages repositories for the distributions -(stable and unstable) will be created. +`start_build.sh` will create (if missing) a Docker image for +Mingw-w64 cross-compilaton to Windows. ## Scripts and files - ├── Dockerfile.debian -> Dockerfile for Debian build image ├── Dockerfile.mingw64 -> Dockerfile for Mingw-64 build image ├── README.md ├── certificates -> Certificate for signing Windows binaries and installer @@ -29,12 +25,7 @@ For the created Debian packages repositories for the distributions │   └── mirrorlist.mingw64 ├── output -> Directory where all build results are stored │ - ├── scripts -> Build scripts to be executed within Docker containers - │   ├── build_debian_geany.sh -> Build Geany Debian packages - │   ├── build_debian_geany_plugins.sh -> Build Geany-Plugins Debian packages - │   └── update_debian_repositories.sh -> Build repositories for Debian packages - │ - └── start_build.sh -> Run Debian and Windows build containers and start builds + └── start_build.sh -> Run Windows build containers and start builds ## Geany sources @@ -49,10 +40,7 @@ Geany resp. Geany-Plugins from GIT master. Main entry point to (re-)build the necessary Docker images and trigger the builds of Geany and Geany-Plugins for the various targets. - usage: start_build.sh [-d|--distro DISTRO] [-m|--mingw64] - [-r|--rebuild-images] - -d, --distro DISTRO Build for target Debian DISTRO (e.g. "bullseye", - can be specified multiple times + usage: start_build.sh [-m|--mingw64] [-r|--rebuild-images] -f, --force-rebuild Force rebuilding of immages even if not necessary -g, --geany Build Geany --geany-script Path to the script to be executed to build Geany @@ -68,35 +56,9 @@ the builds of Geany and Geany-Plugins for the various targets. -s, --sudo Use "sudo" for Docker commands -Example to build Geany and Geany-Plugins for Debian Bullseye, Debian Sid and Windows: - - bash start_build.sh --geany --geany-plugins --mingw64 --distro sid --distro bullseye - -## Debian package build - -The Debian based builds use as much as possible the official Debian package sources -from https://salsa.debian.org/geany-team/geany.git (and resp. for Geany-Plugins). - -Within the Debian based Docker images, packages are built from a GIT clone of Geany (unless -a source tree is provided into the container via a volume). - -### Docker image - -The Debian based Docker image is pretty straight-forward and just extends the official -"debian:$distro" images. The base image can be passed as build argument on image building and -so images for different Debian distributions (stable, sid, ...) can be built for later use. - -The Dockerfile just installs a couple of development tools and libraries which are required for -building Geany and Geany-Plugins. This is mainly to prepopulate the image with commonly used -tools and libraries. - -### Repository creation - -TBW - WIP - -#### GnuPG key +Example to build Geany and Geany-Plugins for Windows: -TBW - WIP + bash start_build.sh --geany --geany-plugins --mingw64 ## Windows (Mingw64) build diff --git a/builders/scripts/build_debian_geany.sh b/builders/scripts/build_debian_geany.sh deleted file mode 100644 index 43fd1de..0000000 --- a/builders/scripts/build_debian_geany.sh +++ /dev/null @@ -1,182 +0,0 @@ -#!/bin/bash -# -# Copyright 2022 The Geany contributors -# License: GPLv2 -# -# Helper script to build Debian packages for Geany. -# -# This script has to be executed within the Docker container. -# The Docker container should have a bind-mount for ${OUTPUT_DIRECTORY} -# where the resulting packages is stored. -# -# This script is meant to be run in a Docker container. -# - - -GEANY_VERSION= # will be set below from configure.ac -GEANY_GIT_REVISION= # will be set below from configure.ac -PACKAGE_VERSION= # will be set below -OUTPUT_DIRECTORY="/output" -GEANY_GIT_REPOSITORY="https://github.com/geany/geany.git" -GEANY_DEBIAN_REPOSITORY="https://salsa.debian.org/geany-team/geany.git" - -# rather static values, unlikely to be changed -GEANY_SOURCE_DIR="/geany-source" -GEANY_BUILD_DIR="/tmp/geany-build" -GEANY_DEBIAN_DIR="/tmp/geany-debian" - -# for "dch" (debian changelog) -export DEBEMAIL="devel@lists.geany.org" -export DEBFULLNAME="The Geany contributors" - -# stop on errors -set -e - - -log() { - echo "=========== $(date '+%Y-%m-%d %H:%M:%S %Z') $* ===========" -} - - -git_clone_geany_if_necessary() { - log "Clone Geany repository (if necessary)" - mkdir -p "$(dirname ${GEANY_BUILD_DIR})" - if [ -d ${GEANY_SOURCE_DIR} ]; then - log "Copying Geany source" - cp --archive ${GEANY_SOURCE_DIR}/ ${GEANY_BUILD_DIR}/ - else - log "Cloning Geany repository from ${GEANY_GIT_REPOSITORY}" - git clone --depth 1 ${GEANY_GIT_REPOSITORY} ${GEANY_BUILD_DIR} - fi -} - - -parse_geany_version() { - log "Parse Geany version" - GEANY_VERSION=$(sed -n -E -e 's/^AC_INIT\(\[Geany\], \[(.+)\],/\1/p' ${GEANY_BUILD_DIR}/configure.ac) - GEANY_GIT_REVISION=$(cd ${GEANY_BUILD_DIR} && git rev-parse --short --revs-only HEAD 2>/dev/null || true) - PACKAGE_VERSION="${GEANY_VERSION}-1~$(date '+%Y%m%d')git${GEANY_GIT_REVISION}" -} - - -run_autogen_sh() { - log "Run ./autogen.sh" - cd ${GEANY_BUILD_DIR} - # run ./autogen.sh as the Debian package won't run ./autogen.sh for us - NOCONFIGURE=1 ./autogen.sh -} - -create_tarball_for_debuild() { - log "Create source tarball" - cd ${GEANY_BUILD_DIR} - # create a source tarball, keep .git included on purpose for Geany GIT build detection - tar --transform "s,^,geany-${GEANY_VERSION}/,S" \ - --create \ - --gzip \ - --file "../geany_${GEANY_VERSION}.orig.tar.gz" \ - . -} - - -git_clone_debian_geany() { - log "Clone Geany Debian repository" - git clone --depth 1 ${GEANY_DEBIAN_REPOSITORY} ${GEANY_DEBIAN_DIR} - # move debian package files to Geany GIT checkout - mv ${GEANY_DEBIAN_DIR}/debian ${GEANY_BUILD_DIR} -} - - -install_build_dependencies() { - log "Install build dependencies" - cd ${GEANY_BUILD_DIR} - apt-get --assume-yes update - apt-get --assume-yes dist-upgrade - mk-build-deps \ - --install \ - --remove \ - --tool "apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --assume-yes" - # mk-build-deps leave the following files which then break 'debuild' later on - rm -f geany-build-deps_*-?_amd64.buildinfo geany-build-deps_*-?_amd64.changes -} - - -add_changelog_entry() { - log "Add ChangeLog entry for Debian package" - cd ${GEANY_BUILD_DIR} - dch \ - --urgency low \ - --distribution unstable \ - --newversion "${PACKAGE_VERSION}" \ - "Autobuilt by CI or nightly build." -} - - -build_package() { - log "Build Debian package" - cd ${GEANY_BUILD_DIR} - - debuild -uc -us -} - - -copy_results() { - log "Copy build artefacts" - - BUILD_DIR_DIRNAME=$(dirname ${GEANY_BUILD_DIR}) - - rm -rf ${OUTPUT_DIRECTORY}/geany/* - - cp --verbose ${BUILD_DIR_DIRNAME}/geany_* ${OUTPUT_DIRECTORY}/geany - cp --verbose ${BUILD_DIR_DIRNAME}/geany-common_* ${OUTPUT_DIRECTORY}/geany - cp --verbose ${BUILD_DIR_DIRNAME}/geany-dbgsym_* ${OUTPUT_DIRECTORY}/geany -} - - -log_and_store_build_environment() { - log "Using environment" - - GTK_VERSION=$(pkg-config --modversion gtk+-3.0) - GLIB_VERSION=$(pkg-config --modversion glib-2.0) - COMPILER_VERSION=$(gcc -dumpfullversion) - - echo "Debian Distribution : $(grep PRETTY_NAME /etc/os-release | cut -d '=' -f 2)" - echo "Geany version : ${GEANY_VERSION}" - echo "Geany GIT revision : ${GEANY_GIT_REVISION}" - echo "GLib version : ${GLIB_VERSION}" - echo "GTK version : ${GTK_VERSION}" - echo "GCC version : ${COMPILER_VERSION}" - - cat < ${OUTPUT_DIRECTORY}/geany/versions.json - { - "glib_version": "${GLIB_VERSION}", - "gtk_version": "${GTK_VERSION}", - "gcc_version": "${COMPILER_VERSION}", - } -EOT - - # dump and copy test suite log otherwise it would be lost - cat ${GEANY_BUILD_DIR}/tests/ctags/test-suite.log - cp ${GEANY_BUILD_DIR}/tests/ctags/test-suite.log ${OUTPUT_DIRECTORY}/geany -} - - -main() { - git_clone_geany_if_necessary - parse_geany_version - run_autogen_sh - create_tarball_for_debuild - - git_clone_debian_geany - install_build_dependencies - add_changelog_entry - - build_package - copy_results - - log_and_store_build_environment - - log "Done." -} - - -main diff --git a/builders/scripts/build_debian_geany_plugins.sh b/builders/scripts/build_debian_geany_plugins.sh deleted file mode 100644 index be14328..0000000 --- a/builders/scripts/build_debian_geany_plugins.sh +++ /dev/null @@ -1,183 +0,0 @@ -#!/bin/bash -# -# Copyright 2022 The Geany contributors -# License: GPLv2 -# -# Helper script to build Debian packages for Geany-Plugins. -# -# This script has to be executed within the Docker container. -# The Docker container should have a bind-mount for ${OUTPUT_DIRECTORY} -# where the resulting packages is stored. -# -# This script is meant to be run in a Docker container. -# - - -GEANY_PLUGINS_VERSION= # will be set below from configure.ac -GEANY_PLUGINS_GIT_REVISION= # will be set below from configure.ac -PACKAGE_VERSION= # will be set below -OUTPUT_DIRECTORY="/output" -GEANY_PLUGINS_GIT_REPOSITORY="https://github.com/geany/geany-plugins.git" -GEANY_PLUGINS_DEBIAN_REPOSITORY="https://salsa.debian.org/geany-team/geany-plugins.git" - -# rather static values, unlikely to be changed -GEANY_PLUGINS_SOURCE_DIR="/geany-plugins-source" -GEANY_PLUGINS_BUILD_DIR="/tmp/geany-plugins-build" -GEANY_PLUGINS_DEBIAN_DIR="/tmp/geany-plugins-debian" - -# for "dch" (debian changelog) -export DEBEMAIL="devel@lists.geany.org" -export DEBFULLNAME="The Geany contributors" - -# stop on errors -set -e - - -log() { - echo "=========== $(date '+%Y-%m-%d %H:%M:%S %Z') $* ===========" -} - - -git_clone_geany_if_necessary() { - log "Clone Geany-Plugins repository (if necessary)" - mkdir -p "$(dirname ${GEANY_PLUGINS_BUILD_DIR})" - if [ -d ${GEANY_PLUGINS_SOURCE_DIR} ]; then - log "Copying Geany-Plugins source" - cp --archive ${GEANY_PLUGINS_SOURCE_DIR}/ ${GEANY_PLUGINS_BUILD_DIR}/ - else - log "Cloning Geany-Plugins repository from ${GEANY_PLUGINS_GIT_REPOSITORY}" - git clone --depth 1 ${GEANY_PLUGINS_GIT_REPOSITORY} ${GEANY_PLUGINS_BUILD_DIR} - fi -} - - -parse_geany_plugins_version() { - log "Parse Geany-Plugins version" - GEANY_PLUGINS_VERSION=$(sed -n -E -e 's/^AC_INIT\(\[geany-plugins\], \[(.+)\]\)/\1/p' ${GEANY_PLUGINS_BUILD_DIR}/configure.ac) - GEANY_PLUGINS_GIT_REVISION=$(cd ${GEANY_PLUGINS_BUILD_DIR} && git rev-parse --short --revs-only HEAD 2>/dev/null || true) - PACKAGE_VERSION="${GEANY_PLUGINS_VERSION}-1~$(date '+%Y%m%d')git${GEANY_PLUGINS_GIT_REVISION}" -} - - -run_autogen_sh() { - log "Run ./autogen.sh" - cd ${GEANY_PLUGINS_BUILD_DIR} - # run ./autogen.sh as the Debian package won't run ./autogen.sh for us - NOCONFIGURE=1 ./autogen.sh -} - - -create_tarball_for_debuild() { - log "Create source tarball" - cd ${GEANY_PLUGINS_BUILD_DIR} - tar --transform "s,^,geany-plugins-${GEANY_PLUGINS_VERSION}/,S" \ - --create \ - --gzip \ - --file "../geany-plugins_${GEANY_PLUGINS_VERSION}.orig.tar.gz" \ - . -} - - -git_clone_debian_geany() { - log "Clone Geany-Plugins Debian repository" - git clone --depth 1 ${GEANY_PLUGINS_DEBIAN_REPOSITORY} ${GEANY_PLUGINS_DEBIAN_DIR} - # move debian package files to Geany GIT checkout - mv ${GEANY_PLUGINS_DEBIAN_DIR}/debian ${GEANY_PLUGINS_BUILD_DIR} -} - - -install_build_dependencies() { - log "Install build dependencies" - cd ${GEANY_PLUGINS_BUILD_DIR} - # install Geany from previous build - dpkg -i \ - ${OUTPUT_DIRECTORY}/geany/geany-common_*git*_all.deb \ - ${OUTPUT_DIRECTORY}/geany/geany_*git*_amd64.deb - - apt-get --assume-yes update - apt-get --assume-yes dist-upgrade - mk-build-deps \ - --install \ - --remove \ - --tool "apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends --assume-yes" - # mk-build-deps leave the following files which then break 'debuild' later on - rm -f geany-plugins-build-deps_*-?_amd64.buildinfo geany-plugins-build-deps_*-?_amd64.changes -} - - -add_changelog_entry() { - log "Add ChangeLog entry for Debian package" - cd ${GEANY_PLUGINS_BUILD_DIR} - dch \ - --urgency low \ - --distribution unstable \ - --newversion "${PACKAGE_VERSION}" \ - "Autobuilt by CI or nightly build." -} - - -build_package() { - log "Build Debian package" - cd ${GEANY_PLUGINS_BUILD_DIR} - - debuild -uc -us -} - - -copy_results() { - log "Copy build artefacts" - - BUILD_DIR_DIRNAME=$(dirname ${GEANY_PLUGINS_BUILD_DIR}) - - rm -rf ${OUTPUT_DIRECTORY}/geany-plugins/* - - cp --verbose ${BUILD_DIR_DIRNAME}/geany-plugins_* ${OUTPUT_DIRECTORY}/geany-plugins - cp --verbose ${BUILD_DIR_DIRNAME}/geany-plugins-*_* ${OUTPUT_DIRECTORY}/geany-plugins - cp --verbose ${BUILD_DIR_DIRNAME}/geany-plugin-*_* ${OUTPUT_DIRECTORY}/geany-plugins -} - - -log_and_store_build_environment() { - log "Using environment" - - GTK_VERSION=$(pkg-config --modversion gtk+-3.0) - GLIB_VERSION=$(pkg-config --modversion glib-2.0) - COMPILER_VERSION=$(gcc -dumpfullversion) - - echo "Debian Distribution : $(grep PRETTY_NAME /etc/os-release | cut -d '=' -f 2)" - echo "Geany-Plugins version : ${GEANY_PLUGINS_VERSION}" - echo "Geany-Plugins GIT revision : ${GEANY_PLUGINS_GIT_REVISION}" - echo "GLib version : ${GLIB_VERSION}" - echo "GTK version : ${GTK_VERSION}" - echo "GCC version : ${COMPILER_VERSION}" - - cat < ${OUTPUT_DIRECTORY}/geany-plugins/versions.json - { - "glib_version": "${GLIB_VERSION}", - "gtk_version": "${GTK_VERSION}", - "gcc_version": "${COMPILER_VERSION}", - } -EOT -} - - -main() { - git_clone_geany_if_necessary - parse_geany_plugins_version - run_autogen_sh - create_tarball_for_debuild - - git_clone_debian_geany - install_build_dependencies - add_changelog_entry - - build_package - copy_results - - log_and_store_build_environment - - log "Done." -} - - -main diff --git a/builders/scripts/update_debian_repositories.sh b/builders/scripts/update_debian_repositories.sh deleted file mode 100644 index b95081a..0000000 --- a/builders/scripts/update_debian_repositories.sh +++ /dev/null @@ -1,49 +0,0 @@ -#!/bin/bash -# -# Copyright 2022 The Geany contributors -# License: GPLv2 -# -# Create a Debian repository for the Debian distribution -# requested in the environment variable ${DISTRO}. -# The repository will be signed with the GnuPG key as found -# in /gnupg (which must be provided from the caller). -# -# This script is meant to be run in a Docker container. -# - - -# codename -> suite mapping -declare -A SUITES=([bullseye]=stable [sid]=unstable) - -# stop on errors -set -e - -# cleanup -rm -rf /repository/conf -rm -rf /repository/db -rm -rf /repository/dists -rm -rf /repository/pool - -# create repository config -mkdir /repository/conf -cat << CONF > /repository/conf/distributions -Codename: ${DISTRO} -Suite: ${SUITES[${DISTRO}]} -Components: main -Architectures: amd64 source -SignWith: ${GNUPG_KEYID} -CONF - -# create repository -reprepro --silent --gnupghome /gnupg -b /repository createsymlinks -package_paths=`find /output -name '*.deb'` -for package in ${package_paths} -do - reprepro --silent --gnupghome /gnupg -b /repository includedeb ${DISTRO} ${package} -done -# add source packages -dsc_paths=`find /output -name '*.dsc'` -for dsc in ${dsc_paths} -do - reprepro --silent --gnupghome /gnupg -b /repository includedsc ${DISTRO} ${dsc} -done diff --git a/builders/start_build.sh b/builders/start_build.sh index 38663a8..a8ad64f 100644 --- a/builders/start_build.sh +++ b/builders/start_build.sh @@ -3,16 +3,13 @@ # Copyright 2022 The Geany contributors # License: GPLv2 # -# Run Debian and Windows build containers and start builds within. +# Run Windows build containers and start builds within. # The Docker image for the containers are rebuilt automatically # every 30 days to keep them up to date. # # This script has to be run outside of the containers. # -# usage: start_build.sh [-d|--distro DISTRO] [-m|--mingw64] -# [-r|--rebuild-images] -# -d, --distro DISTRO Build for target Debian DISTRO (e.g. "bullseye", -# can be specified multiple times +# usage: start_build.sh [-m|--mingw64] [-r|--rebuild-images] # -f, --force-rebuild Force rebuilding of immages even if not necessary # -g, --geany Build Geany # --geany-source Path to a Geany source directory (optional, cloned from GIT if missing) @@ -27,9 +24,6 @@ DOCKER_IMAGE_MAX_AGE_DAYS=30 -# GNUPG config for the Debian repository, path and key must exist on the local machine -GNUPG_HOME=${GNUPG_HOME:-~/.gnupg} -GNUPG_KEYID=${GNUPG_KEYID:-0EE5B5AD} BASE_OUTPUT_DIRECTORY="${PWD}/output/" DOCKER_CMD="docker" @@ -81,64 +75,6 @@ rebuild_image() { } -build_for_debian_distro() { - distro=${1} - IMAGE_NAME_DEBIAN="geany-debian-${distro}-ci" - OUTPUT_DIRECTORY=${BASE_OUTPUT_DIRECTORY}/${distro} - LOGFILE_GEANY=${OUTPUT_DIRECTORY}/build_debian_${distro}_geany_$(date '+%Y_%m_%d_%H_%M_%S').log - LOGFILE_GEANY_PLUGINS=${OUTPUT_DIRECTORY}/build_debian_${distro}_geany_plugins_$(date '+%Y_%m_%d_%H_%M_%S').log - - mkdir -p "${OUTPUT_DIRECTORY}/geany" "${OUTPUT_DIRECTORY}/geany-plugins" - - # (re)build Docker image - rebuild_image "${IMAGE_NAME_DEBIAN}" Dockerfile.debian "--build-arg BASE_IMAGE_NAME=debian:${distro}" - - # build Geany - if [ -n "${DO_GEANY}" ]; then - log - "Building Geany for ${distro}" - log "${LOGFILE_GEANY}" \ - ${DOCKER_CMD} run \ - --rm \ - --env=GITHUB_PULL_REQUEST="${GITHUB_PULL_REQUEST}" \ - --env=CI="${CI}" \ - --volume "${PWD}/scripts:/scripts/" \ - --volume "${OUTPUT_DIRECTORY}:/output/" \ - --tmpfs /tmp:rw,exec,size=1024m \ - "${IMAGE_NAME_DEBIAN}:latest" \ - bash /scripts/build_debian_geany.sh - fi - - # build Geany-Plugins - if [ -n "${DO_GEANY_PLUGINS}" ]; then - log - "Building Geany-Plugins for ${distro}" - log "${LOGFILE_GEANY_PLUGINS}" \ - ${DOCKER_CMD} run \ - --rm \ - --env=GITHUB_PULL_REQUEST="${GITHUB_PULL_REQUEST}" \ - --env=CI="${CI}" \ - --volume "${PWD}/scripts:/scripts/" \ - --volume "${OUTPUT_DIRECTORY}:/output/" \ - --tmpfs /tmp:rw,exec,size=1024m \ - "${IMAGE_NAME_DEBIAN}:latest" \ - bash /scripts/build_debian_geany_plugins.sh - fi - - # build/update Debian repository - log - "Update Debian repository for ${distro}" - log "${OUTPUT_DIRECTORY}/build_debian_repository_$(date '+%Y_%m_%d_%H_%M_%S').log" \ - ${DOCKER_CMD} run \ - --rm \ - --env GNUPG_KEYID="${GNUPG_KEYID}" \ - --env DISTRO="${distro}" \ - --volume "${PWD}/scripts:/scripts/" \ - --volume "${GNUPG_HOME}:/gnupg/" \ - --volume "${OUTPUT_DIRECTORY}:/output/" \ - --volume "${BASE_OUTPUT_DIRECTORY}/repositories/${distro}:/repository/" \ - "${IMAGE_NAME_DEBIAN}:latest" \ - bash /scripts/update_debian_repositories.sh -} - - build_mingw64() { IMAGE_NAME_WINDOWS="geany-mingw64-ci" MINGW64_OUTPUT_DIRECTORY=${BASE_OUTPUT_DIRECTORY}/mingw64 @@ -194,10 +130,8 @@ build_mingw64() { usage() { - echo "usage: start_build.sh [-d|--distro DISTRO] [-m|--mingw64]" + echo "usage: start_build.sh [-m|--mingw64]" echo " [-r|--rebuild-images]" - echo " -d, --distro DISTRO Build for target Debian DISTRO (e.g. \"bullseye\"," - echo " can be specified multiple times" echo " -g, --geany Build Geany" echo "--geany-script Path to the script to be executed to build Geany" echo "--geany-source Path to a Geany source directory (optional, cloned from GIT if missing)" @@ -220,11 +154,6 @@ parse_command_line_options() { fi for opt in "$@"; do case "$opt" in - -d|--distro) - DO_DISTRO="${DO_DISTRO} ${2}" - shift - shift - ;; -f|--force-rebuild) DO_FORCE_IMAGE_REBUILD=1 shift @@ -281,7 +210,6 @@ parse_command_line_options() { } -DO_DISTRO= DO_MINGW64= DO_IMAGE_REBUILD= DO_FORCE_IMAGE_REBUILD= @@ -293,11 +221,6 @@ GEANY_PLUGINS_SOURCE= main() { - if [ -n "${DO_DISTRO}" ]; then - for distro in ${DO_DISTRO}; do - build_for_debian_distro "${distro}" - done - fi if [ -n "${DO_MINGW64}" ]; then build_mingw64 fi