cloudstack-mirror/debian/cloudstack-common.postinst

36 lines
1.6 KiB
Bash

#!/bin/sh
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you 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.
set -e
CLOUDUTILS_DIR="/usr/share/pyshared/"
# distutils was removed in Python 3.12 (Ubuntu 24.04); the Debian/Ubuntu-patched
# sysconfig 'deb_system' scheme gives the same /usr/lib/python3/dist-packages path.
DIST_DIR=$(python3 -c "import sysconfig; print(sysconfig.get_path('platlib', 'deb_system'))")
if command -v py3compile >/dev/null 2>&1; then
py3compile -p cloudstack-common 2>/dev/null || echo "Warning: py3compile failed for cloudstack-common" >&2
py3compile -p cloudstack-common /usr/share/cloudstack-common 2>/dev/null || echo "Warning: py3compile failed for cloudstack-common (/usr/share/cloudstack-common)" >&2
fi
cp $CLOUDUTILS_DIR/cloud_utils.py $DIST_DIR
cp -R $CLOUDUTILS_DIR/cloudutils $DIST_DIR
python3 -m py_compile $DIST_DIR/cloud_utils.py
python3 -m compileall $DIST_DIR/cloudutils