mirror of
https://github.com/nvbn/thefuck.git
synced 2025-01-18 12:06:04 +00:00
#N/A: Migrate CI pipeline to Github Actions (#1154)
Co-authored-by: Pablo Santiago Blum de Aguiar <scorphus@gmail.com>
This commit is contained in:
parent
62dddd5821
commit
0c58317932
49
.github/workflows/test.yml
vendored
Normal file
49
.github/workflows/test.yml
vendored
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
name: Tests
|
||||||
|
|
||||||
|
on: [push, pull_request]
|
||||||
|
|
||||||
|
env:
|
||||||
|
PYTHON_LATEST: 3.9
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
test:
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
os: [ubuntu-latest, macos-latest, windows-latest]
|
||||||
|
python-version: [2.7, 3.5, 3.6, 3.7, 3.8, 3.9, 3.10-dev]
|
||||||
|
fail-fast: false
|
||||||
|
runs-on: ${{ matrix.os }}
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- name: Set up Python
|
||||||
|
uses: actions/setup-python@v2
|
||||||
|
with:
|
||||||
|
python-version: ${{ matrix.python-version }}
|
||||||
|
- name: Cache dependencies
|
||||||
|
id: cache-deps
|
||||||
|
uses: actions/cache@v2
|
||||||
|
with:
|
||||||
|
path: |
|
||||||
|
${{ env.pythonLocation }}/bin/*
|
||||||
|
${{ env.pythonLocation }}/lib/*
|
||||||
|
${{ env.pythonLocation }}/scripts/*
|
||||||
|
key: ${{ runner.os }}-pip-${{ matrix.python-version }}-${{ hashFiles('setup.py', 'requirements.txt') }}
|
||||||
|
- name: Install The Fuck with all dependencies
|
||||||
|
if: steps.cache-deps.outputs.cache-hit != 'true'
|
||||||
|
run: |
|
||||||
|
pip install -Ur requirements.txt coveralls
|
||||||
|
python setup.py develop
|
||||||
|
- name: Lint
|
||||||
|
if: matrix.os == 'ubuntu-latest' && matrix.python-version == env.PYTHON_LATEST
|
||||||
|
run: flake8
|
||||||
|
- name: Run tests
|
||||||
|
if: matrix.os != 'ubuntu-latest' || matrix.python-version != env.PYTHON_LATEST
|
||||||
|
run: coverage run --source=thefuck,tests -m pytest -v --capture=sys tests
|
||||||
|
- name: Run tests (including functional)
|
||||||
|
if: matrix.os == 'ubuntu-latest' && matrix.python-version == env.PYTHON_LATEST
|
||||||
|
run: coverage run --source=thefuck,tests -m pytest -v --capture=sys tests --enable-functional
|
||||||
|
- name: Post coverage results
|
||||||
|
if: matrix.os == 'ubuntu-latest' && matrix.python-version == env.PYTHON_LATEST
|
||||||
|
env:
|
||||||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
run: coveralls --service=github
|
51
.travis.yml
51
.travis.yml
@ -1,51 +0,0 @@
|
|||||||
language: python
|
|
||||||
sudo: false
|
|
||||||
os: linux
|
|
||||||
dist: xenial
|
|
||||||
matrix:
|
|
||||||
include:
|
|
||||||
- python: "nightly"
|
|
||||||
- python: "3.8-dev"
|
|
||||||
- python: "3.8"
|
|
||||||
- python: "3.7-dev"
|
|
||||||
- python: "3.7"
|
|
||||||
- python: "3.6-dev"
|
|
||||||
- python: "3.6"
|
|
||||||
- python: "3.5"
|
|
||||||
- python: "2.7"
|
|
||||||
- os: osx
|
|
||||||
language: generic
|
|
||||||
allow_failures:
|
|
||||||
- python: nightly
|
|
||||||
- python: 3.8-dev
|
|
||||||
- python: 3.7-dev
|
|
||||||
- python: 3.6-dev
|
|
||||||
services:
|
|
||||||
- docker
|
|
||||||
addons:
|
|
||||||
apt:
|
|
||||||
packages:
|
|
||||||
- python-commandnotfound
|
|
||||||
- python3-commandnotfound
|
|
||||||
before_install:
|
|
||||||
- if [[ $TRAVIS_OS_NAME == "osx" ]]; then rm -rf /usr/local/include/c++; fi
|
|
||||||
- if [[ $TRAVIS_OS_NAME == "osx" ]]; then brew update; fi
|
|
||||||
- if [[ $TRAVIS_OS_NAME == "osx" ]]; then brew unlink python@2; fi
|
|
||||||
- if [[ $TRAVIS_OS_NAME == "osx" ]]; then brew upgrade python; fi
|
|
||||||
- if [[ $TRAVIS_OS_NAME == "osx" ]]; then pip3 install virtualenv; fi
|
|
||||||
- if [[ $TRAVIS_OS_NAME == "osx" ]]; then virtualenv venv -p python3; fi
|
|
||||||
- if [[ $TRAVIS_OS_NAME == "osx" ]]; then source venv/bin/activate; fi
|
|
||||||
- pip install -U pip
|
|
||||||
- pip install -U coveralls
|
|
||||||
install:
|
|
||||||
- pip install -Ur requirements.txt
|
|
||||||
- python setup.py develop
|
|
||||||
- rm -rf build
|
|
||||||
script:
|
|
||||||
- flake8
|
|
||||||
- export COVERAGE_PYTHON_VERSION=python-${TRAVIS_PYTHON_VERSION:0:1}
|
|
||||||
- export RUN_TESTS="coverage run --source=thefuck,tests -m py.test -v --capture=sys tests"
|
|
||||||
- if [[ $TRAVIS_PYTHON_VERSION == 3.8 && $TRAVIS_OS_NAME != "osx" ]]; then $RUN_TESTS --enable-functional; fi
|
|
||||||
- if [[ $TRAVIS_PYTHON_VERSION != 3.8 || $TRAVIS_OS_NAME == "osx" ]]; then $RUN_TESTS; fi
|
|
||||||
after_success:
|
|
||||||
- if [[ $TRAVIS_PYTHON_VERSION == 3.8 && $TRAVIS_OS_NAME != "osx" ]]; then coveralls; fi
|
|
@ -1,4 +1,4 @@
|
|||||||
# The Fuck [![Version][version-badge]][version-link] [![Build Status][travis-badge]][travis-link] [![Windows Build Status][appveyor-badge]][appveyor-link] [![Coverage][coverage-badge]][coverage-link] [![MIT License][license-badge]](LICENSE.md)
|
# The Fuck [![Version][version-badge]][version-link] [![Build Status][workflow-badge]][workflow-link] [![Coverage][coverage-badge]][coverage-link] [![MIT License][license-badge]](LICENSE.md)
|
||||||
|
|
||||||
*The Fuck* is a magnificent app, inspired by a [@liamosaur](https://twitter.com/liamosaur/)
|
*The Fuck* is a magnificent app, inspired by a [@liamosaur](https://twitter.com/liamosaur/)
|
||||||
[tweet](https://twitter.com/liamosaur/status/506975850596536320),
|
[tweet](https://twitter.com/liamosaur/status/506975850596536320),
|
||||||
@ -503,10 +503,8 @@ Project License can be found [here](LICENSE.md).
|
|||||||
|
|
||||||
[version-badge]: https://img.shields.io/pypi/v/thefuck.svg?label=version
|
[version-badge]: https://img.shields.io/pypi/v/thefuck.svg?label=version
|
||||||
[version-link]: https://pypi.python.org/pypi/thefuck/
|
[version-link]: https://pypi.python.org/pypi/thefuck/
|
||||||
[travis-badge]: https://travis-ci.org/nvbn/thefuck.svg?branch=master
|
[workflow-badge]: https://github.com/divykj/thefuck/workflows/Tests/badge.svg
|
||||||
[travis-link]: https://travis-ci.org/nvbn/thefuck
|
[workflow-link]: https://github.com/divykj/thefuck/actions?query=workflow%3ATests
|
||||||
[appveyor-badge]: https://ci.appveyor.com/api/projects/status/1sskj4imj02um0gu/branch/master?svg=true
|
|
||||||
[appveyor-link]: https://ci.appveyor.com/project/nvbn/thefuck
|
|
||||||
[coverage-badge]: https://img.shields.io/coveralls/nvbn/thefuck.svg
|
[coverage-badge]: https://img.shields.io/coveralls/nvbn/thefuck.svg
|
||||||
[coverage-link]: https://coveralls.io/github/nvbn/thefuck
|
[coverage-link]: https://coveralls.io/github/nvbn/thefuck
|
||||||
[license-badge]: https://img.shields.io/badge/license-MIT-007EC7.svg
|
[license-badge]: https://img.shields.io/badge/license-MIT-007EC7.svg
|
||||||
|
23
appveyor.yml
23
appveyor.yml
@ -1,23 +0,0 @@
|
|||||||
build: false
|
|
||||||
|
|
||||||
environment:
|
|
||||||
matrix:
|
|
||||||
- PYTHON: "C:/Python27"
|
|
||||||
- PYTHON: "C:/Python35"
|
|
||||||
- PYTHON: "C:/Python36"
|
|
||||||
- PYTHON: "C:/Python37"
|
|
||||||
|
|
||||||
init:
|
|
||||||
- "ECHO %PYTHON%"
|
|
||||||
- ps: "ls C:/Python*"
|
|
||||||
|
|
||||||
install:
|
|
||||||
- "curl -fsS -o C:/get-pip.py https://bootstrap.pypa.io/get-pip.py"
|
|
||||||
- "%PYTHON%/python.exe C:/get-pip.py"
|
|
||||||
- "%PYTHON%/Scripts/pip.exe install -U setuptools"
|
|
||||||
- "%PYTHON%/python.exe setup.py develop"
|
|
||||||
- "%PYTHON%/Scripts/pip.exe install -U -r requirements.txt"
|
|
||||||
|
|
||||||
test_script:
|
|
||||||
- "%PYTHON%/python.exe -m flake8"
|
|
||||||
- "%PYTHON%/Scripts/py.test.exe -sv"
|
|
Loading…
x
Reference in New Issue
Block a user