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>
(cherry picked from commit d919506076
)
release-11.1-backport-ahmet
parent
1b7b2ecf37
commit
5a662b4bf9
|
@ -1,6 +1,20 @@
|
||||||
package_type=${1}
|
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 pip install -r tools/packaging_automation/requirements.txt
|
||||||
python3 -m tools.packaging_automation.validate_build_output --output_file output.log \
|
python3 -m tools.packaging_automation.validate_build_output --output_file output.log \
|
||||||
--ignore_file .github/packaging/packaging_ignore.yml \
|
--ignore_file .github/packaging/packaging_ignore.yml \
|
||||||
--package_type ${package_type}
|
--package_type ${package_type}
|
||||||
|
pyenv deactivate
|
||||||
|
# Set $HOME back to /github/home
|
||||||
|
export HOME=${GITHUB_HOME}
|
||||||
|
|
|
@ -49,14 +49,17 @@ jobs:
|
||||||
|
|
||||||
container:
|
container:
|
||||||
image: citus/packaging:${{ matrix.packaging_docker_image }}-pg${{ matrix.POSTGRES_VERSION }}
|
image: citus/packaging:${{ matrix.packaging_docker_image }}-pg${{ matrix.POSTGRES_VERSION }}
|
||||||
|
options: --user root
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
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: |
|
run: |
|
||||||
echo "/usr/pgsql-${{ matrix.POSTGRES_VERSION }}/bin" >> $GITHUB_PATH
|
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
|
- name: Configure
|
||||||
run: |
|
run: |
|
||||||
|
@ -115,14 +118,17 @@ jobs:
|
||||||
|
|
||||||
container:
|
container:
|
||||||
image: citus/packaging:${{ matrix.packaging_docker_image }}
|
image: citus/packaging:${{ matrix.packaging_docker_image }}
|
||||||
|
options: --user root
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v3
|
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: |
|
run: |
|
||||||
echo "PG_CONFIG=/usr/lib/postgresql/${{ matrix.POSTGRES_VERSION }}/bin/pg_config" >> $GITHUB_ENV
|
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
|
- name: Configure
|
||||||
run: |
|
run: |
|
||||||
|
@ -154,5 +160,4 @@ jobs:
|
||||||
apt install python3-dev python3-pip -y
|
apt install python3-dev python3-pip -y
|
||||||
sudo apt-get purge -y python3-yaml
|
sudo apt-get purge -y python3-yaml
|
||||||
python3 -m pip install --upgrade pip setuptools==57.5.0
|
python3 -m pip install --upgrade pip setuptools==57.5.0
|
||||||
|
|
||||||
./.github/packaging/validate_build_output.sh "deb"
|
./.github/packaging/validate_build_output.sh "deb"
|
||||||
|
|
Loading…
Reference in New Issue