# Lints and checks for potential issues in Python files.

name: Check-Python

on:
  workflow_dispatch:
  push:
    branches-ignore:
      - 'dependabot/**'
    paths:
      - '**.py'
      - .github/workflows/check-python.yml
  pull_request:
    paths:
      - '**.py'
      - .github/workflows/check-python.yml
  schedule:
    - cron: '0 7 * * 2'

permissions:  # added using https://github.com/step-security/secure-workflows
  contents: read

jobs:
  codeql-python:
    permissions:
      actions: read
      contents: read
      security-events: write
    runs-on: ubuntu-latest
    timeout-minutes: 10

    steps:
    - name: Harden Runner
      uses: step-security/harden-runner@e3f713f2d8f53843e71c69a996d56f51aa9adfb9
      with:
        disable-sudo: true
        egress-policy: block
        allowed-endpoints: >
          api.github.com:443
          files.pythonhosted.org:443
          github.com:443
          objects.githubusercontent.com:443
          pypi.org:443
          release-assets.githubusercontent.com:443
          uploads.github.com:443

    - name: Checkout repository
      uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd

    - name: print env
      run: ./ci/printenv.sh

    # Initializes the CodeQL tools for scanning.
    - name: Initialize CodeQL
      uses: github/codeql-action/init@b20883b0cd1f46c72ae0ba6d1090936928f9fa30
      with:
        languages: python

    - name: Perform CodeQL Analysis
      uses: github/codeql-action/analyze@b20883b0cd1f46c72ae0ba6d1090936928f9fa30
