From e03c3d087abf475e6ccf2b0a1d20769119059492 Mon Sep 17 00:00:00 2001 From: vsoch Date: Wed, 10 May 2023 18:30:19 -0600 Subject: [PATCH 01/11] add wheel build this wont work because pypi will not accept this build, but maybe someone else can help to use manylinuxl... Signed-off-by: vsoch --- .devcontainer/Dockerfile | 2 +- .github/workflows/build-legacy-wheels.yaml | 52 ++++++++++++++++++++ .github/workflows/build-manual.yaml | 5 ++ .github/workflows/test-build.yaml | 7 ++- README.md | 55 ++++++---------------- docker/build-wheel.sh | 21 +++++++++ docker/build-wheels.sh | 10 ++++ docker/install-mamba.sh | 10 ++++ setup.py | 2 +- 9 files changed, 121 insertions(+), 43 deletions(-) create mode 100644 .github/workflows/build-legacy-wheels.yaml create mode 100755 docker/build-wheel.sh create mode 100755 docker/build-wheels.sh create mode 100755 docker/install-mamba.sh diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile index cac51e8..fc1f7e8 100644 --- a/.devcontainer/Dockerfile +++ b/.devcontainer/Dockerfile @@ -60,4 +60,4 @@ RUN git clone https://github.com/flux-framework/flux-security ~/security && \ ./configure --prefix=/usr && \ make && \ sudo make install && \ - sudo ldconfig + sudo ldconfig \ No newline at end of file diff --git a/.github/workflows/build-legacy-wheels.yaml b/.github/workflows/build-legacy-wheels.yaml new file mode 100644 index 0000000..1dbbff1 --- /dev/null +++ b/.github/workflows/build-legacy-wheels.yaml @@ -0,0 +1,52 @@ +name: build-legacy flux-python + +on: + pull_request: [] + workflow_dispatch: + inputs: + rc: + description: 'Release candiate to target for wheels' + default: "0" + repo: + description: 'Repository to build from' + default: "https://github.com/rse-ops/flux-core-python" + +jobs: + build-manual: + runs-on: ubuntu-latest + container: + image: fluxrm/testenv:focal + steps: + - uses: actions/checkout@v3 + + - name: Build Flux Core Branch + env: + FLUX_RELEASE_VERSION: ${{ inputs.release_version }} + FLUX_VERSION: ${{ inputs.version }} + run: /bin/bash .github/scripts/setup.sh + + - name: Build Python Bindings + env: + FLUX_BRANCH: ${{ inputs.branch }} + FLUX_REPO: ${{ inputs.repo }} + run: | + git clone -b ${FLUX_BRANCH} ${FLUX_REPO} /tmp/flux-core || git clone https://github.com/flux-framework/flux-core /tmp/flux-core + mv /tmp/flux-core/src/bindings/python/flux ./flux + python3 setup.py sdist + sudo ldconfig + + - name: Build Python Wheels + run: | + /bin/bash ./docker/install-mamba.sh + /bin/bash ./docker/build-wheels.sh + + - name: Install dependencies + if: (github.event_name != 'pull_request') + run: python3 -m pip install setuptools wheel twine + + - name: Build and publish + if: (github.event_name != 'pull_request') + env: + TWINE_USERNAME: ${{ secrets.PYPI_USER }} + TWINE_PASSWORD: ${{ secrets.PYPI_PASS }} + run: twine upload dist/* diff --git a/.github/workflows/build-manual.yaml b/.github/workflows/build-manual.yaml index be22b1b..5dcd9dd 100644 --- a/.github/workflows/build-manual.yaml +++ b/.github/workflows/build-manual.yaml @@ -47,6 +47,11 @@ jobs: mv /tmp/flux-core/src/bindings/python/flux ./flux python3 setup.py sdist sudo ldconfig + + - name: Build Python Wheels + run: | + /bin/bash ./docker/install-mamba.sh + /bin/bash ./docker/build-wheels.sh - name: Install dependencies if: (github.event_name != 'pull_request') diff --git a/.github/workflows/test-build.yaml b/.github/workflows/test-build.yaml index afccba2..19fc480 100644 --- a/.github/workflows/test-build.yaml +++ b/.github/workflows/test-build.yaml @@ -21,4 +21,9 @@ jobs: - name: Build Python Bindings run: | mv /code/src/bindings/python/flux ./flux - python3 setup.py sdist \ No newline at end of file + python3 setup.py sdist + + - name: Build Python Wheels + run: | + /bin/bash ./docker/install-mamba.sh + /bin/bash ./docker/build-wheels.sh \ No newline at end of file diff --git a/README.md b/README.md index 01866a0..b3eedf1 100644 --- a/README.md +++ b/README.md @@ -24,13 +24,13 @@ If you want to build a custom version with Flux core you can do: ```bash rm -rf ~/flux-core -export FLUX_VERSION=0.48.0 +export FLUX_VERSION=0.49.0 wget https://github.com/flux-framework/flux-core/releases/download/v${FLUX_VERSION}/flux-core-${FLUX_VERSION}.tar.gz tar -xzvf flux-core-${FLUX_VERSION}.tar.gz sudo mv flux-core-${FLUX_VERSION} ~/flux-core rm flux-core-${FLUX_VERSION}.tar.gz cd ~/flux-core -./configure --prefix=/usr/local +./configure --prefix=/usr make sudo make install ``` @@ -49,6 +49,16 @@ $ python3 setup.py sdist $ python3 setup.py sdist bdist_wheel ``` +You can build versions of the Python wheels across 3.6 to 3.10 like: + +```bash +# only need to run this once in the container +/bin/bash ./docker/install-mamba.sh + +# And this to install the current Flux + version in setup.py as a wheel +/bin/bash ./docker/build-wheels.sh +``` + And if you want to upload: ```bash @@ -82,39 +92,13 @@ If you install to a local (personal) location (e.g., `$HOME/.local`) you'll need export PYTHONPATH=$HOME/.local/lib/python3.7/site-packages ``` -### Building Modules - -We will need to build the tarball providing paths to the flux-core and flux-security -sources. This can be improved upon to just be one path if all the dependencies -are provided with the flux install (and we don't need the source). Note -that we also provide a custom version for the pypi package: - -```bash -# Generate the wheel (requires pip install wheel) -$ python3 setup.py sdist bdist_wheel --flux-root /home/vscode/flux-core --security-src /home/vscode/security --security-include /usr/local/include/flux/security --version 0.46.0-rc-0 -``` - -You can then install the wheel (as a user or to the root) - -```bash -$ pip install dist/flux-0.46.0-cp38-cp38-linux_x86_64.whl --user -$ sudo pip install dist/flux-0.46.0-cp38-cp38-linux_x86_64.whl -``` -```console -Processing ./dist/flux-0.46.0-cp38-cp38-linux_x86_64.whl -Requirement already satisfied: cffi>=1.1 in /usr/lib/python3/dist-packages (from flux==0.46.0) (1.14.0) -Installing collected packages: flux -Successfully installed flux-0.46.0 -``` - -If the development container you are using still installs the Python bindings, you'll want to do the sudo variant above to override. -And then start a flux instance: +You can then do some basic testing. ```bash $ flux start --test-size=4 ``` -And import flux. +**Ensure your PYTHONPATH is correct here** And import flux. ```bash $ ipython @@ -144,17 +128,8 @@ $ python .github/scripts/check_releases.py flux-framework --version 0.46.0 That basically checks if there should be a build. It will use the container provided here to install a custom version of flux core that builds the release. -### Work in Progress - -@vsoch wants to try installing her test releases to a system somewhere, and figure -out this issue with buidling a wheel (or maybe we don't want wheels after all): - -> HTTPError: 400 Bad Request from https://upload.pypi.org/legacy/ -> Binary wheel 'flux_python-0.46.0rc0-cp38-cp38-linux_x86_64.whl' has an -> unsupported platform tag 'linux_x86_64'. - #### Release SPDX-License-Identifier: LGPL-3.0 -LLNL-CODE-764420 +LLNL-CODE-764420 \ No newline at end of file diff --git a/docker/build-wheel.sh b/docker/build-wheel.sh new file mode 100755 index 0000000..644dbf6 --- /dev/null +++ b/docker/build-wheel.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +here=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) + +version=${1} + +if [[ "${version}" == "" ]]; then + echo "Version must be provided as script argument" + exit +fi + +# This is intended to run in the container +echo "Building Python version ${version}" +/opt/conda/bin/mamba create -y -p /tmp/py${version} python==${version} +/opt/conda/bin/mamba install -y -q -p /tmp/py${version} cffi ply six pyyaml jsonschema +export PATH=/tmp/py${version}/bin:$PATH +export PYTHONPATH=/tmp/py${version}/lib/python3.6/site-packages + +# Build the bindings for this python version! +python3 setup.py sdist bdist_wheel +unset PYTHONPATH \ No newline at end of file diff --git a/docker/build-wheels.sh b/docker/build-wheels.sh new file mode 100755 index 0000000..de7985b --- /dev/null +++ b/docker/build-wheels.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +here=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) + +# Create python environments for each version we want to release! +# We wrap like this because this script can be used locally, but +# in GitHub actions we want to do in a matrix +for version in 3.6 3.7 3.8 3.9 3.10; do + /bin/bash $here/build-wheel.sh ${version} +done diff --git a/docker/install-mamba.sh b/docker/install-mamba.sh new file mode 100755 index 0000000..8ff701f --- /dev/null +++ b/docker/install-mamba.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +# Install mamba for different python versions +# Python - instead of a system python we install mamba +curl -L https://github.com/conda-forge/miniforge/releases/latest/download/Mambaforge-Linux-x86_64.sh > mambaforge.sh +chmod +x ./mambaforge.sh +sudo bash mambaforge.sh -b -p /opt/conda +rm mambaforge.sh +/opt/conda/bin/pip install --upgrade --ignore-installed coverage cffi ply six pyyaml jsonschema +sudo chown -R vscode /opt/conda \ No newline at end of file diff --git a/setup.py b/setup.py index 7325a97..81a0ac6 100644 --- a/setup.py +++ b/setup.py @@ -25,7 +25,7 @@ # Metadata package_name = "flux-python" -package_version = "develop" +package_version = "0.49.0rc2" package_description = "Python bindings for the flux resource manager API" package_url = "https://github.com/flux-framework/flux-python" package_keywords = "flux, job manager, workload manager, orchestration, hpc" From cbc0f6708c230641811efb07147b0d68ce17ca50 Mon Sep 17 00:00:00 2001 From: vsoch Date: Wed, 10 May 2023 19:44:13 -0600 Subject: [PATCH 02/11] try something i know wont work Signed-off-by: vsoch --- .github/workflows/build-legacy-wheels.yaml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.github/workflows/build-legacy-wheels.yaml b/.github/workflows/build-legacy-wheels.yaml index 1dbbff1..84a60a5 100644 --- a/.github/workflows/build-legacy-wheels.yaml +++ b/.github/workflows/build-legacy-wheels.yaml @@ -35,6 +35,15 @@ jobs: python3 setup.py sdist sudo ldconfig + - uses: RalfG/python-wheels-manylinux-build@v0.7.1-manylinux2010_x86_64 + with: + python-versions: 'cp36-cp36 cp37-cp37 cp38-cp38 cp39-cp39 cp310-cp310' + # build-requirements: 'cython numpy' + # system-packages: 'lrzip-devel zlib-devel' + # pre-build-command: 'sh pre-build-script.sh' + # package-path: 'my_project' + #pip-wheel-args: '-w ./dist --no-deps' + - name: Build Python Wheels run: | /bin/bash ./docker/install-mamba.sh From db88b9b2a500e5069d5e6178b77cfe7d5a75633b Mon Sep 17 00:00:00 2001 From: Vanessasaurus <814322+vsoch@users.noreply.github.com> Date: Wed, 10 May 2023 19:57:04 -0600 Subject: [PATCH 03/11] Update build-legacy-wheels.yaml --- .github/workflows/build-legacy-wheels.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-legacy-wheels.yaml b/.github/workflows/build-legacy-wheels.yaml index 84a60a5..105239e 100644 --- a/.github/workflows/build-legacy-wheels.yaml +++ b/.github/workflows/build-legacy-wheels.yaml @@ -37,7 +37,7 @@ jobs: - uses: RalfG/python-wheels-manylinux-build@v0.7.1-manylinux2010_x86_64 with: - python-versions: 'cp36-cp36 cp37-cp37 cp38-cp38 cp39-cp39 cp310-cp310' + python-versions: 'cp37-cp37m cp38-cp38 cp39-cp39 cp310-cp310 cp311-cp311' # build-requirements: 'cython numpy' # system-packages: 'lrzip-devel zlib-devel' # pre-build-command: 'sh pre-build-script.sh' From 76456e855ef6cfa0ad5255d5bcbf8a8387f128ce Mon Sep 17 00:00:00 2001 From: Vanessasaurus <814322+vsoch@users.noreply.github.com> Date: Wed, 10 May 2023 20:12:48 -0600 Subject: [PATCH 04/11] Update build-legacy-wheels.yaml --- .github/workflows/build-legacy-wheels.yaml | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build-legacy-wheels.yaml b/.github/workflows/build-legacy-wheels.yaml index 105239e..f8fd848 100644 --- a/.github/workflows/build-legacy-wheels.yaml +++ b/.github/workflows/build-legacy-wheels.yaml @@ -36,11 +36,17 @@ jobs: sudo ldconfig - uses: RalfG/python-wheels-manylinux-build@v0.7.1-manylinux2010_x86_64 + env: + FLUX_BRANCH: ${{ inputs.branch }} + FLUX_REPO: ${{ inputs.repo }} with: python-versions: 'cp37-cp37m cp38-cp38 cp39-cp39 cp310-cp310 cp311-cp311' # build-requirements: 'cython numpy' # system-packages: 'lrzip-devel zlib-devel' - # pre-build-command: 'sh pre-build-script.sh' + pre-build-command: | + git clone -b ${FLUX_BRANCH} ${FLUX_REPO} /tmp/flux-core || git clone https://github.com/flux-framework/flux-core /tmp/flux-core + mv /tmp/flux-core/src/bindings/python/flux ./flux + # package-path: 'my_project' #pip-wheel-args: '-w ./dist --no-deps' From f5b77dbde238eca198dd4ff5f8c561d6b6a2aa48 Mon Sep 17 00:00:00 2001 From: Vanessasaurus <814322+vsoch@users.noreply.github.com> Date: Wed, 10 May 2023 20:22:58 -0600 Subject: [PATCH 05/11] Update build-legacy-wheels.yaml --- .github/workflows/build-legacy-wheels.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-legacy-wheels.yaml b/.github/workflows/build-legacy-wheels.yaml index f8fd848..8f02c5f 100644 --- a/.github/workflows/build-legacy-wheels.yaml +++ b/.github/workflows/build-legacy-wheels.yaml @@ -44,7 +44,7 @@ jobs: # build-requirements: 'cython numpy' # system-packages: 'lrzip-devel zlib-devel' pre-build-command: | - git clone -b ${FLUX_BRANCH} ${FLUX_REPO} /tmp/flux-core || git clone https://github.com/flux-framework/flux-core /tmp/flux-core + git clone https://github.com/flux-framework/flux-core /tmp/flux-core mv /tmp/flux-core/src/bindings/python/flux ./flux # package-path: 'my_project' From 9a3de52efe6de6ae41eff6044f59e0f853b6c495 Mon Sep 17 00:00:00 2001 From: vsoch Date: Wed, 10 May 2023 20:33:02 -0600 Subject: [PATCH 06/11] add docker prebuilt Signed-off-by: vsoch --- .github/workflows/build-legacy-wheels.yaml | 5 +---- docker/pre-build.sh | 7 +++++++ 2 files changed, 8 insertions(+), 4 deletions(-) create mode 100644 docker/pre-build.sh diff --git a/.github/workflows/build-legacy-wheels.yaml b/.github/workflows/build-legacy-wheels.yaml index 8f02c5f..846a2bc 100644 --- a/.github/workflows/build-legacy-wheels.yaml +++ b/.github/workflows/build-legacy-wheels.yaml @@ -43,10 +43,7 @@ jobs: python-versions: 'cp37-cp37m cp38-cp38 cp39-cp39 cp310-cp310 cp311-cp311' # build-requirements: 'cython numpy' # system-packages: 'lrzip-devel zlib-devel' - pre-build-command: | - git clone https://github.com/flux-framework/flux-core /tmp/flux-core - mv /tmp/flux-core/src/bindings/python/flux ./flux - + pre-build-command: ./bin/bash ./docker/pre-build.sh # package-path: 'my_project' #pip-wheel-args: '-w ./dist --no-deps' diff --git a/docker/pre-build.sh b/docker/pre-build.sh new file mode 100644 index 0000000..44e5745 --- /dev/null +++ b/docker/pre-build.sh @@ -0,0 +1,7 @@ +#!/bin/bash + +echo "repo: $FLUX_REPO" +echo "branch: $FLUX_BRANCH" +git clone https://github.com/flux-framework/flux-core /tmp/flux-core +mv /tmp/flux-core/src/bindings/python/flux ./flux + From 2e984ec9c28def7ddbaa4ef3740b2e274426be02 Mon Sep 17 00:00:00 2001 From: Vanessasaurus <814322+vsoch@users.noreply.github.com> Date: Wed, 10 May 2023 20:46:22 -0600 Subject: [PATCH 07/11] Update build-legacy-wheels.yaml --- .github/workflows/build-legacy-wheels.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-legacy-wheels.yaml b/.github/workflows/build-legacy-wheels.yaml index 846a2bc..3aad54f 100644 --- a/.github/workflows/build-legacy-wheels.yaml +++ b/.github/workflows/build-legacy-wheels.yaml @@ -43,7 +43,7 @@ jobs: python-versions: 'cp37-cp37m cp38-cp38 cp39-cp39 cp310-cp310 cp311-cp311' # build-requirements: 'cython numpy' # system-packages: 'lrzip-devel zlib-devel' - pre-build-command: ./bin/bash ./docker/pre-build.sh + pre-build-command: sh ./docker/pre-build.sh # package-path: 'my_project' #pip-wheel-args: '-w ./dist --no-deps' From 8a30ad15fd2d0650914384fde528a442d77cc3fc Mon Sep 17 00:00:00 2001 From: vsoch Date: Wed, 10 May 2023 20:58:38 -0600 Subject: [PATCH 08/11] try building flux in container first Signed-off-by: vsoch --- .github/workflows/build-legacy-wheels.yaml | 17 ++++------------- docker/pre-build.sh | 11 ++++++++++- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/.github/workflows/build-legacy-wheels.yaml b/.github/workflows/build-legacy-wheels.yaml index 3aad54f..8f9c69d 100644 --- a/.github/workflows/build-legacy-wheels.yaml +++ b/.github/workflows/build-legacy-wheels.yaml @@ -19,26 +19,17 @@ jobs: steps: - uses: actions/checkout@v3 - - name: Build Flux Core Branch + - name: Prepare Versions env: FLUX_RELEASE_VERSION: ${{ inputs.release_version }} - FLUX_VERSION: ${{ inputs.version }} - run: /bin/bash .github/scripts/setup.sh - - - name: Build Python Bindings - env: FLUX_BRANCH: ${{ inputs.branch }} FLUX_REPO: ${{ inputs.repo }} run: | - git clone -b ${FLUX_BRANCH} ${FLUX_REPO} /tmp/flux-core || git clone https://github.com/flux-framework/flux-core /tmp/flux-core - mv /tmp/flux-core/src/bindings/python/flux ./flux - python3 setup.py sdist - sudo ldconfig + echo ${FLUX_RELEASE_VERSION} > ./flux-release-version + echo ${FLUX_BRANCH} > ./flux-branch + echo ${FLUX_REPO} > ./flux-repo - uses: RalfG/python-wheels-manylinux-build@v0.7.1-manylinux2010_x86_64 - env: - FLUX_BRANCH: ${{ inputs.branch }} - FLUX_REPO: ${{ inputs.repo }} with: python-versions: 'cp37-cp37m cp38-cp38 cp39-cp39 cp310-cp310 cp311-cp311' # build-requirements: 'cython numpy' diff --git a/docker/pre-build.sh b/docker/pre-build.sh index 44e5745..14bd55c 100644 --- a/docker/pre-build.sh +++ b/docker/pre-build.sh @@ -1,7 +1,16 @@ #!/bin/bash +here=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +root=$(dirname $here) + +FLUX_REPO=$(cat ./flux-repo) +FLUX_BRANCH=$(cat ./flux-branch) +FLUX_RELEASE_VERSION=$(cat ./flux-release-version) echo "repo: $FLUX_REPO" echo "branch: $FLUX_BRANCH" +echo "release: $FLUX_RELEASE_VERSION" + git clone https://github.com/flux-framework/flux-core /tmp/flux-core mv /tmp/flux-core/src/bindings/python/flux ./flux - +export FLUX_REPO FLUX_BRANCH FLUX_RELEASE_VERSION +/bin/bash $root/.github/scripts/setup.sh From c7c4be91f576686da068fe8404d13f52126b1e19 Mon Sep 17 00:00:00 2001 From: vsoch Date: Wed, 10 May 2023 21:07:54 -0600 Subject: [PATCH 09/11] try install to action container Signed-off-by: vsoch --- docker/pre-build.sh | 107 +++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 105 insertions(+), 2 deletions(-) diff --git a/docker/pre-build.sh b/docker/pre-build.sh index 14bd55c..67cad4e 100644 --- a/docker/pre-build.sh +++ b/docker/pre-build.sh @@ -1,7 +1,11 @@ #!/bin/bash -here=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +# This will install flux-core and flux-security into the +# alma image. + +here=$(cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd) root=$(dirname $here) +ls FLUX_REPO=$(cat ./flux-repo) FLUX_BRANCH=$(cat ./flux-branch) @@ -13,4 +17,103 @@ echo "release: $FLUX_RELEASE_VERSION" git clone https://github.com/flux-framework/flux-core /tmp/flux-core mv /tmp/flux-core/src/bindings/python/flux ./flux export FLUX_REPO FLUX_BRANCH FLUX_RELEASE_VERSION -/bin/bash $root/.github/scripts/setup.sh + +yum -y update \ + && yum -y install 'dnf-command(config-manager)' \ + && yum -y update \ + && yum -y install epel-release \ + && yum -y install \ + wget \ + man-db \ + less \ + xz \ + lbzip2 \ + fftw-devel \ + fftw \ + git \ + curl \ + bind-utils \ + sudo \ + munge \ + ccache \ + lua \ + valgrind \ + jq \ + which \ + file \ + unzip \ + vim \ + patch \ + diffutils \ + pkgconfig \ + libtool \ + autoconf \ + automake \ + gcc-gfortran \ + gcc \ + gcc-c++ \ + make \ + cmake \ + bison \ + flex \ + python36 \ + python3-devel \ + python3-six \ + python3-yaml \ + python3-jsonschema \ + python3-sphinx \ + libsodium-devel \ + libyaml-devel \ + libgomp \ + zeromq-devel \ + czmq-devel \ + jansson-devel \ + munge-devel \ + ncurses-devel \ + lz4-devel \ + sqlite-devel \ + boost-devel \ + libuuid-devel \ + hwloc-devel \ + lua-devel \ + libedit-devel \ + valgrind-devel \ + libs3-devel \ + systemd-devel \ + libarchive-devel \ + pam-devel \ + openssh-server \ + openssh-clients \ + perl-Time-HiRes \ + lua-posix \ + libfaketime \ + cppcheck \ + enchant \ + aspell \ + aspell-en \ + sudo \ + glibc-langpack-en \ + hwloc \ + && yum clean all + +ln -fs /usr/local/bin/python3.8 /usr/bin/python3 +printf "LANG=C.UTF-8" > /etc/locale.conf + +# Assuming installing to /usr +export LD_LIBRARY_PATH=/usr/lib + +# Full clone in case... +git clone https://github.com/flux-framework/flux-core ~/flux-core +cd ~/flux-core +./autogen.sh +./configure --prefix=/usr +make +make install + +git clone https://github.com/flux-framework/flux-security ~/security +cd ~/security +./autogen.sh +./configure --prefix=/usr +make +make install +ldconfig From 00c8f820e20096b412f42b60a51d1a8621c091e3 Mon Sep 17 00:00:00 2001 From: vsoch Date: Wed, 10 May 2023 21:12:41 -0600 Subject: [PATCH 10/11] try install to action container Signed-off-by: vsoch --- docker/pre-build.sh | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/docker/pre-build.sh b/docker/pre-build.sh index 67cad4e..f9dac79 100644 --- a/docker/pre-build.sh +++ b/docker/pre-build.sh @@ -10,17 +10,16 @@ ls FLUX_REPO=$(cat ./flux-repo) FLUX_BRANCH=$(cat ./flux-branch) FLUX_RELEASE_VERSION=$(cat ./flux-release-version) + echo "repo: $FLUX_REPO" echo "branch: $FLUX_BRANCH" echo "release: $FLUX_RELEASE_VERSION" -git clone https://github.com/flux-framework/flux-core /tmp/flux-core +git clone -b ${FLUX_BRANCH} ${FLUX_REPO} /tmp/flux-core || git clone https://github.com/flux-framework/flux-core /tmp/flux-core mv /tmp/flux-core/src/bindings/python/flux ./flux export FLUX_REPO FLUX_BRANCH FLUX_RELEASE_VERSION yum -y update \ - && yum -y install 'dnf-command(config-manager)' \ - && yum -y update \ && yum -y install epel-release \ && yum -y install \ wget \ From 4cd73b2ed518d4e4edf7f0dc9f01b1f4c9f46433 Mon Sep 17 00:00:00 2001 From: vsoch Date: Wed, 10 May 2023 21:44:22 -0600 Subject: [PATCH 11/11] barrg Signed-off-by: vsoch --- docker/pre-build.sh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/docker/pre-build.sh b/docker/pre-build.sh index f9dac79..ab622e7 100644 --- a/docker/pre-build.sh +++ b/docker/pre-build.sh @@ -61,6 +61,7 @@ yum -y update \ python3-yaml \ python3-jsonschema \ python3-sphinx \ + libsodium \ libsodium-devel \ libyaml-devel \ libgomp \ @@ -95,6 +96,7 @@ yum -y update \ hwloc \ && yum clean all +ldconfig ln -fs /usr/local/bin/python3.8 /usr/bin/python3 printf "LANG=C.UTF-8" > /etc/locale.conf