name: Wordlist Updater - Combined words

on:
  workflow_dispatch:
  push:
    branches:
      - '**'
    paths:
      - 'Discovery/Web-Content/common.txt'
      - 'Discovery/Web-Content/raft-small-words.txt'
      - 'Discovery/Web-Content/raft-small-words-lowercase.txt'
      - 'Discovery/Web-Content/raft-medium-words-lowercase.txt'
      - 'Discovery/Web-Content/raft-medium-words.txt'
      - 'Discovery/Web-Content/big.txt'
      - 'Discovery/Web-Content/raft-large-words-lowercase.txt'
      - 'Discovery/Web-Content/raft-large-words.txt'

jobs:
  update_combined_words:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Generate combined_words.txt
        run: cd Discovery/Web-Content/ && cat common.txt raft-small-words* raft-medium-words* big.txt raft-large-words* | awk '! seen[$0]++' > combined_words.txt
      - name: Switching from HTTPS to SSH
        run: git remote set-url origin git@github.com:${{ github.repository }}.git
      - name: Check for changes
        run: git status
      - name: Stage changed files
        run: git add Discovery/Web-Content/combined_words.txt
      - name: Configure git email and username
        run: |
          git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com"
          git config --local user.name "github-actions[bot]"
      - name: Commit changed files
        run: git commit -m "[Github Action] Updated combined_words.txt"
      - name: Push changes # push the output folder to your repo
        uses: ad-m/github-push-action@4cc74773234f74829a8c21bc4d69dd4be9cfa599 # master
        with:
          github_token: ${{ secrets.GITHUB_TOKEN }}
          force: true
