tools/stx/dockerfiles/stx-pkgbuilder.Dockerfile
Zhang Xiao 26d7118e2d Dockerfiles: Add example gpg key pair for repository signature
Introduce a temporary gpg key pair to sign the repository, with
"starlingx" as its password.

Insert a private key into stx-aptly to sign repositories;
Insert a public key into stx-builder, stx-pkgbuilder to use the signed
repository.

Upgrade stx-aptly from buster to bullseye.
Modify the dockerfile of stx-builder to avoid using command
`lsb_release -cs`. This command is not always work in order, it
may return "n/a" thus cause the image build error. Replace it
with "bullseye".

TestPlan:
Pass: Repository can be signed(aptly);
      The signed repository can be accessed(builder, pkgbuilder)

Story: 2008846
Task: 44616

Signed-off-by: Zhang Xiao <xiao.zhang@windriver.com>
Change-Id: I33b6ad887ace30cef0357be6442b94b1f26bca51
2022-03-16 17:30:34 +08:00

65 lines
2.0 KiB
Docker

# 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.
#
# Copyright (C) 2021-2022 Wind River Systems,Inc.
#
FROM debian:bullseye
RUN echo "deb-src http://deb.debian.org/debian bullseye main" >> /etc/apt/sources.list
# Download required dependencies by mirror/build processes.
ARG DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install --no-install-recommends -y \
build-essential \
live-build \
pbuilder \
debootstrap \
devscripts \
schroot \
debmake \
dpkg-dev \
apt-utils \
sbuild \
osc \
python3-pip \
git \
wget \
curl \
vim \
sudo \
emacs \
tini \
procps && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* && \
pip3 install Flask && \
sudo sbuild-adduser root
# workaround for docker debootstrap bug
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=968927
RUN cd /tmp && \
wget \
http://deb.debian.org/debian/pool/main/d/debootstrap/debootstrap_1.0.126+nmu1_all.deb && \
dpkg -i debootstrap_1.0.126+nmu1_all.deb
RUN groupadd crontab
COPY stx/toCOPY/pkgbuilder/app.py /opt/
COPY stx/toCOPY/pkgbuilder/debbuilder.py /opt/
COPY stx/toCOPY/pkgbuilder/setup.sh /opt/
COPY stx/toCOPY/pkgbuilder/debbuilder.conf /etc/sbuild/sbuild.conf
COPY stx/toCOPY/pkgbuilder/pubkey.rsa /root
RUN apt-key add /root/pubkey.rsa && rm -f /root/pubkey.rsa
ENTRYPOINT ["/usr/bin/tini", "--"]
WORKDIR /opt
CMD ["python3", "app.py"]