Skip to content

Commit

Permalink
Add linting workflow with yamllint; fix linting issues (#396)
Browse files Browse the repository at this point in the history
* Add linting workflow with yamllint. Fix linting issues.

* Use nox for running yamllint.
  • Loading branch information
felixfontein committed May 13, 2024
1 parent 043485a commit 74736c0
Show file tree
Hide file tree
Showing 10 changed files with 110 additions and 26 deletions.
2 changes: 1 addition & 1 deletion .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
# Copyright (c) Ansible Project
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
# GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt)
# SPDX-License-Identifier: GPL-3.0-or-later

version: 2
Expand Down
45 changes: 24 additions & 21 deletions .github/workflows/ansible-release.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
---
# Copyright (c) Ansible Project
# GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt)
# SPDX-License-Identifier: GPL-3.0-or-later

name: Release Ansible package
on:
'on':
workflow_dispatch:
inputs:
ansible-version:
Expand Down Expand Up @@ -142,26 +147,25 @@ jobs:
id-token: write

steps:
- name: Ensure that the PR was merged
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
PR_URL: ${{ needs.build.outputs.pr_url }}
run: |
STATE="$(gh pr view "${PR_URL}" --json state --template "{{.state}}")"
if [ "${STATE}" != "MERGED" ]; then
echo "::error ::The state of PR ${PR_URL} must be MERGED, not ${STATE}"
exit 1
fi
- name: Download artifact
uses: actions/download-artifact@v4
with:
name: sdist-and-wheel
path: dist/

- name: Ensure that the PR was merged
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
PR_URL: ${{ needs.build.outputs.pr_url }}
run: |
STATE="$(gh pr view "${PR_URL}" --json state --template "{{.state}}")"
if [ "${STATE}" != "MERGED" ]; then
echo "::error ::The state of PR ${PR_URL} must be MERGED, not ${STATE}"
exit 1
fi
- name: Download artifact
uses: actions/download-artifact@v4
with:
name: sdist-and-wheel
path: dist/

- name: Upload Ansible sdist and wheel to PyPI
uses: pypa/gh-action-pypi-publish@release/v1
- name: Upload Ansible sdist and wheel to PyPI
uses: pypa/gh-action-pypi-publish@release/v1

# git-tag job creates the git tag

Expand All @@ -174,7 +178,6 @@ jobs:
contents: write

steps:

- name: Check out ansible-build-data
uses: actions/checkout@v4
with:
Expand Down
7 changes: 6 additions & 1 deletion .github/workflows/antsibull-build.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
---
# Copyright (c) Ansible Project
# GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt)
# SPDX-License-Identifier: GPL-3.0-or-later

name: antsibull-build
on:
'on':
push:
branches: [main]
pull_request:
Expand Down
47 changes: 47 additions & 0 deletions .github/workflows/nox.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
---
# GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt)
# SPDX-License-Identifier: GPL-3.0-or-later
# SPDX-FileCopyrightText: 2023 Maxwell G <maxwell@gtmx.me

name: nox
'on':
push:
branches: [main]
pull_request:
branches: [main]
# Run once per week (Thursday at 04:00 UTC)
schedule:
- cron: '0 4 * * 4'
workflow_dispatch:

env:
FORCE_COLOR: "1"

jobs:
nox:
runs-on: ubuntu-latest
defaults:
run:
working-directory: antsibull
strategy:
fail-fast: false
matrix:
include:
- session: lint
python-versions: "3.12"
name: "Run nox ${{ matrix.session }} session"
steps:
- name: Check out antsibull
uses: actions/checkout@v4
with:
path: antsibull
- name: Setup nox
uses: wntrblm/nox@2024.04.15
with:
python-versions: "${{ matrix.python-versions }}"
- name: Set up nox environments
run: |
OTHER_ANTSIBULL_MODE=git nox -v -e "${{ matrix.session }}" ${{ matrix.codecov && 'coverage' || '' }} --install-only
- name: "Run nox -e ${{ matrix.session }}"
run: |
OTHER_ANTSIBULL_MODE=git nox -v -e "${{ matrix.session }}" --reuse-existing-virtualenvs --no-install
15 changes: 15 additions & 0 deletions .yamllint
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
# Copyright (c) Ansible Project
# GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt)
# SPDX-License-Identifier: GPL-3.0-or-later

extends: default

rules:
line-length: disable

ignore:
- /.nox/
- /*/ansible-*.yaml
- /*/changelog.yaml
- /*/galaxy-requirements.yaml
2 changes: 1 addition & 1 deletion 10/collection-meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -113,7 +113,7 @@ collections:
- alinabuzachis
- GomathiselviS
- abikouo
- komaldesai13
- komaldesai13
repository: https://github.com/ansible-collections/vmware.vmware_rest
cisco.dnac:
maintainers:
Expand Down
2 changes: 1 addition & 1 deletion 8/collection-meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ collections:
- alinabuzachis
- GomathiselviS
- abikouo
- komaldesai13
- komaldesai13
repository: https://github.com/ansible-collections/vmware.vmware_rest
cisco.dnac:
maintainers:
Expand Down
2 changes: 1 addition & 1 deletion 9/collection-meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ collections:
- alinabuzachis
- GomathiselviS
- abikouo
- komaldesai13
- komaldesai13
repository: https://github.com/ansible-collections/vmware.vmware_rest
cisco.dnac:
maintainers:
Expand Down
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,10 @@ In case of a potential release blocker, the following actions need to be done:
release of Ansible. This file will be created by the `antsibull-build single`
command.

## Linting

To lint the files in this repository, run `nox -e lint`. This assumes you have `nox` installed.

## Adding a new collection

### Next Ansible major release
Expand Down
10 changes: 10 additions & 0 deletions noxfile.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# GNU General Public License v3.0+ (see LICENSE or https://www.gnu.org/licenses/gpl-3.0.txt)
# SPDX-License-Identifier: GPL-3.0-or-later
# SPDX-FileCopyrightText: 2023 Maxwell G <maxwell@gtmx.me

from __future__ import annotations

import nox
Expand All @@ -7,3 +11,9 @@
def mkdocs(session: nox.Session):
session.install("-r", "docs-requirements.txt")
session.run("mkdocs", *(session.posargs or ["build"]))


@nox.session
def lint(session: nox.Session):
session.install("yamllint")
session.run("yamllint", ".")

0 comments on commit 74736c0

Please sign in to comment.