mirror of
https://github.com/ben-grande/qusal.git
synced 2025-03-04 04:39:27 -05:00

Using action major version guarantees using the latest action version while not having to constantly modify the patch and minor version.
69 lines
2.0 KiB
YAML
69 lines
2.0 KiB
YAML
# yamllint disable-line rule:line-length
|
|
# SPDX-FileCopyrightText: 2023 - 2024 Benjamin Grande M. S. <ben.grande.b@gmail.com>
|
|
#
|
|
# SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
---
|
|
name: Lint
|
|
|
|
# yamllint disable-line rule:truthy
|
|
on:
|
|
# yamllint disable-line rule:empty-values
|
|
push:
|
|
branches:
|
|
- main
|
|
pull_request:
|
|
branches:
|
|
- main
|
|
types:
|
|
- opened
|
|
- reopened
|
|
- synchronize
|
|
|
|
concurrency:
|
|
group: ci-${{ github.ref }}-1
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
lint:
|
|
strategy:
|
|
fail-fast: false
|
|
runs-on: ubuntu-24.04
|
|
steps:
|
|
- name: Update package list
|
|
run: sudo apt-get -y update
|
|
- name: Install OS packages
|
|
# yamllint disable-line rule:line-length
|
|
run: sudo apt-get install -y python3-dev python3-pip shellcheck reuse ruby-mdl pylint
|
|
# gitlint is available on Debian but Ubuntu has an older version.
|
|
- name: Remove externally managed python environment flag
|
|
# yamllint disable-line rule:line-length
|
|
run: sudo dpkg-divert --rename --add /usr/lib/$(py3versions -d)/EXTERNALLY-MANAGED
|
|
- name: Install pip packages
|
|
run: pip3 install salt-lint gitlint
|
|
- uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
- uses: actions/setup-python@v5
|
|
- uses: pre-commit/action@v3
|
|
env:
|
|
SPEC_VENDOR: Github Actions
|
|
SPEC_PACKAGER: Github Actions
|
|
- name: Lint commits
|
|
# yamllint disable-line rule:line-length
|
|
run: |
|
|
if test "${{ github.event_name}}" = "pull_request"
|
|
then
|
|
base="${{ github.event.pull_request.base.sha }}"
|
|
head="${{ github.event.pull_request.head.sha }}"
|
|
else
|
|
base="${{ github.event.before }}"
|
|
head="${{ github.event.after }}"
|
|
fi
|
|
if test "${base}" = "${head}" || test -z "${base}"
|
|
then
|
|
gitlint --debug --commit "${head}"
|
|
else
|
|
gitlint --debug --commits "${base}..${head}"
|
|
fi
|