diff --git a/.github/workflows/conda.yaml b/.github/workflows/conda.yaml deleted file mode 100644 index ee53be7..0000000 --- a/.github/workflows/conda.yaml +++ /dev/null @@ -1,54 +0,0 @@ -name: Build and upload conda packages - -on: - workflow_dispatch: # This allows to trigger the workflow manually - -jobs: - conda_deployment_with_new_tag: - name: Conda deployment of package with Python ${{ matrix.python-version }} - runs-on: ubuntu-latest - strategy: - matrix: - python-version: ["3.9", "3.10", "3.11", "3.12"] - cuda-version: ["12.1", "12.3", "12.6", "12.8", "12.9"] - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - name: Conda environment creation and activation - uses: conda-incubator/setup-miniconda@v2 - with: - python-version: ${{ matrix.python-version }} - environment-file: devtools/conda-envs/build_env.yaml # Path to the build conda environment - auto-update-conda: false - auto-activate-base: false - show-channel-urls: true - - name: Enforce .tar.bz2 packages - # Temporary work-arounds while the action uibcdf/action-build-and-upload-conda-packages gets updated: - # We create a `~/.condarc` file with the correct options to enforce the use of `.tar.bz2` packages - # and we set the channels to be used by conda build - shell: bash - run: | - cat > ~/.condarc << EOF - conda-build: - pkg_format: .tar.bz2 - channels: - - conda-forge - - nodefaults - - EOF - - name: Build and upload the conda packages - uses: uibcdf/action-build-and-upload-conda-packages@v1.4.0 - # Export cuda-version as an environment variable - env: - CUDA_VERSION: ${{ matrix.cuda-version }} - PYTHON_VERSION: ${{ matrix.python-version }} - with: - meta_yaml_dir: devtools/conda-build - python-version: ${{ matrix.python-version }} # Values previously defined in `matrix` - user: stochasticHydroTools - label: main - overwrite: true - upload: true - token: ${{ secrets.ANACONDA_TOKEN }} - diff --git a/.github/workflows/test-conda.yml b/.github/workflows/test-conda.yml deleted file mode 100644 index f8cac57..0000000 --- a/.github/workflows/test-conda.yml +++ /dev/null @@ -1,48 +0,0 @@ -name: Conda build test - -on: - push: - branches: [ main ] - pull_request: - branches: [ main ] - schedule: - # Run once every month - - cron: '0 0 1 * *' # At 00:00 on day-of-month 1 - -defaults: - run: - shell: bash -l {0} - -jobs: - build: - runs-on: ubuntu-latest - strategy: - fail-fast: true - steps: - - name: Check out - uses: actions/checkout@v4 - with: - fetch-depth: 0 - submodules: recursive - - - name: Install Mamba - uses: mamba-org/setup-micromamba@v2 - with: - environment-file: devtools/conda-envs/build_env.yaml - cache-environment: true - cache-downloads: true - generate-run-shell: true - - - name: List environment - run: | - micromamba list - shell: micromamba-shell {0} - - - name: Build conda package - run: | - export CUDA_VERSION=12 - export PYTHON_VERSION=3 - export CMAKE_ARGS="-DCMAKE_CUDA_ARCHITECTURES=OFF" - conda build devtools/conda-build -c conda-forge - shell: micromamba-shell {0} - diff --git a/devtools/conda-build/README.md b/devtools/conda-build/README.md deleted file mode 100644 index 6b61427..0000000 --- a/devtools/conda-build/README.md +++ /dev/null @@ -1,13 +0,0 @@ -## Conda package - -Create a conda package for libMobility with the following steps: - -1. Install conda-build and conda-verify: -```bash -conda install conda-build -``` - -2. Build the package: -```bash -conda build . -``` diff --git a/devtools/conda-build/build.sh b/devtools/conda-build/build.sh deleted file mode 100644 index d07f08f..0000000 --- a/devtools/conda-build/build.sh +++ /dev/null @@ -1,13 +0,0 @@ -set -euxo pipefail -rm -rf build || true -TMPDIR=$(mktemp -d) -SRC_DIR=$(pwd) -cd $TMPDIR - -NANOBIND_DIR=$(${PYTHON} -c 'import sysconfig; print(sysconfig.get_paths()["purelib"])')/nanobind/cmake -CMAKE_FLAGS="${CMAKE_ARGS} -DCMAKE_PREFIX_PATH=${PREFIX} -DCMAKE_INSTALL_PREFIX=${PREFIX} -DCMAKE_BUILD_TYPE=Release" -CMAKE_FLAGS+=" -DPython_EXECUTABLE=${PYTHON} -DCMAKE_VERBOSE_MAKEFILE=ON" -CMAKE_FLAGS+=" -Dnanobind_DIR=${NANOBIND_DIR}" -cmake $SRC_DIR ${CMAKE_FLAGS} -make install -j$CPU_COUNT -rm -rf $TMPDIR diff --git a/devtools/conda-build/meta.yaml b/devtools/conda-build/meta.yaml deleted file mode 100644 index 5c85d88..0000000 --- a/devtools/conda-build/meta.yaml +++ /dev/null @@ -1,57 +0,0 @@ -package: - name: libmobility - version: {{ GIT_DESCRIBE_TAG }} - -source: - git_url: ../../ - -build: - number: 0 - string: cuda{{ CUDA_VERSION }}py{{ CONDA_PY }}h{{ PKG_HASH }}_{{ PKG_BUILDNUM }} - -requirements: - - build: - - python ={{ PYTHON_VERSION }} - - cmake >=3.22 - - cuda-version {{ CUDA_VERSION }} - - {{ compiler('c') }} - - {{ compiler('cxx') }} - - cuda-libraries-dev - - cuda-nvcc - - make - - nanobind-abi - host: - - python ={{ PYTHON_VERSION }} - - cuda-version {{ CUDA_VERSION }} - - blas-devel * *netlib - - libblas - - libcblas - - liblapack - - liblapacke - - libcufft-dev - - libcublas-dev - - numpy * - - nanobind - run: - - python ={{ PYTHON_VERSION }} - - cuda-version >={{ CUDA_VERSION }} - - cuda-cudart - -test: - requires: - - pytest - - scipy - # Prove that netlib-linked BLAS works with MKL - - libblas * *mkl # [x86 or x86_64] - imports: - - libMobility - source_files: - - tests - commands: - - pytest -vs -k "SelfMobility and not fluct" tests/test_*py - -about: - home: https://github.com/stochasticHydroTools/libmobility - license: MIT - summary: Compute the action of the hydrodynamic mobility (at the RPY/FCM level) of a group of particles (in different geometries) with forces acting on them. diff --git a/devtools/conda-envs/build_env.yaml b/devtools/conda-envs/build_env.yaml deleted file mode 100644 index 40d18ee..0000000 --- a/devtools/conda-envs/build_env.yaml +++ /dev/null @@ -1,8 +0,0 @@ -name: build -channels: # write here the list of channels to look for your library dependencies - - conda-forge - - nodefaults - -dependencies: # Keep this block with only these two packages - - anaconda-client - - conda-build