Git commit 32c4018280c2870652a0be97643a01bef8ed66dd by Ben Cooksley. Committed on 03/04/2021 at 21:39. Pushed by bcooksley into branch 'master'.
Remove CI builds for SUSEQt5.14, as Frameworks is about to bump to a mandatory Qt 5.15 dependency. As we're discontinuing support for this platform, also remove all supporting infrastructure for this and switch everything that relies on this platform exclusively to SUSEQt5.15 CCMAIL: kde-frameworks-devel@kde.org M +0 -1 archive-configs/production.yaml M +0 -1 archive-configs/sandbox.yaml R +1 -1 custom-jobs/Extragear craft master SUSEQt5.15.pipeline [from: custom-jobs/Extragear craft master SUSEQt5.14.pipeline - 098% similarity] M +1 -1 custom-jobs/known-jobs.json M +1 -1 helpers/capture-dependency-diagram-data.py M +0 -1 helpers/check-platform.py M +2 -2 helpers/extract-cmake-dependency-metadata.py M +2 -2 helpers/generate-dependency-diagram-data.py M +0 -10 invent/ci-frameworks-linux.yml M +1 -1 local-metadata/abi-compliance-checker.yaml M +0 -1 local-metadata/product-definitions.yaml M +0 -3 local-metadata/project-ignore-rules.yaml D +0 -1 pipeline-templates/Frameworks/SUSEQt5.14.template D +0 -1 pipeline-templates/SUSEQt5.14.template D +0 -1 pipeline-templates/dependency-build/SUSEQt5.14.template D +0 -233 system-images/suse-qt514/Dockerfile https://invent.kde.org/sysadmin/ci-tooling/commit/32c4018280c2870652a0be97643a01bef8ed66dd diff --git a/archive-configs/production.yaml b/archive-configs/production.yaml index 33d5176..f95bbfb 100644 --- a/archive-configs/production.yaml +++ b/archive-configs/production.yaml @@ -10,7 +10,6 @@ server: cacheLocation: WindowsMSVCQt5.15: "C:\\CI\\archives\\WindowsMSVCQt5.15\\" - SUSEQt5.14: "/srv/archives/production/SUSEQt5.14/" SUSEQt5.15: "/srv/archives/production/SUSEQt5.15/" FreeBSDQt5.15: "/usr/home/jenkins/archives/production/" AndroidQt5.15: "/srv/archives/production/AndroidQt5.15/" diff --git a/archive-configs/sandbox.yaml b/archive-configs/sandbox.yaml index d719e8c..1696314 100644 --- a/archive-configs/sandbox.yaml +++ b/archive-configs/sandbox.yaml @@ -10,7 +10,6 @@ server: cacheLocation: WindowsMSVCQt5.15: "C:\\CI\\sandbox-archives\\WindowsMSVCQt5.15\\" - SUSEQt5.14: "/srv/archives/sandbox/SUSEQt5.14/" SUSEQt5.15: "/srv/archives/sandbox/SUSEQt5.15/" FreeBSDQt5.15: "/usr/home/jenkins/archives/sandbox/" AndroidQt5.15: "/srv/archives/sandbox/AndroidQt5.15/" diff --git a/custom-jobs/Extragear craft master SUSEQt5.14.pipeline b/custom-jobs/Extragear craft master SUSEQt5.15.pipeline similarity index 98% rename from custom-jobs/Extragear craft master SUSEQt5.14.pipeline rename to custom-jobs/Extragear craft master SUSEQt5.15.pipeline index e7e94cf..d58e76f 100644 --- a/custom-jobs/Extragear craft master SUSEQt5.14.pipeline +++ b/custom-jobs/Extragear craft master SUSEQt5.15.pipeline @@ -1,5 +1,5 @@ // Request a node to be allocated to us -node( "SUSEQt5.14" ) { +node( "SUSEQt5.15" ) { // We want Timestamps on everything timestamps { // We want to catch any errors that occur to allow us to send out notifications (ie. emails) if needed diff --git a/custom-jobs/known-jobs.json b/custom-jobs/known-jobs.json index d4bb552..e95c25b 100644 --- a/custom-jobs/known-jobs.json +++ b/custom-jobs/known-jobs.json @@ -1,3 +1,3 @@ [ - {"name": "Extragear craft master SUSEQt5.14"} + {"name": "Extragear craft master SUSEQt5.15"} ] diff --git a/helpers/capture-dependency-diagram-data.py b/helpers/capture-dependency-diagram-data.py index 3278349..d61be5b 100755 --- a/helpers/capture-dependency-diagram-data.py +++ b/helpers/capture-dependency-diagram-data.py @@ -18,7 +18,7 @@ arguments = parser.parse_args() # Are we interested in gathering this information? # We need to be running on the principal Linux platform - as it has the most capacity (and we can only build apidocs once) -if arguments.platform != 'SUSEQt5.14' and arguments.platform != 'SUSEQt5.15': +if arguments.platform != 'SUSEQt5.15': # Then there is nothing for us to do sys.exit(0) diff --git a/helpers/check-platform.py b/helpers/check-platform.py index d6832ab..8802e1c 100644 --- a/helpers/check-platform.py +++ b/helpers/check-platform.py @@ -11,7 +11,6 @@ parser.add_argument('metainfo', nargs='+', help='metainfo.yaml files', type=str) arguments = parser.parse_args() allPlatforms = { - 'SUSEQt5.14': 'Linux', 'SUSEQt5.15': 'Linux', 'FreeBSDQt5.15': 'FreeBSD', 'WindowsMSVCQt5.15': 'Windows', diff --git a/helpers/extract-cmake-dependency-metadata.py b/helpers/extract-cmake-dependency-metadata.py index 408b52a..758ed22 100755 --- a/helpers/extract-cmake-dependency-metadata.py +++ b/helpers/extract-cmake-dependency-metadata.py @@ -26,8 +26,8 @@ sourcesLocation = os.getcwd() buildLocation = CommonUtils.buildDirectoryForSources( sources=sourcesLocation, inSourceBuild=buildSpecification['in-source-build'] ) # Are we allowed to run? -# We only gather this metadata from the principal Linux platform, which at the moment is SUSEQt5.14 for Frameworks and everyone else -if arguments.platform != 'SUSEQt5.14': +# We only gather this metadata from the principal Linux platform, which at the moment is SUSEQt5.15 for Frameworks and everyone else +if arguments.platform != 'SUSEQt5.15': # Then there is nothing for us to do sys.exit(0) diff --git a/helpers/generate-dependency-diagram-data.py b/helpers/generate-dependency-diagram-data.py index e70c600..24a9046 100755 --- a/helpers/generate-dependency-diagram-data.py +++ b/helpers/generate-dependency-diagram-data.py @@ -22,8 +22,8 @@ buildEnvironment = EnvironmentHandler.generateFor( installPrefix=arguments.using sourcesLocation = os.getcwd() # Are we allowed to run? -# We only gather this metadata from the principal Linux platform, which at the moment is SUSEQt5.14 for everything -if arguments.platform != 'SUSEQt5.14': +# We only gather this metadata from the principal Linux platform, which at the moment is SUSEQt5.15 for everything +if arguments.platform != 'SUSEQt5.15': # Then there is nothing for us to do sys.exit(0) diff --git a/invent/ci-frameworks-linux.yml b/invent/ci-frameworks-linux.yml index 7551975..ffe055a 100644 --- a/invent/ci-frameworks-linux.yml +++ b/invent/ci-frameworks-linux.yml @@ -1,16 +1,6 @@ variables: PRODUCT: Frameworks -linux kf5-qt5 qt5.14: - image: "kdeorg/ci-suse-qt514" - extends: .linux - only: - - master - - merge_requests - variables: - PLATFORM: SUSEQt5.14 - BRANCH_GROUP: kf5-qt5 - linux kf5-qt5 qt5.15: image: "kdeorg/ci-suse-qt515" extends: .linux diff --git a/local-metadata/abi-compliance-checker.yaml b/local-metadata/abi-compliance-checker.yaml index 45510e3..e4a12a8 100644 --- a/local-metadata/abi-compliance-checker.yaml +++ b/local-metadata/abi-compliance-checker.yaml @@ -26,7 +26,7 @@ checkABIDumpFailHard: False NoLibrariesFoundFail: False -# "SUSEQt5.14": # special settings for one platform +# "SUSEQt5.15": # special settings for one platform # gcc_options: # - something # - nextsetting diff --git a/local-metadata/product-definitions.yaml b/local-metadata/product-definitions.yaml index a823c53..bb47415 100644 --- a/local-metadata/product-definitions.yaml +++ b/local-metadata/product-definitions.yaml @@ -3,7 +3,6 @@ - repositories: - "frameworks/*" platforms: - - "SUSEQt5.14" - "SUSEQt5.15" - "WindowsMSVCQt5.15" - "FreeBSDQt5.15" diff --git a/local-metadata/project-ignore-rules.yaml b/local-metadata/project-ignore-rules.yaml index ab5baf5..3a9d6fa 100644 --- a/local-metadata/project-ignore-rules.yaml +++ b/local-metadata/project-ignore-rules.yaml @@ -1,6 +1,3 @@ -'SUSEQt5.14': -- 'kdesupport/qca' - 'SUSEQt5.15': - 'kdesupport/qca' diff --git a/pipeline-templates/Frameworks/SUSEQt5.14.template b/pipeline-templates/Frameworks/SUSEQt5.14.template deleted file mode 120000 index 7aa4679..0000000 --- a/pipeline-templates/Frameworks/SUSEQt5.14.template +++ /dev/null @@ -1 +0,0 @@ -SUSEQt5.15.template \ No newline at end of file diff --git a/pipeline-templates/SUSEQt5.14.template b/pipeline-templates/SUSEQt5.14.template deleted file mode 120000 index 7aa4679..0000000 --- a/pipeline-templates/SUSEQt5.14.template +++ /dev/null @@ -1 +0,0 @@ -SUSEQt5.15.template \ No newline at end of file diff --git a/pipeline-templates/dependency-build/SUSEQt5.14.template b/pipeline-templates/dependency-build/SUSEQt5.14.template deleted file mode 120000 index 7aa4679..0000000 --- a/pipeline-templates/dependency-build/SUSEQt5.14.template +++ /dev/null @@ -1 +0,0 @@ -SUSEQt5.15.template \ No newline at end of file diff --git a/system-images/suse-qt514/Dockerfile b/system-images/suse-qt514/Dockerfile deleted file mode 100755 index 60d8f8a..0000000 --- a/system-images/suse-qt514/Dockerfile +++ /dev/null @@ -1,233 +0,0 @@ -FROM opensuse/tumbleweed -MAINTAINER openSUSE KDE Maintainers <opensuse-...@opensuse.org> - -# Add KDE:Qt:5.14 repo -RUN zypper --non-interactive addrepo --priority 50 --refresh obs://KDE:Qt:5.14/openSUSE_Tumbleweed KDE:Qt:5.14 -# Update container, import GPG key for KUQ -RUN zypper --non-interactive --gpg-auto-import-keys -v dup -# CUPS-devel at least does not like Busybox versions of some things, so ensure it is not used -RUN zypper al busybox busybox-gzip -# Install various other packages -RUN zypper --non-interactive install java-1_8_0-openjdk-headless python3-lxml python3-paramiko python3-PyYAML python3-simplejson wget file tar gzip -# Install hugo for apps.kde.org (we can't use hugo from openSUSE because it's missing all the extensions we use) -RUN wget https://github.com/gohugoio/hugo/releases/download/v0.82.0/hugo_extended_0.82.0_Linux-64bit.tar.gz && \ - tar -xzf hugo_extended_0.82.0_Linux-64bit.tar.gz && mv hugo /usr/bin && rm hugo_extended_0.82.0_Linux-64bit.tar.gz - -# Install build dependencies -RUN zypper --non-interactive install --recommends -t pattern devel_qt5 devel_C_C++ -# The pattern is likely not enough, so just install all Qt devel packages from KUQ -RUN zypper -q se --not-installed-only --repo KDE:Qt:5.14 libqt5*devel libQt5*devel | tail -n +4 | cut -d "|" -f 2 | grep -v "libqt5-creator" | grep -v "libqt5-qtvirtualkeyboard-private-headers" | grep -v "libQt5HunspellInputMethod-private-headers" | grep -vi "libqt5xdg" | grep -v "libQt5Pas" | xargs zypper --non-interactive in -# And some other useful and base packages -RUN zypper --non-interactive in git clang python3-Sphinx python3-qt5 xvfb-run AppStream python3-pip ruby-devel libffi-devel openbox sassc \ - # temporarily: curl needed for appstreamcli, cmp. https://bugzilla.opensuse.org/show_bug.cgi?id=1080446 - curl \ - # abi tracking software and it's dependencies - abi-compliance-checker ctags \ - # basic Qt5 packages, which have no -devel and should be manually installed - libqt5-qtquickcontrols libqt5-qtquickcontrols2 libqt5-qtgraphicaleffects \ - # Other basic Qt based libraries - libqca-qt5-devel \ - # For building documentation tarballs - bzip2 \ - # For image thumbnails for the KDE.org/applications subsite - ImageMagick \ - # Hidden dependency of appstream tools - gsettings-desktop-schemas \ - # Useful tools for static analysis - clazy \ - # Needed for API Documentation generation - graphviz-gd libqt5-qttools-qhelpgenerator -RUN pip install gcovr reuse doxyqml -RUN gem install atspi cucumber ftpd -RUN ln -s /usr/bin/cucumber.ruby* /usr/bin/cucumber -# KDE stuff also depends on the following -RUN zypper --non-interactive in --allow-vendor-change \ - # modemmanager-qt - ModemManager-devel \ - # networkmanager-qt - NetworkManager-devel \ - # kcoreaddons - lsof \ - # kauth - polkit-devel \ - # kwindowsystem - xcb-*-devel \ - # prison - libdmtx-devel qrencode-devel \ - # kwayland - wayland-devel \ - # baloo/kfilemetadata (some for okular) - libattr-devel libexiv2-devel libtag-devel taglib-*-devel libepub-devel libpoppler-qt5-devel lmdb-devel \ - # kdoctools - perl-URI docbook_4 docbook-xsl-stylesheets libxml2-devel libxslt-devel perl-URI \ - # khtml - giflib-devel libopenssl-devel \ - # kdelibs4support - libSM-devel \ - # kdnssd - libavahi-devel libavahi-glib-devel libavahi-gobject-devel \ - # khelpcenter (and pim for grantlee) - grantlee5-devel libxapian-devel \ - # sonnet - aspell \ - aspell-devel \ - hunspell-devel \ - libvoikko-devel \ - # kio-extras and krdc - libssh-devel \ - # plasma-pa - gconf2-devel libpulse-devel libcanberra-devel \ - # user-manager - libpwquality-devel \ - # sddm-kcm - libXcursor-devel \ - # plasma-workspace - libXtst-devel \ - # breeze-plymouth - plymouth-devel \ - # kde-gtk-config/breeze-gtk - gtk3-devel gtk2-devel python3-cairo \ - # plasma-desktop/discover - libAppStreamQt-devel fwupd-devel \ - # plasma-desktop - xf86-input-synaptics-devel xf86-input-evdev-devel libxkbfile-devel xorg-x11-server-sdk xdg-user-dirs \ - # kimpanel - ibus-devel scim-devel \ - # libksane - sane-backends-devel \ - # pim - libical-devel libkolabxml-devel libxerces-c-devel \ - # <misc> - alsa-devel libraw-devel fftw3-devel adobe-sourcecodepro-fonts \ - # choqok - qoauth-qt5-devel qtkeychain-qt5-devel \ - # krita - eigen3-devel OpenColorIO-devel dejavu-fonts gnu-free-fonts quazip-devel \ - # kaccounts / telepathy - libaccounts-qt5-devel libaccounts-glib-devel libsignon-qt5-devel intltool \ - # skrooge - sqlcipher sqlcipher-devel sqlite3-devel sqlite3 libofx-devel poppler-tools \ - # kwin - libepoxy-devel Mesa-demo Mesa-demo-x xorg-x11-server-extra dmz-icon-theme-cursors libgbm-devel weston \ - xorg-x11-server-wayland \ - # kgamma5 - libXxf86vm-devel \ - # kgraphviewer - graphviz-devel \ - # drkonqi - at-spi2-core which libgirepository-1_0-1 typelib-1_0-Atspi-2_0 gobject-introspection-devel \ - # kcalc - mpfr-devel \ - # kdevelop - gdb \ - # labplot - gsl-devel \ - # kuserfeedback - php7 \ - # digikam - QtAV-devel opencv-devel \ - # wacomtablet - libwacom-devel \ - xf86-input-wacom-devel \ - # rust-qt-binding-generator - rust rust-std \ - cargo \ - # kdevelop - clang \ - clang-devel \ - llvm-devel \ - subversion-devel \ - python3-devel \ - # clazy - clang-devel-static \ - # libkleo - libqgpgme-devel \ - # akonadi - mariadb libQt5Sql5-mysql \ - # libkdegames - openal-soft-devel \ - libsndfile-devel \ - # kscd - libmusicbrainz-devel \ - libmusicbrainz5-devel \ - # ktp-common-internals (also rest of KDE Telepathy) - telepathy-qt5-devel \ - # audiocd-kio - cdparanoia-devel \ - # ark - libarchive-devel libzip-devel \ - # ffmpegthumbs - ffmpeg-4-libavcodec-devel ffmpeg-4-libavfilter-devel ffmpeg-4-libavformat-devel ffmpeg-4-libavdevice-devel ffmpeg-4-libavutil-devel ffmpeg-4-libswscale-devel ffmpeg-4-libpostproc-devel \ - # k3b - flac-devel \ - libmad-devel \ - libmp3lame-devel \ - libogg-devel libvorbis-devel \ - libsamplerate-devel \ - # kamera - libgphoto2-devel \ - # signon-kwallet-extension - libsignon-glib-devel signond-libs-devel \ - # kdenlive - libmlt-devel libmlt++-devel libmlt6-modules libmlt6-data rttr-devel \ - # print-manager - cups-devel \ - # krfb - LibVNCServer-devel \ - # kscd - libdiscid-devel \ - # minuet - fluidsynth-devel \ - # kajongg - python3-Twisted \ - # okular - texlive-latex \ - # ksmtp tests - cyrus-sasl-plain \ - # kdb - libmariadb-devel postgresql-devel \ - # Gwenview - cfitsio-devel \ - # Calligra, Krita and probably other things elsewhere too - libboost_*-devel \ - # Amarok - gmock gtest libcurl-devel libofa-devel libgpod-devel libmtp-devel loudmouth-devel liblastfm-qt5-devel libmysqld-devel \ - # Cantor - libspectre-devel python3-numpy python3-matplotlib octave maxima libqalculate-devel moonjit-devel julia-devel \ - # KPat - freecell-solver-devel black-hole-solver-devel \ - # RKWard - R-base-devel gcc-fortran \ - # Kaffeine - libdvbv5-devel vlc-devel libXss-devel \ - # Keysmith - libsodium-devel \ - # Plasma Phone Components - libphonenumber-devel \ - # kquickcharts - glslang-devel \ - # xdg-desktop-portal-kde - pipewire-devel \ - # Spectacle - kImageAnnotator-devel kColorPicker-devel \ - # upnp-lib-qt - kdsoap-devel \ - # TotalReqall - sword-devel \ - # KSysGuard - libnl3-devel \ - # Kjournald - systemd-devel - -# For D-Bus to be willing to start it needs a Machine ID -RUN dbus-uuidgen > /etc/machine-id - -# OpenSUSE has a different GID for the 'video' group compared to the Physical Ubuntu and Debian hosts -# Therefore we create a group which matches the physical hosts 'video' group GID -# This is necessary to allow us to grant Jenkins access to the vgem device -RUN groupadd -g 44 docker-video -# We need a user account to do things as, and SSHD needs keys -RUN useradd -d /home/jenkins/ -u 1000 --user-group --create-home -G video,docker-video jenkins && /usr/sbin/sshd-gen-keys-start -# We want to run SSHD so that Jenkins can remotely connect to this container -EXPOSE 22 -CMD ["/usr/sbin/sshd", "-D"]