| #!/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 |