#4394 WIP replacement build script #1517
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: Build | |
on: | |
push: | |
branches: | |
- master | |
jobs: | |
build: | |
name: Build | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: ["3.10", "3.12"] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip setuptools Cython | |
sudo apt-get update | |
sudo apt-get install -y libx11-dev libxcomposite-dev libxdamage-dev libxtst-dev libxkbfile-dev libxres-dev | |
sudo apt-get install -y libavif-dev libyuv-dev libvpx-dev libx264-dev libopenh264-dev libwebp-dev libturbojpeg-dev | |
sudo apt-get install -y libgtk-3-dev python3-dev python3-cairo-dev python-gi-dev gcc libsystemd-dev libpam0g-dev | |
sudo apt-get install -y liblz4-dev libbrotli-dev libxxhash-dev libqrencode-dev pandoc | |
- name: Build with extra cythonization | |
run: | | |
python ./setup.py build --with-cythonize_more | |
sonarqube: | |
name: Sonarqube | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis | |
- uses: sonarsource/sonarqube-scan-action@master | |
env: | |
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} | |
SONAR_HOST_URL: ${{ secrets.SONAR_HOST_URL }} | |
# If you wish to fail your job when the Quality Gate is red, uncomment the | |
# following lines. This would typically be used to fail a deployment. | |
# - uses: sonarsource/sonarqube-quality-gate-action@master | |
# timeout-minutes: 5 | |
# env: | |
# SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} |