# 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