Idea #21361
closedRemove build infrastructure for unsupported distros
Description
centos7, debian10, and ubuntu1804 are all unsupported as of Arvados 3.0. At least because of #21087 if not other reasons. Remove them from our build infrastructure:
- Disable or delete the associated Jenkins jobs
- Remove all dedicated build directories and scripts from
build/
- Some of the general build scripts default to
debian10
, those should be updated, probably todebian12
- There are some special cases for specific distros in the general build scripts, try to find and clean any that are obsolete, although don't sweat it too much
- Salt installer?
- Provision script?
Related issues
Updated by Brett Smith 10 months ago
- Related to Idea #21392: Package builds should require you to specify a target added
Updated by Brett Smith 10 months ago
21361-excise-old-distros @ 2eebf1fa4aab44cf47e5b44f17ecce2e8c2c208c
Tests: developer-run-tests: #4010 - Workbench 2 tests are failing because of #21427.
Salt installer changes would be better tested by test-provision, but I can't run that because of #21408.
Package builds: build-packages-multijob: #3968 - Note this runs from an earlier commit, but none of the changes since would affect the package build.
- All agreed upon points are implemented / addressed.
- See next point
- Anything not implemented (discovered or discussed during work) has a follow-up story.
- The relevant Jenkins jobs have all been removed from the multijobs that used to call them. That means they won't run automatically anymore. If they need to be more disabled than that, let me know, but that work is independent of the branch anyway. I also wonder if we should maybe make a general Jenkins cleanup ticket; there's jobs a lot older than these.
I believe the Salt installer needs additional work to work on Red Hat 8-family distros. Filed #21425 and #21426 for this, since it's more new development than the kind of cleanup this ticket anticipates.
- The relevant Jenkins jobs have all been removed from the multijobs that used to call them. That means they won't run automatically anymore. If they need to be more disabled than that, let me know, but that work is independent of the branch anyway. I also wonder if we should maybe make a general Jenkins cleanup ticket; there's jobs a lot older than these.
- Code is tested and passing, both automated and manual, what manual testing was done is described
- See above
- Documentation has been updated.
- Yes,
build/README
and script help output has been updated as needed. Our install docs and user guide still reference these old distros; that's planned to be handled as part of #21388.
- Yes,
- Behaves appropriately at the intended scale (describe intended scale).
- No change in scale
- Considered backwards and forwards compatibility issues between client and server.
- No change. We've already ended support for these distros in other ways, this is just cleanup after the fact.
- Follows our coding standards and GUI style guidelines.
- Yes
Updated by Peter Amstutz 10 months ago
- Target version changed from Development 2024-01-31 sprint to Development 2024-02-14 sprint
Updated by Lucas Di Pentima 10 months ago
Thanks for the detailed stream of commits, it was very easy to follow. I think I've found one missing piece: Workbench2's test Dockerfile. I've tried it with the following change and it worked OK:
diff --git a/services/workbench2/docker/Dockerfile b/services/workbench2/docker/Dockerfile
index 4942ca0a57..c394d63288 100644
--- a/services/workbench2/docker/Dockerfile
+++ b/services/workbench2/docker/Dockerfile
@@ -2,10 +2,10 @@
#
# SPDX-License-Identifier: AGPL-3.0
-FROM node:12.22.3-buster
+FROM node:12.22.12-bullseye
LABEL maintainer="Arvados Package Maintainers <packaging@arvados.org>"
-RUN echo deb http://deb.debian.org/debian buster-backports main >> /etc/apt/sources.list.d/backports.list
+RUN echo deb http://deb.debian.org/debian bullseye-backports main >> /etc/apt/sources.list.d/backports.list
RUN apt-get update && \
apt-get -yq --no-install-recommends -o Acquire::Retries=6 install \
libsecret-1-0 libsecret-1-dev rpm ruby ruby-dev rubygems build-essential \
The rest LGTM
Updated by Brett Smith 10 months ago
- % Done changed from 0 to 100
- Status changed from In Progress to Resolved
Applied in changeset arvados|a75d6b92ffd4825631277eb8451ce720e16b7f3d.