blob: 12833a65510bad0bd006b04621c923dab9c5e26a [file] [log] [blame]
Mohammed Naserd28fbaf2024-04-08 17:15:00 -04001# Copyright (c) 2024 VEXXHOST, Inc.
2#
3# Licensed under the Apache License, Version 2.0 (the "License"); you may
4# not use this file except in compliance with the License. You may obtain
5# a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
11# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
12# License for the specific language governing permissions and limitations
13# under the License.
14
Mohammed Naser19c6c8a2024-04-18 01:47:10 -040015ARG RELEASE
16
17FROM registry.atmosphere.dev/library/openstack-venv-builder:${RELEASE} AS build
Mohammed Naserd28fbaf2024-04-08 17:15:00 -040018ARG KEYSTONE_GIT_REF=f63062d47712406a807ce07b4ff3ec6213b0e824
19ADD --keep-git-dir=true https://opendev.org/openstack/keystone.git#${KEYSTONE_GIT_REF} /src/keystone
20RUN git -C /src/keystone fetch --unshallow
21COPY patches/keystone /patches/keystone
22RUN git -C /src/keystone apply --verbose /patches/keystone/*
23RUN --mount=type=cache,mode=0755,target=/root/.cache/pip,sharing=private <<EOF bash -xe
24pip3 install \
25 --constraint /upper-constraints.txt \
26 /src/keystone[ldap] \
27 keystone-keycloak-backend==0.1.8
28EOF
29
Mohammed Naser19c6c8a2024-04-18 01:47:10 -040030FROM registry.atmosphere.dev/library/openstack-python-runtime:${RELEASE}
Mohammed Naserd28fbaf2024-04-08 17:15:00 -040031RUN <<EOF bash -xe
32apt-get update -qq
33apt-get install -qq -y --no-install-recommends \
34 apache2 libapache2-mod-wsgi-py3
35apt-get clean
36rm -rf /var/lib/apt/lists/*
37EOF
38ARG MOD_AUTH_OPENIDC_VERSION=2.4.12.1
39ARG TARGETARCH
40RUN <<EOF bash -xe
41apt-get update -qq
42apt-get install -qq -y --no-install-recommends \
43 curl
44curl -LO https://github.com/OpenIDC/mod_auth_openidc/releases/download/v${MOD_AUTH_OPENIDC_VERSION}/libapache2-mod-auth-openidc_${MOD_AUTH_OPENIDC_VERSION}-1.$(lsb_release -sc)_${TARGETARCH}.deb
45apt-get install -y --no-install-recommends ./libapache2-mod-auth-openidc_${MOD_AUTH_OPENIDC_VERSION}-1.$(lsb_release -sc)_${TARGETARCH}.deb
46a2enmod auth_openidc
47apt-get purge -y --auto-remove curl
48apt-get clean
49rm -rfv /var/lib/apt/lists/* libapache2-mod-auth-openidc_${MOD_AUTH_OPENIDC_VERSION}-1.$(lsb_release -sc)_${TARGETARCH}.deb
50EOF
51COPY --from=build --link /var/lib/openstack /var/lib/openstack