Skip to content

dev

dev #9808

Workflow file for this run

# contains non-functional tests, like checks on docs
# and code style
name: Static Analysis
on:
push:
branches:
- master
- ci/pyproject
pull_request:
branches:
- master
# automatically cancel in-progress builds if another commit is pushed
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
COMPILER: 'gcc'
MAKEFLAGS: '-j4'
OS_NAME: 'linux'
jobs:
lint:
name: lint
runs-on: ubuntu-latest
timeout-minutes: 60
steps:
- name: Checkout repository
uses: actions/checkout@v5
with:
fetch-depth: 5
persist-credentials: false
submodules: false
- name: Setup and run tests
shell: bash
run: |
export TASK=lint
export CONDA=${HOME}/miniforge
export PATH=${CONDA}/bin:$HOME/.local/bin:${PATH}
$GITHUB_WORKSPACE/.ci/setup.sh || exit 1
$GITHUB_WORKSPACE/.ci/lint-all.sh || exit 1
# check-docs:
# name: check-docs
# runs-on: ubuntu-latest
# timeout-minutes: 60
# steps:
# - name: Checkout repository
# uses: actions/checkout@v5
# with:
# fetch-depth: 5
# persist-credentials: false
# submodules: false
# - name: Setup and run tests
# shell: bash
# run: |
# export TASK=check-docs
# export CONDA=${HOME}/miniforge
# export PATH=${CONDA}/bin:$HOME/.local/bin:${PATH}
# $GITHUB_WORKSPACE/.ci/setup.sh || exit 1
# $GITHUB_WORKSPACE/.ci/build-docs.sh || exit 1
# r-check-docs:
# name: r-package-check-docs
# timeout-minutes: 60
# runs-on: ubuntu-latest
# container: rocker/verse
# steps:
# - name: Trust git cloning LightGBM
# run: |
# git config --global --add safe.directory "${GITHUB_WORKSPACE}"
# - name: Checkout repository
# uses: actions/checkout@v5
# with:
# fetch-depth: 5
# persist-credentials: false
# submodules: true
# - name: Install packages
# shell: bash
# run: |
# Rscript ./.ci/install-r-deps.R --build --include=roxygen2
# sh build-cran-package.sh || exit 1
# R CMD INSTALL --with-keep.source lightgbm_*.tar.gz || exit 1
# - name: Test documentation
# shell: bash --noprofile --norc {0}
# run: |
# Rscript --vanilla -e "roxygen2::roxygenize('R-package/', load = 'installed')" || exit 1
# num_doc_files_changed=$(
# git diff --name-only | grep --count -E "\.Rd|NAMESPACE"
# )
# if [[ ${num_doc_files_changed} -gt 0 ]]; then
# echo "Some R documentation files have changed. Please re-generate them and commit those changes."
# echo ""
# echo " sh build-cran-package.sh"
# echo " R CMD INSTALL --with-keep.source lightgbm_*.tar.gz"
# echo " Rscript -e \"roxygen2::roxygenize('R-package/', load = 'installed')\""
# echo ""
# exit 1
# fi
# all-static-analysis-jobs-successful:
# if: always()
# runs-on: ubuntu-latest
# needs: [lint, check-docs, r-check-docs]
# steps:
# - name: Note that all tests succeeded
# uses: re-actors/[email protected]
# with:
# jobs: ${{ toJSON(needs) }}