From 008ca3456c9e5cd46dac5188d638e5790aa4e94e Mon Sep 17 00:00:00 2001 From: Goran Jelic-Cizmek Date: Tue, 28 Jan 2025 09:47:15 +0100 Subject: [PATCH] Remove azure and circleCI --- .circleci/config.yml | 98 ----------------------- azure-pipelines.yml | 180 ------------------------------------------- 2 files changed, 278 deletions(-) delete mode 100644 .circleci/config.yml delete mode 100644 azure-pipelines.yml diff --git a/.circleci/config.yml b/.circleci/config.yml deleted file mode 100644 index c1d872ad41..0000000000 --- a/.circleci/config.yml +++ /dev/null @@ -1,98 +0,0 @@ -version: 2.1 - -orbs: - python: circleci/python@3.0.0 - -jobs: - manylinux2014-aarch64: - - parameters: - NRN_PYTHON_VERSION_MINOR: - type: string - NRN_NIGHTLY_UPLOAD: - type: string - - machine: - image: default - - resource_class: arm.medium - - steps: - - checkout - - run: - name: Build manylinux AArch64 wheel - command: | - docker run --rm \ - -w /root/nrn \ - -v $PWD:/root/nrn \ - -v /opt/nrnwheel/mpt:/nrnwheel/mpt \ - -e NEURON_NIGHTLY_TAG \ - -e NRN_NIGHTLY_UPLOAD \ - -e NRN_RELEASE_UPLOAD \ - -e SETUPTOOLS_SCM_PRETEND_VERSION \ - -e NRN_BUILD_FOR_UPLOAD=1 \ - 'neuronsimulator/neuron_wheel:latest-aarch64' \ - packaging/python/build_wheels.bash linux 3<< parameters.NRN_PYTHON_VERSION_MINOR >> coreneuron - - - store_artifacts: - path: ./wheelhouse - destination: artifacts - - - run: - name: Test manylinux AArch64 wheel - command: | - sudo apt purge -y needrestart - sudo apt update - echo "deb http://ppa.launchpad.net/deadsnakes/ppa/ubuntu jammy main" | sudo tee /etc/apt/sources.list.d/deadsnakes-ppa.list && sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F23C5A6CF475977595C89F51BA6932366A755776 && sudo apt update - sudo apt update - # install mpi dependencies - sudo apt install -y mpich openmpi-bin libopenmpi-dev libmpich-dev - version=3.<< parameters.NRN_PYTHON_VERSION_MINOR >> - # install Python from deadsnakes - sudo apt install -y python${version}-venv libpython${version}-dev g++ make - - export PYTHON_EXE=$(which python3.<< parameters.NRN_PYTHON_VERSION_MINOR >>) - - # test wheel - packaging/python/test_wheels.sh $PYTHON_EXE $(ls -t wheelhouse/*.whl) - - - run: - name: Upload nightly wheel to pypi.org - command: | - if [ "<< parameters.NRN_NIGHTLY_UPLOAD >>" == "true" ]; then - python -m pip install --upgrade pip - python -m pip install twine - python -m twine upload --verbose --skip-existing -u $TWINE_USERNAME -p $TWINE_PASSWORD wheelhouse/*.whl - else - echo "Skipping pypi.org upload!" - fi - -workflows: - - build-workflow: - jobs: - - manylinux2014-aarch64: - filters: - branches: - only: - - /release\/.*/ - - /circleci\/.*/ - matrix: - parameters: - NRN_PYTHON_VERSION_MINOR: ["13"] - NRN_NIGHTLY_UPLOAD: ["false"] - - nightly: - triggers: - - schedule: - cron: "0 0 * * *" - filters: - branches: - only: - - master - jobs: - - manylinux2014-aarch64: - matrix: - parameters: - NRN_PYTHON_VERSION_MINOR: ["9", "10", "11", "12", "13"] - NRN_NIGHTLY_UPLOAD: ["true"] diff --git a/azure-pipelines.yml b/azure-pipelines.yml deleted file mode 100644 index 5970a4243f..0000000000 --- a/azure-pipelines.yml +++ /dev/null @@ -1,180 +0,0 @@ -#============================================================================= -# Azure Pipeline settings -#============================================================================= - -# Nightly build master for pypi upload -schedules: -- cron: "0 0 * * *" - branches: - include: - - master - always: true - -# Auto cancel old PR builds -pr: - autoCancel: true -# TODO : https://github.com/neuronsimulator/nrn/issues/1063 -# paths: -# exclude: -# - docs -# - README.md - -# Trigger build for certain branches only -trigger: -- master -- release/* - -stages: - - stage: BuildTestDeploy - jobs: - - - job: 'ManyLinuxWheels' - timeoutInMinutes: 45 - pool: - vmImage: 'ubuntu-20.04' - strategy: - matrix: - Python39: - python.version: '3.9' - Python310: - python.version: '3.10' - Python311: - python.version: '3.11' - Python312: - python.version: '3.12' - Python313: - python.version: '3.13' - - steps: - - # Secure files documentation: - # https://docs.microsoft.com/en-us/azure/devops/pipelines/library/secure-files?view=azure-devops - # NOTE: when uploading new secure files, access must be permitted from the Azure pipeline interface (check message there) - - task: DownloadSecureFile@1 - name: mpt_headersSF - displayName: 'Download mpt_headers secure file' - inputs: - secureFile: 'mpt_headears.2.21.tar.gz' - - # Note that mpt headers must be mounted in the docker imager under `/nrnwheel/mpt` - # This path is checked by `packaging/python/build_wheels.bash` when run in the image. - - script: | - sudo mkdir -p /opt/nrnwheel/mpt - sudo tar -zxf $(mpt_headersSF.secureFilePath) --directory /opt/nrnwheel/mpt - docker run --rm \ - -w /root/nrn \ - -v $PWD:/root/nrn \ - -v /opt/nrnwheel/mpt:/nrnwheel/mpt \ - -e NEURON_NIGHTLY_TAG \ - -e NRN_NIGHTLY_UPLOAD \ - -e NRN_RELEASE_UPLOAD \ - -e SETUPTOOLS_SCM_PRETEND_VERSION \ - -e NRN_BUILD_FOR_UPLOAD=1 \ - 'neuronsimulator/neuron_wheel:latest-x86_64' \ - packaging/python/build_wheels.bash linux $(python.version) coreneuron - displayName: 'Building ManyLinux Wheel' - - - script: | - sudo apt update - sudo apt install -y mpich openmpi-bin libopenmpi-dev libmpich-dev - displayName: 'Install Test System Dependencies' - - - template: ci/azure-wheel-test-upload.yml - - - # Jobs to build OSX wheels natively - - job: 'MacOSWheels' - timeoutInMinutes: 60 - pool: - vmImage: 'macOS-13' - strategy: - matrix: - Python39: - python.version: '3.9' - python.org.version: '3.9.13' - python.installer.name: 'macos11.pkg' - Python310: - python.version: '3.10' - python.org.version: '3.10.11' - python.installer.name: 'macos11.pkg' - Python311: - python.version: '3.11' - python.org.version: '3.11.7' - python.installer.name: 'macos11.pkg' - Python312: - python.version: '3.12' - python.org.version: '3.12.0' - python.installer.name: 'macos11.pkg' - Python313: - python.version: '3.13' - python.org.version: '3.13.0' - python.installer.name: 'macos11.pkg' - - steps: - - - script: | - installer=python-$(python.org.version)-$(python.installer.name) - url=https://www.python.org/ftp/python/$(python.org.version)/$installer - curl $url -o $installer - sudo installer -pkg $installer -target / - displayName: 'Install Python from python.org' - - - script: | - brew install --cask xquartz - brew install flex bison mpich - brew unlink mpich && brew install openmpi - cmake --version - # see https://github.com/BlueBrain/CoreNeuron/issues/817, uninstall libomp until we fix this - # as we are building wheels, we shouldn't enable OpenMP here anyway - brew uninstall --ignore-dependencies libomp || echo "libomp doesn't exist" - displayName: 'Install OSX System Dependencies' - - # readline has been manually built with ncurses and MACOSX_DEPLOYMENT_TARGET=10.9 and stored as secure file on Azure. - # See `packaging/python/Dockerfile` for build instructions. - # - # Secure files documentation: - # https://docs.microsoft.com/en-us/azure/devops/pipelines/library/secure-files?view=azure-devops - # NOTE: when uploading new secure files, access must be permitted from the Azure pipeline interface (check message there) - - task: DownloadSecureFile@1 - name: readlineSF - displayName: 'Download readline secure file' - inputs: - secureFile: 'readline7.0-ncurses6.4.tar.gz' - - # 10.14 is required for full C++17 support according to - # https://cibuildwheel.readthedocs.io/en/stable/cpp_standards, but it - # seems that 10.15 is actually needed for std::filesystem::path. - - script: | - export MACOSX_DEPLOYMENT_TARGET=10.15 - export PATH=/usr/local/opt/flex/bin:/usr/local/opt/bison/bin:$PATH - export SDKROOT=$(xcrun --sdk macosx --show-sdk-path) - export NRN_BUILD_FOR_UPLOAD=1 - sudo mkdir -p /opt/nrnwheel/$(uname -m) - sudo tar -zxf $(readlineSF.secureFilePath) --directory /opt/nrnwheel/$(uname -m) - packaging/python/build_wheels.bash osx $(python.version) coreneuron - displayName: 'Build MacOS Wheel' - - - template: ci/azure-wheel-test-upload.yml - - - - stage: Final - jobs: - - job: AzureDropURL - pool: - vmImage: 'ubuntu-20.04' - condition: eq(variables['Build.Reason'], 'PullRequest') - steps: - - checkout: none - - script: | - export AZURE_DROP_URL=`curl -v 'https://dev.azure.com/neuronsimulator/nrn/_apis/build/builds/$(Build.BuildId)/artifacts?artifactName=drop' | jq -r '.resource.downloadUrl'` - echo "Setting dropurl to $AZURE_DROP_URL" - echo "##vso[task.setvariable variable=dropurl]$AZURE_DROP_URL" - displayName: 'Resolve Azure drop URL' - - - task: GitHubComment@0 - continueOnError: true - inputs: - gitHubConnection: 'neuronsimulator' - repositoryName: '$(Build.Repository.Name)' - comment: | - ✔️ $(system.pullRequest.sourceCommitId) -> [Azure artifacts URL]($(dropurl))