Skip to content
Closed
  •  
  •  
  •  
103 changes: 103 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
name: packages
on:
push:
tags:
- 'v[0-9]+.[0-9]+.[0-9]+'
- 'v[0-9]+.[0-9]+.[0-9]+a[0-9]+'
- 'v[0-9]+.[0-9]+.[0-9]+b[0-9]+'
- 'v[0-9]+.[0-9]+.[0-9]+rc[0-9]+'

jobs:
conda_build:
name: Build Conda Packages
runs-on: 'ubuntu-latest'
defaults:
run:
shell: bash -l {0}
env:
CHANS_DEV: "-c pyviz/label/dev -c bokeh"
PKG_TEST_PYTHON: "--test-python=py37"
PYTHON_VERSION: "3.7"
CHANS: "-c pyviz"
MPLBACKEND: "Agg"
CONDA_UPLOAD_TOKEN: ${{ secrets.CONDA_UPLOAD_TOKEN }}
steps:
- uses: actions/checkout@v2
with:
fetch-depth: "100"
- uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- uses: conda-incubator/setup-miniconda@v2
with:
miniconda-version: "latest"
python-version: 3.8
- name: Fetch unshallow
run: git fetch --prune --tags --unshallow -f
- name: Set output
id: vars
run: echo ::set-output name=tag::${GITHUB_REF#refs/*/}
- name: conda setup
run: |
conda config --set always_yes True
conda install -c pyviz "pyctdev>=0.5"
doit ecosystem_setup
- name: conda build
run: doit package_build $CHANS_DEV $PKG_TEST_PYTHON --test-group=unit
- name: conda dev upload
if: (contains(steps.vars.outputs.tag, 'a') || contains(steps.vars.outputs.tag, 'b') || contains(steps.vars.outputs.tag, 'rc'))
run: doit package_upload --token=$CONDA_UPLOAD_TOKEN --label=dev
- name: conda main upload
if: (!(contains(steps.vars.outputs.tag, 'a') || contains(steps.vars.outputs.tag, 'b') || contains(steps.vars.outputs.tag, 'rc')))
run: doit package_upload --token=$CONDA_UPLOAD_TOKEN --label=dev --label=main
pip_build:
name: Build PyPI Packages
runs-on: 'ubuntu-latest'
defaults:
run:
shell: bash -l {0}
env:
CHANS_DEV: "-c pyviz/label/dev -c bokeh"
PKG_TEST_PYTHON: "--test-python=py37"
PYTHON_VERSION: "3.7"
CHANS: "-c pyviz"
MPLBACKEND: "Agg"
PPU: ${{ secrets.PPU }}
PPP: ${{ secrets.PPP }}
PYPI: "https://upload.pypi.org/legacy/"
steps:
- uses: actions/checkout@v2
with:
fetch-depth: "100"
- uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- uses: conda-incubator/setup-miniconda@v2
with:
miniconda-version: "latest"
python-version: 3.8
- name: Fetch unshallow
run: git fetch --prune --tags --unshallow -f
- name: conda setup
run: |
conda config --set always_yes True
conda install -c pyviz "pyctdev>=0.5"
doit ecosystem_setup
doit env_create $CHANS_DEV --python=$PYTHON_VERSION
- name: env setup
run: |
eval "$(conda shell.bash hook)"
conda activate test-environment
doit develop_install $CHANS_DEV -o unit_tests
pip uninstall -y holoviews
doit pip_on_conda
- name: pip build
run: |
eval "$(conda shell.bash hook)"
conda activate test-environment
doit ecosystem=pip package_build
- name: pip upload
run: |
eval "$(conda shell.bash hook)"
conda activate test-environment
doit ecosystem=pip package_upload -u $PPU -p $PPP -r $PYPI
93 changes: 93 additions & 0 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
name: docs
on:
push:
tags:
- 'v[0-9]+.[0-9]+.[0-9]+'
- 'v[0-9]+.[0-9]+.[0-9]+a[0-9]+'
- 'v[0-9]+.[0-9]+.[0-9]+b[0-9]+'
- 'v[0-9]+.[0-9]+.[0-9]+rc[0-9]+'

jobs:
test_suite:
name: Documentation
runs-on: 'ubuntu-latest'
strategy:
fail-fast: false
timeout-minutes: 120
defaults:
run:
shell: bash -l {0}
env:
DESC: "Documentation build"
HV_REQUIREMENTS: "doc"
CHANS_DEV: "-c pyviz/label/dev -c bokeh -c conda-forge"
CHANS: "-c pyviz"
MPLBACKEND: "Agg"
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
AWS_DEFAULT_REGION: ${{ secrets.AWS_DEFAULT_REGION }}
MOZ_HEADLESS: 1
PANEL_EMBED: "true"
PANEL_EMBED_JSON: "true"
PANEL_EMBED_JSON_PREFIX: "json"
steps:
- uses: actions/checkout@v2
with:
fetch-depth: "100"
- uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- uses: conda-incubator/setup-miniconda@v2
with:
miniconda-version: "latest"
- name: Fetch unshallow
run: git fetch --prune --tags --unshallow -f
- name: Set output
id: vars
run: echo ::set-output name=tag::${GITHUB_REF#refs/*/}
- name: conda setup
run: |
conda config --set always_yes True
conda install -c pyviz "pyctdev>=0.5"
doit ecosystem_setup
doit env_create ${{ env.CHANS_DEV}} --python=3.7
- name: doit develop_install
run: |
eval "$(conda shell.bash hook)"
conda activate test-environment
conda list
doit develop_install ${{ env.CHANS_DEV}} -o doc
conda install -c conda-forge geckodriver selenium
- name: bokeh sampledata
run: |
eval "$(conda shell.bash hook)"
conda activate test-environment
bokeh sampledata
- name: generate rst
run: |
eval "$(conda shell.bash hook)"
conda activate test-environment
nbsite generate-rst --org holoviz --project-name holoviews
- name: refmanual
run: |
eval "$(conda shell.bash hook)"
conda activate test-environment
python ./doc/generate_modules.py holoviews -d ./doc/reference_manual -n holoviews -e tests
- name: build docs
run: |
eval "$(conda shell.bash hook)"
conda activate test-environment
nbsite build --what=html --output=builtdocs --org holoviz --project-name holoviews
- name: upload dev
if: (contains(steps.vars.outputs.tag, 'a') || contains(steps.vars.outputs.tag, 'b') || contains(steps.vars.outputs.tag, 'rc'))
run: |
eval "$(conda shell.bash hook)"
conda activate test-environment
aws s3 sync --quiet ./builtdocs s3://dev.holoviews.org/
- name: upload main
if: (!(contains(steps.vars.outputs.tag, 'a') || contains(steps.vars.outputs.tag, 'b') || contains(steps.vars.outputs.tag, 'rc')))
run: |
eval "$(conda shell.bash hook)"
conda activate test-environment
aws s3 sync --quiet ./builtdocs s3://holoviews.org/
43 changes: 12 additions & 31 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
# things not included
# language
# notifications - no email notifications set up

name: pytest
on:
push:
branches:
- master
pull_request:
branches:
- '*'
- '*'

jobs:
test_suite:
Expand All @@ -16,22 +15,17 @@ jobs:
fail-fast: false
matrix:
os: ['ubuntu-latest', 'macos-latest', 'windows-latest']
python-version: [2.7, 3.6, 3.7]
exclude:
- os: windows-latest
python-version: 2.7
- os: macos-latest
python-version: 3.7
timeout-minutes: 30
python-version: [3.6, 3.7, 3.8]
timeout-minutes: 60
defaults:
run:
shell: bash -l {0}
shell: bash -l {0}
env:
DESC: "Python ${{ matrix.python-version }} tests"
HV_REQUIREMENTS: "unit_tests"
PYTHON_VERSION: ${{ matrix.python-version }}
CHANS_DEV: "-c pyviz/label/dev"
CHANS: "-c pyviz"
CHANS_DEV: "-c pyviz/label/dev -c bokeh -c conda-forge"
CHANS: "-c pyviz -c conda-forge"
MPLBACKEND: "Agg"
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
steps:
Expand All @@ -44,6 +38,7 @@ jobs:
- uses: conda-incubator/setup-miniconda@v2
with:
miniconda-version: "latest"
channels: conda-forge,defaults
- name: Fetch unshallow
run: git fetch --prune --tags --unshallow
- name: conda setup
Expand All @@ -56,27 +51,14 @@ jobs:
run: |
eval "$(conda shell.bash hook)"
conda activate test-environment
conda install ${{ env.CHANS_DEV }} "pip<21.2.1"
conda list
doit develop_install ${{ env.CHANS_DEV}} -o ${{ env.HV_REQUIREMENTS }}
python -c "from param import version; print(version.Version.setup_version('.', 'holoviews', archive_commit='$Format:%h$'))"
echo "-----"
git describe
echo "======"
conda list
- name: bokeh update
if: startsWith(matrix.python-version, 3.)
run: |
eval "$(conda shell.bash hook)"
conda activate test-environment
conda install "bokeh>=2.2"
- name: matplotlib patch
if: startsWith(matrix.python-version, 3.)
run: |
eval "$(conda shell.bash hook)"
conda activate test-environment
conda uninstall matplotlib matplotlib-base --force
conda install matplotlib=3.0.3 --no-deps
python -c "import matplotlib; print(matplotlib.__version__);"
- name: doit env_capture
run: |
eval "$(conda shell.bash hook)"
Expand All @@ -100,8 +82,7 @@ jobs:
- name: run coveralls
env:
github-token: ${{ secrets.GITHUB_TOKEN }}
if: startsWith(matrix.python-version, 3.)
run: |
eval "$(conda shell.bash hook)"
conda activate test-environment
coveralls
coveralls --service=github
Loading