Add linting actions #1
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Lint and check code for errors | ||
on: | ||
push: | ||
branches: | ||
- main | ||
- dev | ||
paths-ignore: | ||
- 'Payload_Type/thanatos/Dockerfile' | ||
pull_request: | ||
branches: | ||
- main | ||
- dev | ||
workflow_dispatch: | ||
env: | ||
THANATOS_PATH: Payload_Type/thanatos | ||
AGENT_CODE: ${{ THANATOS_PATH }}/thanatos/agent_code | ||
Check failure on line 21 in .github/workflows/lint.yml GitHub Actions / Lint and check code for errorsInvalid workflow file
|
||
MYTHIC_CODE: ${{ THANATOS_PATH }}/thanatos/mythic/agent_functions | ||
jobs: | ||
syntax: | ||
name: Check Syntax | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@v4 | ||
- name: Setup environment | ||
uses: ./.github/workflows/lint-setup | ||
- name: Check Mythic code for errors | ||
run: python -m pylint -f colorized --errors-only ${THANATOS_PATH}/*.py ${MYTHIC_CODE}/*.py | ||
- name: Check Agent code for errors | ||
working-directory: ${{ env.AGENT_CODE }} | ||
run: cargo check --color always --all-targets --all-features | ||
env: | ||
UUID: "" | ||
callback_interval: "" | ||
callback_jitter: "" | ||
encrypted_exchange_check: "" | ||
connection_retries: "" | ||
working_hours: "" | ||
format: | ||
name: Check Formatting | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@v4 | ||
- name: Setup environment | ||
uses: ./.github/workflows/lint-setup | ||
- name: Check Mythic code formatting | ||
run: python -m black --color --diff --check ${THANATOS_PATH}/*.py ${MYTHIC_CODE}/*.py | ||
- name: Check Agent code formatting | ||
working-directory: ${{ env.AGENT_CODE }} | ||
run: cargo fmt -- --color always --check | ||
env: | ||
UUID: "" | ||
callback_interval: "" | ||
callback_jitter: "" | ||
encrypted_exchange_check: "" | ||
connection_retries: "" | ||
working_hours: "" | ||
lint: | ||
name: Lint | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@v4 | ||
- name: Setup environment | ||
uses: ./.github/workflows/lint-setup | ||
- name: Install Clippy | ||
run: rustup component add clippy | ||
- name: Lint Mythic code with pylint | ||
run: python -m pylint -f colorized --rcfile ${THANATOS_PATH}/pylintrc ${THANATOS_PATH}/*.py ${MYTHIC_CODE}/*.py | ||
- name: Lint Agent code with clippy | ||
working-directory: ${{ env.AGENT_CODE }} | ||
run: cargo clippy --color always --all-features --all-targets -- -D warnings | ||
env: | ||
UUID: "" | ||
callback_interval: "" | ||
callback_jitter: "" | ||
encrypted_exchange_check: "" | ||
connection_retries: "" | ||
working_hours: "" |