Skip to content

Commit

Permalink
ci: Replace woke with codespell
Browse files Browse the repository at this point in the history
woke has been left with Noriko's and all other PRs not being reviewed for years,
hence we have been using our fork.

This PR replaces woke with codespell to detect non-inclusive language and check spelling

Codespell provides a built-in dictionary with recommended non-inclusive terms:
https://github.com/codespell-project/codespell/blob/main/codespell_lib/data/dictionary_usage.txt

Codespell supports using custom dictionaries so we can add to the list if we want.

`ignore-multiline-regex` in the `.codespellrc` config allows for disabling
codespell for a block of lines:

```
# codespell:ignore-begin
... codespell will not look at this text.
# codespell:ignore-end
```
You can ignore words inline by adding a comment like `# codespell:ignore word`.

You can ignore files and directories, and words by adding them to config file
`.codespellrc`.

For more information about inclusive naming initiative, see
https://inclusivenaming.org/about/

Signed-off-by: Sergei Petrosian <[email protected]>
  • Loading branch information
spetrosi committed Feb 7, 2025
1 parent 3cfbad1 commit 4537aac
Show file tree
Hide file tree
Showing 7 changed files with 50 additions and 23 deletions.
3 changes: 3 additions & 0 deletions .codespellrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[codespell]
ignore-multiline-regex = codespell:ignore-begin.*codespell:ignore-end
context=0
2 changes: 1 addition & 1 deletion .github/workflows/ansible-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,6 @@ jobs:
- name: Run ansible-test
uses: ansible-community/ansible-test-gh-action@release/v1
with:
testing-type: sanity # wokeignore:rule=sanity
testing-type: sanity
ansible-core-version: stable-2.17
collection-src-directory: ${{ github.workspace }}/.tox/ansible_collections/${{ env.LSR_ROLE2COLL_NAMESPACE }}/${{ env.LSR_ROLE2COLL_NAME }}
17 changes: 17 additions & 0 deletions .github/workflows/codespell.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Codespell configuration is within .codespellrc
---
name: Codespell
on: # yamllint disable-line rule:truthy
- pull_request
permissions:
contents: read
jobs:
codespell:
name: Check for spelling errors
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Codespell
uses: codespell-project/actions-codespell@v2
27 changes: 27 additions & 0 deletions .github/workflows/detect_non_inclusive_language.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Codespell configuration is within .codespellrc
---
name: Detect non-inclusive language
on: # yamllint disable-line rule:truthy
- pull_request
permissions:
contents: read
jobs:
codespell:
name: Detect non-inclusive language
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Get variable with regex values
id: regexvar
run: |
curl -L -s -o dictionary_usage.txt https://raw.githubusercontent.com/codespell-project/codespell/refs/heads/main/codespell_lib/data/dictionary_usage.txt
regexvar=$(sed 's/->.*//g' dictionary_usage.txt | sed 's/$/|/' | tr -d '\n' | sed 's/.$//')
rm dictionary_usage.txt
echo "regex=$regexvar" >> .codespellrc
- name: Detect non-inclusive language with codespell
uses: codespell-project/actions-codespell@v2
with:
builtin: usage
2 changes: 1 addition & 1 deletion .github/workflows/weekly_ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ name: Weekly CI trigger
on: # yamllint disable-line rule:truthy
workflow_dispatch:
schedule:
- cron: 0 12 * * 6
- cron: 0 7 * * 6
env:
BRANCH_NAME: weekly-ci
COMMIT_MESSAGE: "ci: This PR is to trigger periodic CI testing"
Expand Down
20 changes: 0 additions & 20 deletions .github/workflows/woke.yml

This file was deleted.

2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Direct AD Integration role

[![ansible-lint.yml](https://github.com/linux-system-roles/ad_integration/actions/workflows/ansible-lint.yml/badge.svg)](https://github.com/linux-system-roles/ad_integration/actions/workflows/ansible-lint.yml) [![ansible-test.yml](https://github.com/linux-system-roles/ad_integration/actions/workflows/ansible-test.yml/badge.svg)](https://github.com/linux-system-roles/ad_integration/actions/workflows/ansible-test.yml) [![markdownlint.yml](https://github.com/linux-system-roles/ad_integration/actions/workflows/markdownlint.yml/badge.svg)](https://github.com/linux-system-roles/ad_integration/actions/workflows/markdownlint.yml) [![tft.yml](https://github.com/linux-system-roles/ad_integration/actions/workflows/tft.yml/badge.svg)](https://github.com/linux-system-roles/ad_integration/actions/workflows/tft.yml) [![tft_citest_bad.yml](https://github.com/linux-system-roles/ad_integration/actions/workflows/tft_citest_bad.yml/badge.svg)](https://github.com/linux-system-roles/ad_integration/actions/workflows/tft_citest_bad.yml) [![woke.yml](https://github.com/linux-system-roles/ad_integration/actions/workflows/woke.yml/badge.svg)](https://github.com/linux-system-roles/ad_integration/actions/workflows/woke.yml)
[![ansible-lint.yml](https://github.com/linux-system-roles/ad_integration/actions/workflows/ansible-lint.yml/badge.svg)](https://github.com/linux-system-roles/ad_integration/actions/workflows/ansible-lint.yml) [![ansible-test.yml](https://github.com/linux-system-roles/ad_integration/actions/workflows/ansible-test.yml/badge.svg)](https://github.com/linux-system-roles/ad_integration/actions/workflows/ansible-test.yml) [![codespell.yml](https://github.com/linux-system-roles/ad_integration/actions/workflows/codespell.yml/badge.svg)](https://github.com/linux-system-roles/ad_integration/actions/workflows/codespell.yml) [![detect_non_inclusive_language.yml](https://github.com/linux-system-roles/ad_integration/actions/workflows/detect_non_inclusive_language.yml/badge.svg)](https://github.com/linux-system-roles/ad_integration/actions/workflows/detect_non_inclusive_language.yml) [![markdownlint.yml](https://github.com/linux-system-roles/ad_integration/actions/workflows/markdownlint.yml/badge.svg)](https://github.com/linux-system-roles/ad_integration/actions/workflows/markdownlint.yml) [![tft.yml](https://github.com/linux-system-roles/ad_integration/actions/workflows/tft.yml/badge.svg)](https://github.com/linux-system-roles/ad_integration/actions/workflows/tft.yml) [![tft_citest_bad.yml](https://github.com/linux-system-roles/ad_integration/actions/workflows/tft_citest_bad.yml/badge.svg)](https://github.com/linux-system-roles/ad_integration/actions/workflows/tft_citest_bad.yml)

An ansible role which configures direct Active Directory integration.

Expand Down

0 comments on commit 4537aac

Please sign in to comment.