aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/ban-imports.yaml
diff options
context:
space:
mode:
Diffstat (limited to '.github/workflows/ban-imports.yaml')
-rw-r--r--.github/workflows/ban-imports.yaml23
1 files changed, 23 insertions, 0 deletions
diff --git a/.github/workflows/ban-imports.yaml b/.github/workflows/ban-imports.yaml
new file mode 100644
index 000000000..2d0020c85
--- /dev/null
+++ b/.github/workflows/ban-imports.yaml
@@ -0,0 +1,23 @@
+name: Check banned imports
+on:
+ - pull_request
+ - push
+ - workflow_dispatch
+permissions: {}
+jobs:
+ check-imports:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v3
+ name: Checkout code
+ - name: Check imports
+ run: |
+ while IFS=' ' read search banned; do
+ echo Banning $banned from $search
+ grep -nrE -- "import $banned" src/main/java/"$search"|sed -E 's/^(.*):([0-9]+):(.*)/::error file=\1,line=\2::Illegal \3/g'|tee -a temp
+ done<<<$(cat .github/workflows/illegal-imports.txt|sed -E 's/#.*//;/^$/d')
+ found=$(wc -l temp|cut -d ' ' -f 1)
+ echo Found "$found" invalid imports. Check the files tab for more information.
+ if [[ "$found" -ne 0 ]]; then
+ exit 1
+ fi