mirror of
https://github.com/jrnl-org/jrnl.git
synced 2025-05-20 21:18:32 +02:00
Merge pull request #761 from wren/travis-double-deploy-757
Fix CI config to only deploy once
This commit is contained in:
commit
864df05cc1
1 changed files with 121 additions and 60 deletions
153
.travis.yml
153
.travis.yml
|
@ -1,67 +1,128 @@
|
|||
dist: xenial # required for Python >= 3.7
|
||||
os: linux
|
||||
language: python
|
||||
jobs:
|
||||
include:
|
||||
- name: "Python 3.6 on Linux"
|
||||
python: 3.6
|
||||
- name: "Python 3.7 on Linux"
|
||||
python: 3.7
|
||||
- name: "Python 3.7 on Linux, not UTC"
|
||||
python: 3.7
|
||||
env:
|
||||
- TZ=America/Edmonton
|
||||
- name: "Python 3.8 on Linux"
|
||||
python: 3.8
|
||||
- name: "Python dev on Linux"
|
||||
python: nightly
|
||||
- name: "Python 3.7.4 on MacOS"
|
||||
|
||||
cache:
|
||||
- pip
|
||||
|
||||
git:
|
||||
depth: false
|
||||
|
||||
before_install:
|
||||
- date
|
||||
|
||||
install:
|
||||
- pip install poetry~=0.12.17
|
||||
- poetry install
|
||||
- poetry run python --version
|
||||
|
||||
script:
|
||||
- poetry run behave
|
||||
|
||||
aliases:
|
||||
test_mac: &test_mac
|
||||
os: osx
|
||||
osx_image: xcode11.2 # Python 3.7.4 running on macOS 10.14.4
|
||||
language: shell # 'language: python' is an error on Travis CI macOS
|
||||
language: shell
|
||||
osx_image: xcode11.2
|
||||
cache:
|
||||
directories:
|
||||
- $HOME/.pyenv/versions
|
||||
before_install:
|
||||
- pip3 install poetry~=0.12.17 # 'pip' points to Python 2 on MacOS
|
||||
- name: "Python 3.7.5 on Windows"
|
||||
- eval "$(pyenv init -)"
|
||||
- pyenv install -s $JRNL_PYTHON_VERSION
|
||||
- pyenv global $JRNL_PYTHON_VERSION
|
||||
- pip install --upgrade pip
|
||||
- pip --version
|
||||
test_windows: &test_windows
|
||||
os: windows
|
||||
language: shell # 'language: python' is an error on Travis CI Windows
|
||||
language: shell
|
||||
cache:
|
||||
directories:
|
||||
- /c/Python36
|
||||
- /c/Python37
|
||||
- /c/Python38
|
||||
before_install:
|
||||
- choco install python --version 3.7.5
|
||||
- choco install python --version $JRNL_PYTHON_VERSION
|
||||
- python -m pip install --upgrade pip
|
||||
- pip --version
|
||||
- pip install poetry~=0.12.17
|
||||
env:
|
||||
- PATH=/c/Python37:/c/Python37/Scripts:$PATH
|
||||
|
||||
jobs:
|
||||
fast_finish: true
|
||||
allow_failures:
|
||||
- python: 3.8
|
||||
- python: nightly
|
||||
- os: windows
|
||||
git:
|
||||
depth: false
|
||||
cache: pip
|
||||
before_install:
|
||||
- date
|
||||
- pip install poetry~=0.12.17
|
||||
install:
|
||||
# we run `poetry version` here to appease poetry about '0.0.0-source'
|
||||
- poetry version
|
||||
- poetry install
|
||||
- poetry run python --version
|
||||
script:
|
||||
- poetry run behave
|
||||
before_deploy:
|
||||
- poetry config http-basic.pypi $PYPI_USER $PYPI_PASS
|
||||
- poetry version $TRAVIS_TAG
|
||||
|
||||
include:
|
||||
# Python 3.6 Tests
|
||||
- name: Python 3.6 on Linux
|
||||
python: 3.6
|
||||
- <<: *test_mac
|
||||
name: Python 3.6 on MacOS
|
||||
python: 3.6
|
||||
env:
|
||||
- JRNL_PYTHON_VERSION=3.6.8
|
||||
- <<: *test_windows
|
||||
name: Python 3.6 on Windows
|
||||
python: 3.6
|
||||
env:
|
||||
- JRNL_PYTHON_VERSION=3.6.8
|
||||
- PATH=/c/Python36:/c/Python36/Scripts:$PATH
|
||||
|
||||
# Python 3.7 Tests
|
||||
- name: Python 3.7 on Linux
|
||||
python: 3.7
|
||||
- <<: *test_mac
|
||||
name: Python 3.7 on MacOS
|
||||
python: 3.7
|
||||
env:
|
||||
- JRNL_PYTHON_VERSION=3.7.5
|
||||
- <<: *test_windows
|
||||
name: Python 3.7 on Windows
|
||||
python: 3.7
|
||||
env:
|
||||
- JRNL_PYTHON_VERSION=3.7.5
|
||||
- PATH=/c/Python37:/c/Python37/Scripts:$PATH
|
||||
|
||||
# Python 3.8 Tests
|
||||
- name: Python 3.8 on Linux
|
||||
python: 3.8
|
||||
- <<: *test_mac
|
||||
name: Python 3.8 on MacOS
|
||||
python: 3.8
|
||||
env:
|
||||
- JRNL_PYTHON_VERSION=3.8.0
|
||||
- <<: *test_windows
|
||||
name: Python 3.8 on Windows
|
||||
python: 3.8
|
||||
env:
|
||||
- JRNL_PYTHON_VERSION=3.8.0
|
||||
- PATH=/c/Python38:/c/Python38/Scripts:$PATH
|
||||
|
||||
# ... and beyond!
|
||||
- name: Python nightly on Linux
|
||||
python: nightly
|
||||
|
||||
# Specialty tests
|
||||
- name: Python 3.7 on Linux, not UTC
|
||||
python: 3.7
|
||||
env:
|
||||
- TZ=America/Edmonton
|
||||
|
||||
- stage: Deploy
|
||||
if: branch = master AND tag IS present
|
||||
before_deploy:
|
||||
- poetry config http-basic.pypi "$PYPI_USER" "$PYPI_PASS"
|
||||
- poetry version "$TRAVIS_TAG"
|
||||
- poetry build
|
||||
deploy:
|
||||
deploy:
|
||||
- provider: script
|
||||
script: poetry publish
|
||||
skip_cleanup: true
|
||||
on:
|
||||
branch: master
|
||||
tags: true
|
||||
after_deploy:
|
||||
after_deploy:
|
||||
- git config --global user.email "jrnl.bot@gmail.com"
|
||||
- git config --global user.name "Jrnl Bot"
|
||||
- git checkout master
|
||||
- git add pyproject.toml
|
||||
- git commit -m "Incrementing version to ${TRAVIS_TAG}"
|
||||
- git push https://${GITHUB_TOKEN}@github.com/jrnl-org/jrnl.git master
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue