2023-02-08 21:28:28 +00:00
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name : "CodeQL"
on :
push :
2023-02-14 12:46:55 +00:00
branches : [ "main" ]
2023-02-08 21:28:28 +00:00
pull_request :
# The branches below must be a subset of the branches above
2023-02-14 12:46:55 +00:00
branches : [ "main" ]
2023-02-08 21:28:28 +00:00
schedule :
2023-02-14 12:46:55 +00:00
- cron : "20 2 * * 0"
2023-02-08 21:28:28 +00:00
jobs :
analyze :
name : Analyze
runs-on : ubuntu-latest
permissions :
actions : read
contents : read
security-events : write
strategy :
fail-fast : false
matrix :
2023-02-14 12:46:55 +00:00
language : [ "cpp" , "javascript" , "python" ]
2023-02-08 21:28:28 +00:00
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
# Use only 'java' to analyze code written in Java, Kotlin or both
# Use only 'javascript' to analyze code written in JavaScript, TypeScript or both
# Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support
steps :
2023-02-14 12:46:55 +00:00
- name : Install dependencies
if : matrix.language == 'cpp'
run : |
sudo apt-get install -yqq --no-install-recommends \
audacious-dev \
cmake \
gawk \
lcov \
libaudclient-dev \
2023-02-14 12:47:39 +00:00
libc++-14-dev \
libc++abi-14-dev \
2023-02-14 12:46:55 +00:00
libcairo2-dev \
libcurl4-gnutls-dev \
libcurl4-gnutls-dev \
libdbus-glib-1-dev \
libglib2.0-dev \
libical-dev \
libimlib2-dev \
libircclient-dev \
libiw-dev \
liblua5.3-dev \
libmicrohttpd-dev \
libmysqlclient-dev \
libpulse-dev \
librsvg2-dev \
libsystemd-dev \
libwayland-bin \
libwayland-dev \
libx11-dev \
libxdamage-dev \
libxext-dev \
libxft-dev \
libxinerama-dev \
libxml2-dev \
libxmmsclient-dev \
libxnvctrl-dev \
ncurses-dev \
ninja-build \
wayland-protocols
- name : Checkout repository
uses : actions/checkout@v3
2023-02-08 21:28:28 +00:00
2023-02-14 12:46:55 +00:00
# Initializes the CodeQL tools for scanning.
- name : Initialize CodeQL
uses : github/codeql-action/init@v2
with :
languages : ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
2023-02-08 21:28:28 +00:00
2023-02-14 12:46:55 +00:00
# Details on CodeQL's query packs refer to : https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
# queries: security-extended,security-and-quality
2023-02-08 21:28:28 +00:00
2023-02-14 12:46:55 +00:00
# Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name : Autobuild
uses : github/codeql-action/autobuild@v2
2023-02-08 21:28:28 +00:00
2023-02-14 12:46:55 +00:00
- name : Perform CodeQL Analysis
uses : github/codeql-action/analyze@v2
with :
category : "/language:${{matrix.language}}"