mirror of https://github.com/citusdata/citus.git
Fixes validate Output phase of packaging pipeline (#6678)
Pyenv is installed in our container images but I found out that pyenv is not being activated since it is activated from ~/bashrc script and in GitHub Actions (GHA) this script is not being executed Since pyenv is not activated, default python versions comes from docker images is being used and in this case we get errors for python version 3.11. Additionally, $HOME directory is /github/home for containers executed under GHA and our pyenv installation is under /root directory which is normally home directory for our packaging containers This PR activates usage of pyenv and additionally uses pyenv virtualenv feature to execute validate_output function in isolation --------- Co-authored-by: Onur Tirtir <onurcantirtir@gmail.com>pull/6682/head
parent
8a9bb272e4
commit
d919506076
|
@ -1,6 +1,20 @@
|
|||
package_type=${1}
|
||||
git clone -b v0.8.23 --depth=1 https://github.com/citusdata/tools.git tools
|
||||
|
||||
# Since $HOME is set in GH_Actions as /github/home, pyenv fails to create virtualenvs.
|
||||
# For this script, we set $HOME to /root and then set it back to /github/home.
|
||||
GITHUB_HOME="${HOME}"
|
||||
export HOME="/root"
|
||||
|
||||
eval "$(pyenv init -)"
|
||||
pyenv versions
|
||||
pyenv virtualenv ${PACKAGING_PYTHON_VERSION} packaging_env
|
||||
pyenv activate packaging_env
|
||||
|
||||
git clone -b v0.8.24 --depth=1 https://github.com/citusdata/tools.git tools
|
||||
python3 -m pip install -r tools/packaging_automation/requirements.txt
|
||||
python3 -m tools.packaging_automation.validate_build_output --output_file output.log \
|
||||
--ignore_file .github/packaging/packaging_ignore.yml \
|
||||
--package_type ${package_type}
|
||||
pyenv deactivate
|
||||
# Set $HOME back to /github/home
|
||||
export HOME=${GITHUB_HOME}
|
||||
|
|
|
@ -49,14 +49,17 @@ jobs:
|
|||
|
||||
container:
|
||||
image: citus/packaging:${{ matrix.packaging_docker_image }}-pg${{ matrix.POSTGRES_VERSION }}
|
||||
options: --user root
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Add Postgres installation directory into PATH for rpm based distros
|
||||
- name: Set Postgres and python parameters for rpm based distros
|
||||
run: |
|
||||
echo "/usr/pgsql-${{ matrix.POSTGRES_VERSION }}/bin" >> $GITHUB_PATH
|
||||
echo "/root/.pyenv/bin:$PATH" >> $GITHUB_PATH
|
||||
echo "PACKAGING_PYTHON_VERSION=3.8.16" >> $GITHUB_ENV
|
||||
|
||||
- name: Configure
|
||||
run: |
|
||||
|
@ -115,14 +118,17 @@ jobs:
|
|||
|
||||
container:
|
||||
image: citus/packaging:${{ matrix.packaging_docker_image }}
|
||||
options: --user root
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Set pg_config path to related Postgres version
|
||||
- name: Set pg_config path and python parameters for deb based distros
|
||||
run: |
|
||||
echo "PG_CONFIG=/usr/lib/postgresql/${{ matrix.POSTGRES_VERSION }}/bin/pg_config" >> $GITHUB_ENV
|
||||
echo "/root/.pyenv/bin:$PATH" >> $GITHUB_PATH
|
||||
echo "PACKAGING_PYTHON_VERSION=3.8.16" >> $GITHUB_ENV
|
||||
|
||||
- name: Configure
|
||||
run: |
|
||||
|
@ -154,5 +160,4 @@ jobs:
|
|||
apt install python3-dev python3-pip -y
|
||||
sudo apt-get purge -y python3-yaml
|
||||
python3 -m pip install --upgrade pip setuptools==57.5.0
|
||||
|
||||
./.github/packaging/validate_build_output.sh "deb"
|
||||
|
|
Loading…
Reference in New Issue