1*fa79be6bSBram Moolenaar# For most projects, this workflow file will not need changing; you simply need
2*fa79be6bSBram Moolenaar# to commit it to your repository.
3*fa79be6bSBram Moolenaar#
4*fa79be6bSBram Moolenaar# You may wish to alter this file to override the set of languages analyzed,
5*fa79be6bSBram Moolenaar# or to provide custom queries or build logic.
6*fa79be6bSBram Moolenaarname: "CodeQL"
7*fa79be6bSBram Moolenaar
8*fa79be6bSBram Moolenaaron:
9*fa79be6bSBram Moolenaar  push:
10*fa79be6bSBram Moolenaar    branches: [master]
11*fa79be6bSBram Moolenaar  pull_request:
12*fa79be6bSBram Moolenaar    # The branches below must be a subset of the branches above
13*fa79be6bSBram Moolenaar    branches: [master]
14*fa79be6bSBram Moolenaar  schedule:
15*fa79be6bSBram Moolenaar    - cron: '0 18 * * 1'
16*fa79be6bSBram Moolenaar
17*fa79be6bSBram Moolenaarjobs:
18*fa79be6bSBram Moolenaar  analyze:
19*fa79be6bSBram Moolenaar    name: Analyze
20*fa79be6bSBram Moolenaar    runs-on: ubuntu-latest
21*fa79be6bSBram Moolenaar
22*fa79be6bSBram Moolenaar    strategy:
23*fa79be6bSBram Moolenaar      fail-fast: false
24*fa79be6bSBram Moolenaar      matrix:
25*fa79be6bSBram Moolenaar        # Override automatic language detection by changing the below list
26*fa79be6bSBram Moolenaar        # Supported options are ['csharp', 'cpp', 'go', 'java', 'javascript', 'python']
27*fa79be6bSBram Moolenaar        language: ['cpp', 'python']
28*fa79be6bSBram Moolenaar        # Learn more...
29*fa79be6bSBram Moolenaar        # https://docs.github.com/en/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#overriding-automatic-language-detection
30*fa79be6bSBram Moolenaar
31*fa79be6bSBram Moolenaar    steps:
32*fa79be6bSBram Moolenaar    - name: Checkout repository
33*fa79be6bSBram Moolenaar      uses: actions/checkout@v2
34*fa79be6bSBram Moolenaar
35*fa79be6bSBram Moolenaar    # Initializes the CodeQL tools for scanning.
36*fa79be6bSBram Moolenaar    - name: Initialize CodeQL
37*fa79be6bSBram Moolenaar      uses: github/codeql-action/init@v1
38*fa79be6bSBram Moolenaar      with:
39*fa79be6bSBram Moolenaar        languages: ${{ matrix.language }}
40*fa79be6bSBram Moolenaar        # If you wish to specify custom queries, you can do so here or in a config file.
41*fa79be6bSBram Moolenaar        # By default, queries listed here will override any specified in a config file.
42*fa79be6bSBram Moolenaar        # Prefix the list here with "+" to use these queries and those in the config file.
43*fa79be6bSBram Moolenaar        # queries: ./path/to/local/query, your-org/your-repo/queries@main
44*fa79be6bSBram Moolenaar
45*fa79be6bSBram Moolenaar    # Autobuild attempts to build any compiled languages  (C/C++, C#, or Java).
46*fa79be6bSBram Moolenaar    # If this step fails, then you should remove it and run the build manually (see below)
47*fa79be6bSBram Moolenaar    - name: Autobuild
48*fa79be6bSBram Moolenaar      uses: github/codeql-action/autobuild@v1
49*fa79be6bSBram Moolenaar
50*fa79be6bSBram Moolenaar    # ℹ️ Command-line programs to run using the OS shell.
51*fa79be6bSBram Moolenaar    # �� https://git.io/JvXDl
52*fa79be6bSBram Moolenaar
53*fa79be6bSBram Moolenaar    # ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
54*fa79be6bSBram Moolenaar    #    and modify them (or add more) to build your code if your project
55*fa79be6bSBram Moolenaar    #    uses a compiled language
56*fa79be6bSBram Moolenaar
57*fa79be6bSBram Moolenaar    #- run: |
58*fa79be6bSBram Moolenaar    #   make bootstrap
59*fa79be6bSBram Moolenaar    #   make release
60*fa79be6bSBram Moolenaar
61*fa79be6bSBram Moolenaar    - name: Perform CodeQL Analysis
62*fa79be6bSBram Moolenaar      uses: github/codeql-action/analyze@v1
63