| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- # Python CircleCI 2.0 configuration file
- #
- # Check https://circleci.com/docs/2.0/language-python/ for more details
- #
- version: 2.1
- commands:
- build-py-38-common:
- parameters:
- go_arch:
- # amd64 or arm64
- type: string
- hugo_arch:
- # 64bit (AMD64) or ARM64
- type: string
- steps:
- - checkout
- - run:
- name: compile
- command: |
- sudo ln -fs /usr/share/zoneinfo/UTC /etc/localtime
- export DEBIAN_FRONTEND=noninteractive
- sudo apt-get update -y
- sudo apt-get install -y gcc g++ build-essential git sudo curl
- sudo apt-get install -y curl python3.8-dev python3.8-venv python3.8-distutils asciidoc rsync curl libkrb5-dev libldap2-dev libsasl2-dev libxml2-dev libxslt-dev libsasl2-modules-gssapi-mit libsnappy-dev libffi-dev libncursesw5-dev libgdbm-dev libc6-dev libssl-dev openssl
- curl -sL https://deb.nodesource.com/setup_20.x | sudo bash - && sudo apt-get install -y nodejs
- unset PIP_FIND_LINKS
- unset PIP_EXTRA_INDEX_URL
- curl -sL https://bootstrap.pypa.io/get-pip.py | sudo python3.8
- PYTHON_VER=python3.8 make apps docs test_prep
- - run:
- name: run documentation lints
- command: |
- cd ~/repo
- curl -O https://dl.google.com/go/go1.23.4.linux-<< parameters.go_arch >>.tar.gz
- tar -xvf go1.23.4.linux-<< parameters.go_arch >>.tar.gz
- go/bin/go install github.com/raviqqe/muffet/v2@latest
- curl --output hugo_0.69.0_Linux.tar.gz -L https://github.com/gohugoio/hugo/releases/download/v0.69.0/hugo_0.69.0_Linux-<< parameters.hugo_arch >>.tar.gz
- tar -xvf hugo_0.69.0_Linux.tar.gz
- export PATH=$PWD:$HOME/go/bin:$PATH
- # Trigger linting if documentation changes
- ./tools/ci/check_for_website_dead_links.sh docs/docs-site
- # ./tools/ci/check_for_website_dead_links.sh docs/gethue
- - run:
- name: run python lints
- command: |
- PYTHONWARNINGS=always ./build/venvs/python3.8/bin/hue runruff check
- - run:
- name: run tests
- command: |
- PYTHONWARNINGS=always ./build/venvs/python3.8/bin/pytest
- - store_artifacts:
- path: test-reports
- destination: test-reports
- jobs:
- build-py-38-arm64:
- machine:
- image: ubuntu-2004:2023.07.1
- resource_class: arm.medium
- working_directory: ~/repo
- steps:
- - build-py-38-common:
- go_arch: "arm64"
- hugo_arch: "ARM64"
- workflows:
- version: 2
- build-python3:
- jobs:
- - build-py-38-arm64:
- filters:
- branches:
- ignore:
- - master
|