Files
system-config/docker/hound/Dockerfile
Clark Boylan a7e556e11e Update Hound Container to Debian Trixie
Much of the motivation here is to exercise the Trixie containers before
we deploy Gerrit on them. That said it is a good opportunity to update
hound to run on newer platforms like node 22 as well.

We update the nodesource repo to use the new nodistro release as Trixie
doesn't have a release entry in the old repo setup. Then we bump up to
node 22 to match gitea.

Finally, we update the golang build version as the upstream golang
images don't build golang older than 1.24 on Trixie. We go with latest
(1.25) under the hopes it will work, but we can try 1.24 if 1.25 doesn't
work.

Change-Id: Idcfd2e5880f17c1d4062e8d17036d3b21422a53a
2025-12-09 15:11:48 -08:00

55 lines
1.9 KiB
Docker

# Copyright (c) 2020 Red Hat, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
# implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# Trigger rebuild - Wed Apr 23 05:03:23 PM UTC 2025
FROM docker.io/library/golang:1.25-trixie AS builder
WORKDIR /tmp
RUN apt-get update \
&& apt-get install -y curl git make rsync \
&& curl -sS https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key -o /etc/apt/keyrings/nodesource-repo.gpg.key \
&& echo "deb [signed-by=/etc/apt/keyrings/nodesource-repo.gpg.key] https://deb.nodesource.com/node_22.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list \
&& apt-get update \
&& apt-get -q --option "Dpkg::Options::=--force-confold" --assume-yes install nodejs
RUN git clone https://github.com/hound-search/hound \
&& cd hound \
&& make
FROM quay.io/opendevorg/python-base:3.12-trixie
COPY --from=builder /tmp/hound/.build/bin/hound /usr/local/bin
COPY --from=builder /tmp/hound/.build/bin/houndd /usr/local/bin
RUN apt-get update \
&& apt-get install -y curl git
RUN pip install git+https://opendev.org/opendev/jeepyb#egg=jeepyb \
supervisor
RUN apt-get clean \
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
ADD supervisord.conf /etc/supervisor/conf.d/supervisord.conf
ADD start-container.sh /usr/bin/start-container
ADD update-hound-config.sh /usr/local/bin/update-hound-config
ADD resync-hound.sh /usr/local/bin/resync-hound
ADD sample-projects.yaml /var/run/sample-projects.yaml
ENTRYPOINT ["start-container"]