Add asdf to the zsh plugins #279
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: push | |
env: | |
PYTHON_VERSION: 3.12 | |
jobs: | |
fossa: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Setup Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ env.PYTHON_VERSION }} | |
- name: Print Python version | |
run: python -V | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Load pip cache | |
uses: actions/cache@v4 | |
with: | |
path: .pip | |
key: pip-${{ runner.os }}-${{ hashFiles('requirements.txt') }} | |
restore-keys: | | |
pip-${{ runner.os }}- | |
pip- | |
- name: Install apt requirements | |
run: sudo apt-get install gcc libssl-dev python3-dev swig | |
- name: Install requirements | |
run: | | |
pip --cache-dir=.pip install --upgrade pip | |
pip --cache-dir=.pip install -r requirements.txt | |
- name: Install FOSSA | |
run: | | |
curl -H 'Cache-Control: no-cache' https://raw.githubusercontent.com/fossas/fossa-cli/master/install.sh | sudo bash | |
- name: Run FOSSA | |
run: fossa analyze | |
env: | |
FOSSA_API_KEY: ${{ secrets.FOSSA_API_KEY }} | |
lint: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Setup Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ env.PYTHON_VERSION }} | |
- name: Print Python version | |
run: python -V | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Load pip cache | |
uses: actions/cache@v4 | |
with: | |
path: .pip | |
key: pip-${{ runner.os }}-${{ hashFiles('requirements.txt') }} | |
restore-keys: | | |
pip-${{ runner.os }}- | |
pip- | |
- name: Install apt requirements | |
run: sudo apt-get install gcc libssl-dev python3-dev swig | |
- name: Install requirements | |
run: | | |
pip --cache-dir=.pip install --upgrade pip | |
pip --cache-dir=.pip install pylint | |
pip --cache-dir=.pip install -r requirements.txt | |
- name: Run Pylint | |
run: pylint startup tests f3.py kernel_remover.py maintenance.py modem.py misc_misc_utils.py 2>&1 | tee pylint.txt | |
working-directory: ${{ github.workspace }} | |
- name: Upload results | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Lint | |
path: | | |
${{ github.workspace }}/pylint.txt | |
if-no-files-found: error | |
sast: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- uses: AppThreat/sast-scan-action@master | |
with: | |
type: bash,python | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: reports | |
path: reports | |
if-no-files-found: error | |
test: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Setup Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ env.PYTHON_VERSION }} | |
- name: Print Python version | |
run: python -V | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Load pip cache | |
uses: actions/cache@v4 | |
with: | |
path: .pip | |
key: pip-${{ runner.os }}-${{ hashFiles('requirements.txt') }} | |
restore-keys: | | |
pip-${{ runner.os }}- | |
pip- | |
- name: Install apt requirements | |
run: sudo apt-get install gcc libssl-dev python3-dev swig | |
- name: Install requirements | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y bleachbit chkrootkit fwupd rkhunter modemmanager | |
pip --cache-dir=.pip install --upgrade pip | |
pip --cache-dir=.pip install coverage | |
pip --cache-dir=.pip install -r requirements.txt | |
- name: Run tests with coverage | |
run: coverage run | |
working-directory: ${{ github.workspace }} | |
- name: Create coverage reports | |
run: | | |
coverage report | tee coverage.txt | |
coverage html | |
coverage xml | |
coverage json | |
working-directory: ${{ github.workspace }} | |
- name: Upload results | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Coverage | |
path: | | |
${{ github.workspace }}/coverage.txt | |
${{ github.workspace }}/coverage.xml | |
${{ github.workspace }}/coverage.json | |
${{ github.workspace }}/htmlcov | |
if-no-files-found: error | |
- name: Upload results to Codecov | |
uses: codecov/codecov-action@v1 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
file: ${{ github.workspace }}/coverage.xml |