mirror of
				https://github.com/tanrax/RSSingle.git
				synced 2025-03-03 03:35:46 +01:00 
			
		
		
		
	Merge pull request #3 from shymega/shymega/prs/ci
Initial version of CI for RSSingle
This commit is contained in:
		
							
								
								
									
										59
									
								
								.github/workflows/ci.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										59
									
								
								.github/workflows/ci.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @@ -0,0 +1,59 @@ | |||||||
|  | name: CI workflow for RSSingle | ||||||
|  |  | ||||||
|  | on: [push, pull_request] | ||||||
|  |  | ||||||
|  | jobs: | ||||||
|  |   build-and-check: | ||||||
|  |     runs-on: ubuntu-latest | ||||||
|  |     strategy: | ||||||
|  |       matrix: | ||||||
|  |         python-version: ["3.8", "3.9", "3.10"] | ||||||
|  |     steps: | ||||||
|  |       - uses: actions/checkout@v2 | ||||||
|  |       - name: Set up Python ${{ matrix.python-version }} | ||||||
|  |         uses: actions/setup-python@v4 | ||||||
|  |         with: | ||||||
|  |           python-version: ${{ matrix.python-version }} | ||||||
|  |       - name: Install dependencies | ||||||
|  |         run: | | ||||||
|  |           python -m pip install --upgrade pip | ||||||
|  |           pip install flake8 | ||||||
|  |           pip install -r requirements.txt | ||||||
|  |       - name: Lint with flake8 | ||||||
|  |         run: | | ||||||
|  |           # stop the build if there are Python syntax errors or undefined names | ||||||
|  |           flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics | ||||||
|  |           # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide | ||||||
|  |           flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics | ||||||
|  |  | ||||||
|  |   # to be completed once macOS builds fixed | ||||||
|  |   create-and-publish-release: | ||||||
|  |     needs: build-and-check | ||||||
|  |     if: startsWith(github.ref, 'refs/tags/') && success() | ||||||
|  |     strategy: | ||||||
|  |       matrix: | ||||||
|  |         # `--windowed` is for macOS, and `--onefile` is for other OSes. | ||||||
|  |         pyinstaller-type: ['--windowed', '--onefile'] | ||||||
|  |         runner: ["macos-latest", "windows-latest", "ubuntu-latest"] | ||||||
|  |     runs-on: ${{ matrix.runner }} | ||||||
|  |     name: Builder for Python all-in-one executables, published on a release. | ||||||
|  |     steps: | ||||||
|  |       - name: Checkout sources | ||||||
|  |         uses: actions/checkout@v2 | ||||||
|  |       - name: Set up Python 3.8 | ||||||
|  |         uses: actions/setup-python@v4 | ||||||
|  |         with: | ||||||
|  |           python-version: "3.8" | ||||||
|  |       - name: Install dependencies | ||||||
|  |         run: | | ||||||
|  |           python -m pip install --upgrade pip | ||||||
|  |           pip install pyinstaller | ||||||
|  |           pip install -r requirements.txt | ||||||
|  |       - name: Build RSSingle (Windows, Linux) | ||||||
|  |         if: ${{ matrix.runner != 'macos-latest' }} | ||||||
|  |         run: pyinstaller --onefile ./rssingle.py | ||||||
|  |       - name: Build RSSingle (macOS) | ||||||
|  |         if: ${{ matrix.runner == 'macos-latest' }} | ||||||
|  |         run: pyinstaller --windowed ./rssingle.py | ||||||
|  |       - name: List artifacts for finishing this action | ||||||
|  |         run: find ./dist/ | ||||||
		Reference in New Issue
	
	Block a user