forked from numpy/numpy
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1 from numpy/main
Need to update Numpy fork to be more current
- Loading branch information
Showing
2,197 changed files
with
438,831 additions
and
156,806 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,177 @@ | ||
# Python CircleCI 2.1 configuration file | ||
# | ||
# Check https://circleci.com/docs/2.1/language-python/ for more details | ||
# | ||
version: 2.1 | ||
|
||
# Aliases to reuse | ||
_defaults: &defaults | ||
docker: | ||
# CircleCI maintains a library of pre-built images | ||
# documented at https://circleci.com/docs/2.1/circleci-images/ | ||
# circleci/python3.8 images come with old versions of Doxygen(1.6.x), | ||
# therefore a new base image chose instead to guarantee to | ||
# have a newer version >= 1.8.10 to avoid warnings | ||
# that related to the default behaviors or non-exist config options | ||
- image: cimg/python:3.9 | ||
working_directory: ~/repo | ||
|
||
|
||
jobs: | ||
build: | ||
<<: *defaults | ||
steps: | ||
- checkout | ||
|
||
- run: | ||
name: Check-skip | ||
command: | | ||
export git_log=$(git log --max-count=1 --pretty=format:"%B" | tr "\n" " ") | ||
echo "Got commit message:" | ||
echo "${git_log}" | ||
if [[ -v CIRCLE_PULL_REQUEST ]] && \ | ||
([[ "$git_log" == *"[skip circle]"* ]] || \ | ||
[[ "$git_log" == *"[circle skip]"* ]]) | ||
then | ||
echo "Skip detected, exiting job ${CIRCLE_JOB} for PR ${CIRCLE_PULL_REQUEST}." | ||
circleci-agent step halt; | ||
fi | ||
- run: | ||
name: pull changes from merge | ||
command: | | ||
if [[ -v CI_PULL_REQUEST ]] ; then git pull --ff-only origin "refs/pull/${CI_PULL_REQUEST//*pull\//}/merge" ; fi | ||
- run: | ||
name: update submodules | ||
command: | | ||
git submodule init | ||
git submodule update | ||
- run: | ||
name: create virtual environment, install dependencies | ||
command: | | ||
sudo apt-get update | ||
#sudo apt-get install -y python3.9 python3.9-dev python3-venv graphviz texlive-fonts-recommended texlive-latex-recommended \ | ||
sudo apt-get install -y graphviz texlive-fonts-recommended texlive-latex-recommended \ | ||
texlive-latex-extra latexmk texlive-xetex texlive-lang-chinese doxygen | ||
python3.9 -m venv venv | ||
. venv/bin/activate | ||
- run: | ||
name: build numpy | ||
command: | | ||
. venv/bin/activate | ||
pip install --progress-bar=off -r test_requirements.txt | ||
pip install --progress-bar=off -r doc_requirements.txt | ||
pip install . --config-settings=setup-args="-Dallow-noblas=true" | ||
- run: | ||
name: create release notes | ||
command: | | ||
. venv/bin/activate | ||
VERSION=$(python -c "import setup; print(setup.VERSION)") | ||
towncrier build --version $VERSION --yes | ||
./tools/ci/test_all_newsfragments_used.py | ||
- run: | ||
name: run doctests on documentation | ||
command: | | ||
. venv/bin/activate | ||
(cd doc ; git submodule update --init) | ||
python tools/refguide_check.py --rst | ||
- run: | ||
name: build devdocs w/ref warnings | ||
command: | | ||
. venv/bin/activate | ||
cd doc | ||
# Don't use -q, show warning summary" | ||
SPHINXOPTS="-j2 -n" make -e html || echo "ignoring errors for now, see gh-13114" | ||
if [[ $(find build/html -type f | wc -l) -lt 1000 ]]; then | ||
echo "doc build failed: build/html is empty" | ||
exit -1 | ||
fi | ||
- run: | ||
name: build neps | ||
command: | | ||
. venv/bin/activate | ||
cd doc/neps | ||
SPHINXOPTS="-j2 -q" make -e html | ||
- store_artifacts: | ||
path: doc/build/html/ | ||
|
||
- store_artifacts: | ||
path: doc/neps/_build/html/ | ||
# destination: neps | ||
|
||
- persist_to_workspace: | ||
root: ~/repo | ||
paths: | ||
- doc/build/html | ||
- doc/neps/_build | ||
- tools/ci/push_docs_to_repo.py | ||
|
||
deploy: | ||
<<: *defaults | ||
steps: | ||
- checkout | ||
|
||
- attach_workspace: | ||
at: ~/repo | ||
|
||
- add_ssh_keys: | ||
fingerprints: | ||
- "45:d8:d1:d6:f7:53:47:c5:d0:9e:35:19:79:e7:ff:24" | ||
|
||
- run: | ||
name: deploy devdocs | ||
command: | | ||
touch doc/build/html/.nojekyll | ||
./tools/ci/push_docs_to_repo.py doc/build/html \ | ||
--committer "numpy-circleci-bot" \ | ||
--email "numpy-circleci-bot@nomail" \ | ||
--message "Docs build of $CIRCLE_SHA1" \ | ||
--count 5 \ | ||
--force \ | ||
[email protected]:numpy/devdocs.git | ||
- add_ssh_keys: | ||
fingerprints: | ||
- "df:8b:fb:34:2d:38:7d:49:fc:1b:e8:44:4f:bd:2c:0e" | ||
|
||
- run: | ||
name: select SSH key for neps repo | ||
command: | | ||
cat \<<\EOF > ~/.ssh/config | ||
Host github.com | ||
IdentitiesOnly yes | ||
IdentityFile /home/circleci/.ssh/id_rsa_df8bfb342d387d49fc1be8444fbd2c0e | ||
EOF | ||
- run: | ||
name: deploy neps | ||
command: | | ||
touch doc/neps/_build/html/.nojekyll | ||
./tools/ci/push_docs_to_repo.py doc/neps/_build/html \ | ||
--committer "numpy-circleci-bot" \ | ||
--email "numpy-circleci-bot@nomail" \ | ||
--message "Docs build of $CIRCLE_SHA1" \ | ||
--count 5 \ | ||
--force \ | ||
[email protected]:numpy/neps.git \ | ||
workflows: | ||
version: 2 | ||
default: | ||
jobs: | ||
- build | ||
- deploy: | ||
requires: | ||
- build | ||
filters: | ||
branches: | ||
only: main |
Oops, something went wrong.