aboutsummaryrefslogtreecommitdiffstats
path: root/.github/workflows
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@unit193.net>2021-04-22 20:23:51 -0400
committerLibravatarUnit 193 <unit193@unit193.net>2021-04-22 20:23:51 -0400
commit5fe4d85d8450575556385f20c46d67887009e245 (patch)
treee07d531240670225499657eff04a16105eb4bb5f /.github/workflows
parent501ee1930f5424ac00be29a7537a74e30c5d901f (diff)
parent8eeed31eb2f86ac982fa4b26f93b15828289c56d (diff)
Update upstream source from tag 'upstream/8.1.3'
Update to upstream version '8.1.3' with Debian dir ff84f28157b98ab52cbb563f4853d749beb4be60
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/ci.yml140
1 files changed, 140 insertions, 0 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 0000000..81efafa
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,140 @@
+name: Nikola CI
+on:
+ # Run on all pushes to master (including merge of PR)
+ push:
+ branches: master
+ # Run on all changes in pull requests
+ pull_request:
+
+jobs:
+ nikola:
+ name: Nikola tests (Python ${{ matrix.python }} on ${{ matrix.image }})
+ strategy:
+ fail-fast: false
+ matrix:
+ python: [3.5, 3.6, 3.7, 3.8, 3.9]
+ image:
+ - ubuntu-latest
+ include:
+ - python: 3.9
+ image: macos-latest
+ - python: 3.9
+ image: windows-latest
+ runs-on: '${{ matrix.image }}'
+ steps:
+ - name: Check out code
+ uses: actions/checkout@v2
+ - name: Set up Python
+ uses: actions/setup-python@v2
+ with:
+ python-version: '${{ matrix.python }}'
+ - name: Upgrade packaging stack
+ run: |
+ python -m pip install --upgrade-strategy eager -U pip setuptools wheel
+ - name: Install test requirements
+ run: |
+ python -m pip install --upgrade-strategy eager -Ur requirements-tests.txt
+ - name: Install Nikola
+ run: |
+ python -m pip install .
+ - name: Run tests
+ run: |
+ py.test tests/
+ - name: Run nikola
+ run: |
+ nikola
+ - name: Run nikola help
+ run: |
+ nikola help
+
+ baseline:
+ name: Baseline testing (Python ${{ matrix.python }} on ${{ matrix.image }})
+ strategy:
+ fail-fast: false
+ matrix:
+ python: [3.9]
+ image:
+ - ubuntu-latest
+ runs-on: '${{ matrix.image }}'
+ steps:
+ - name: Check out code
+ uses: actions/checkout@v2
+ - name: Set up Python
+ uses: actions/setup-python@v2
+ with:
+ python-version: '${{ matrix.python }}'
+ - name: Upgrade packaging stack
+ run: |
+ python -m pip install --upgrade-strategy eager -U pip setuptools wheel
+ - name: Install extra requirements
+ run: |
+ python -m pip install --upgrade-strategy eager -Ur requirements-extras.txt freezegun
+ - name: Install Nikola
+ run: |
+ python -m pip install .
+ - name: Compare to baseline
+ run: |
+ scripts/baseline.sh check
+
+ flake8:
+ name: Linting (flake8, pydocstyle)
+ strategy:
+ matrix:
+ python:
+ - 3.9
+ runs-on: ubuntu-latest
+ steps:
+ - name: Check out code
+ uses: actions/checkout@v2
+ - name: Set up Python
+ uses: actions/setup-python@v2
+ with:
+ python-version: '${{ matrix.python }}'
+ - name: Upgrade packaging stack
+ run: |
+ python -m pip install --upgrade-strategy eager -U pip setuptools wheel
+ - name: Install requirements
+ run: |
+ python -m pip install flake8 pydocstyle
+ - name: Run flake8
+ run: |
+ flake8 nikola/ tests/
+ - name: Run pydocstyle
+ run: |
+ pydocstyle --count --match-dir='(?!^\\.)(?!data).*' nikola/
+
+ basereq:
+ name: Build demo site with base requirements
+ strategy:
+ matrix:
+ python:
+ - 3.9
+ runs-on: ubuntu-latest
+ steps:
+ - name: Check out code
+ uses: actions/checkout@v2
+ - name: Set up Python
+ uses: actions/setup-python@v2
+ with:
+ python-version: '${{ matrix.python }}'
+ - name: Upgrade packaging stack
+ run: |
+ python -m pip install --upgrade-strategy eager -U pip setuptools wheel
+ - name: Install requirements
+ run: |
+ python -m pip install --upgrade-strategy eager -Ur requirements.txt
+ - name: Install Nikola
+ run: |
+ python -m pip install .
+ - name: Run help
+ run: |
+ nikola help
+ working-directory: /
+ - name: Run init
+ run: |
+ nikola init -qd nsite
+ working-directory: /tmp/
+ - name: Run build
+ run: |
+ nikola build
+ working-directory: /tmp/nsite