mirror of
				https://github.com/encode/django-rest-framework.git
				synced 2025-10-31 16:07:38 +03:00 
			
		
		
		
	Move CI to GitHub Actions (#7903)
* Recreate all the jobs on GitHub Actions * Upgrade to Ubuntu 20.04 * Upgrade base/docs/dist to Python 3.9
This commit is contained in:
		
							parent
							
								
									90635c138f
								
							
						
					
					
						commit
						fd017d00f9
					
				
							
								
								
									
										57
									
								
								.github/workflows/main.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										57
									
								
								.github/workflows/main.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,57 @@ | ||||||
|  | name: CI | ||||||
|  | 
 | ||||||
|  | on: | ||||||
|  |   push: | ||||||
|  |     branches: | ||||||
|  |     - main | ||||||
|  |   pull_request: | ||||||
|  | 
 | ||||||
|  | jobs: | ||||||
|  |   tests: | ||||||
|  |     name: Python ${{ matrix.python-version }} | ||||||
|  |     runs-on: ubuntu-20.04 | ||||||
|  | 
 | ||||||
|  |     strategy: | ||||||
|  |       matrix: | ||||||
|  |         python-version: | ||||||
|  |         - '3.6' | ||||||
|  |         - '3.7' | ||||||
|  |         - '3.8' | ||||||
|  |         - '3.9' | ||||||
|  | 
 | ||||||
|  |     steps: | ||||||
|  |     - uses: actions/checkout@v2 | ||||||
|  | 
 | ||||||
|  |     - uses: actions/setup-python@v2 | ||||||
|  |       with: | ||||||
|  |         python-version: ${{ matrix.python-version }} | ||||||
|  | 
 | ||||||
|  |     - uses: actions/cache@v2 | ||||||
|  |       with: | ||||||
|  |         path: ~/.cache/pip | ||||||
|  |         key: ${{ runner.os }}-pip-${{ hashFiles('requirements/*.txt') }} | ||||||
|  |         restore-keys: | | ||||||
|  |           ${{ runner.os }}-pip- | ||||||
|  | 
 | ||||||
|  |     - name: Upgrade packaging tools | ||||||
|  |       run: python -m pip install --upgrade pip setuptools virtualenv wheel | ||||||
|  | 
 | ||||||
|  |     - name: Install dependencies | ||||||
|  |       run: python -m pip install --upgrade codecov tox | ||||||
|  | 
 | ||||||
|  |     - name: Run tox targets for ${{ matrix.python-version }} | ||||||
|  |       run: | | ||||||
|  |         ENV_PREFIX=$(tr -C -d "0-9" <<< "${{ matrix.python-version }}") | ||||||
|  |         TOXENV=$(tox --listenvs | grep "^py$ENV_PREFIX" | tr '\n' ',') tox | ||||||
|  | 
 | ||||||
|  |     - name: Run extra tox targets | ||||||
|  |       if: ${{ matrix.python-version == '3.9' }} | ||||||
|  |       run: | | ||||||
|  |         python setup.py bdist_wheel | ||||||
|  |         rm -r djangorestframework.egg-info  # see #6139 | ||||||
|  |         tox -e base,dist,docs | ||||||
|  |         tox -e dist --installpkg ./dist/djangorestframework-*.whl | ||||||
|  | 
 | ||||||
|  |     - name: Upload coverage | ||||||
|  |       run: | | ||||||
|  |         codecov -e TOXENV,DJANGO | ||||||
							
								
								
									
										55
									
								
								.travis.yml
									
									
									
									
									
								
							
							
						
						
									
										55
									
								
								.travis.yml
									
									
									
									
									
								
							|  | @ -1,55 +0,0 @@ | ||||||
| language: python |  | ||||||
| cache: pip |  | ||||||
| dist: bionic |  | ||||||
| matrix: |  | ||||||
|     fast_finish: true |  | ||||||
|     include: |  | ||||||
| 
 |  | ||||||
|       - { python: "3.5", env: DJANGO=2.2 } |  | ||||||
| 
 |  | ||||||
|       - { python: "3.6", env: DJANGO=2.2 } |  | ||||||
|       - { python: "3.6", env: DJANGO=3.0 } |  | ||||||
|       - { python: "3.6", env: DJANGO=3.1 } |  | ||||||
|       - { python: "3.6", env: DJANGO=3.2 } |  | ||||||
| 
 |  | ||||||
|       - { python: "3.7", env: DJANGO=2.2 } |  | ||||||
|       - { python: "3.7", env: DJANGO=3.0 } |  | ||||||
|       - { python: "3.7", env: DJANGO=3.1 } |  | ||||||
|       - { python: "3.7", env: DJANGO=3.2 } |  | ||||||
| 
 |  | ||||||
|       - { python: "3.8", env: DJANGO=3.0 } |  | ||||||
|       - { python: "3.8", env: DJANGO=3.1 } |  | ||||||
|       - { python: "3.8", env: DJANGO=3.2 } |  | ||||||
|       - { python: "3.8", env: DJANGO=main } |  | ||||||
| 
 |  | ||||||
|       - { python: "3.9", env: DJANGO=3.1 } |  | ||||||
|       - { python: "3.9", env: DJANGO=3.2 } |  | ||||||
|       - { python: "3.9", env: DJANGO=main } |  | ||||||
| 
 |  | ||||||
|       - { python: "3.8", env: TOXENV=base } |  | ||||||
|       - { python: "3.8", env: TOXENV=docs } |  | ||||||
| 
 |  | ||||||
|       - python: "3.8" |  | ||||||
|         env: TOXENV=dist |  | ||||||
|         script: |  | ||||||
|           - python setup.py bdist_wheel |  | ||||||
|           - rm -r djangorestframework.egg-info  # see #6139 |  | ||||||
|           - tox --installpkg ./dist/djangorestframework-*.whl |  | ||||||
|           - tox  # test sdist |  | ||||||
| 
 |  | ||||||
|     allow_failures: |  | ||||||
|       - env: DJANGO=main |  | ||||||
|       - env: DJANGO=3.2 |  | ||||||
| 
 |  | ||||||
| install: |  | ||||||
|     - pip install tox tox-travis |  | ||||||
| 
 |  | ||||||
| script: |  | ||||||
|     - tox |  | ||||||
| 
 |  | ||||||
| after_success: |  | ||||||
|     - pip install codecov |  | ||||||
|     - codecov -e TOXENV,DJANGO |  | ||||||
| 
 |  | ||||||
| notifications: |  | ||||||
|     email: false |  | ||||||
							
								
								
									
										18
									
								
								tox.ini
									
									
									
									
									
								
							
							
						
						
									
										18
									
								
								tox.ini
									
									
									
									
									
								
							|  | @ -49,3 +49,21 @@ commands = mkdocs build | ||||||
| deps = | deps = | ||||||
|        -rrequirements/requirements-testing.txt |        -rrequirements/requirements-testing.txt | ||||||
|        -rrequirements/requirements-documentation.txt |        -rrequirements/requirements-documentation.txt | ||||||
|  | 
 | ||||||
|  | [testenv:py36-django32] | ||||||
|  | ignore_outcome = true | ||||||
|  | 
 | ||||||
|  | [testenv:py37-django32] | ||||||
|  | ignore_outcome = true | ||||||
|  | 
 | ||||||
|  | [testenv:py38-django32] | ||||||
|  | ignore_outcome = true | ||||||
|  | 
 | ||||||
|  | [testenv:py39-django32] | ||||||
|  | ignore_outcome = true | ||||||
|  | 
 | ||||||
|  | [testenv:py38-djangomain] | ||||||
|  | ignore_outcome = true | ||||||
|  | 
 | ||||||
|  | [testenv:py39-djangomain] | ||||||
|  | ignore_outcome = true | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user