aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorrhtenhove <rhtenhove@users.noreply.github.com>2022-07-04 14:32:48 -0400
committerGitHub <noreply@github.com>2022-07-04 14:32:48 -0400
commit6c9c8fdc651e3c3376f3ba6590c49424be1844d7 (patch)
treed656304dd91b8431c00c1cf8228dd83889042c5a
parent3e65e1a029c44b33a77ca04724335ee3ecd30e67 (diff)
downloadafl++-6c9c8fdc651e3c3376f3ba6590c49424be1844d7.tar.gz
check code formatting (#5)
-rwxr-xr-x.custom-format.py5
-rw-r--r--.github/workflows/ci.yml7
-rw-r--r--.github/workflows/code-format.yml36
-rw-r--r--.github/workflows/codeql-analysis.yml7
-rw-r--r--.github/workflows/rust_custom_mutator.yml7
-rw-r--r--Dockerfile4
6 files changed, 58 insertions, 8 deletions
diff --git a/.custom-format.py b/.custom-format.py
index 7ac63396..8c7ea404 100755
--- a/.custom-format.py
+++ b/.custom-format.py
@@ -19,6 +19,7 @@ import subprocess
import sys
import os
import re
+import shutil
# string_re = re.compile('(\\"(\\\\.|[^"\\\\])*\\")') # future use
@@ -26,6 +27,10 @@ with open(".clang-format") as f:
fmt = f.read()
CLANG_FORMAT_BIN = os.getenv("CLANG_FORMAT_BIN")
+
+if CLANG_FORMAT_BIN is None:
+ CLANG_FORMAT_BIN = shutil.which("clang-format")
+
if CLANG_FORMAT_BIN is None:
o = 0
try:
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 906267a0..4ca76f2d 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -2,9 +2,12 @@ name: CI
on:
push:
- branches: [stable, dev]
+ branches:
+ - stable
+ - dev
pull_request:
- branches: [stable, dev]
+ branches:
+ - dev # No need for stable-pull-request, as that equals dev-push
jobs:
linux:
diff --git a/.github/workflows/code-format.yml b/.github/workflows/code-format.yml
new file mode 100644
index 00000000..f24e652b
--- /dev/null
+++ b/.github/workflows/code-format.yml
@@ -0,0 +1,36 @@
+name: Formatting
+
+on:
+ push:
+ branches:
+ - stable
+ - dev
+ pull_request:
+ branches:
+ - dev # No need for stable-pull-request, as that equals dev-push
+
+jobs:
+ code-format-check:
+ name: Check code format
+ runs-on: ubuntu-22.04
+ container:
+ image: docker.io/aflplusplus/aflplusplus:dev
+ env:
+ LLVM_VERSION: 14 # Remove _after_ this branch's image is built and pushed. The new image will have this var in ENV.
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v3
+ - name: Format
+ run: |
+ git config --global --add safe.directory /__w/AFLplusplus/AFLplusplus
+ apt-get update
+ apt-get install -y clang-format-${LLVM_VERSION}
+ update-alternatives --install /usr/bin/clang-format clang-format /usr/bin/clang-format-${LLVM_VERSION} 0
+ make code-format
+ - name: Check if code needed formatting
+ run: |
+ git --no-pager -c color.ui=always diff HEAD
+ if ! git diff HEAD --quiet; then
+ echo "[!] Please run 'make code-format' and push its changes."
+ exit 1
+ fi
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index ba6792b1..54934395 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -2,9 +2,12 @@ name: "CodeQL"
on:
push:
- branches: [stable, dev]
+ branches:
+ - stable
+ - dev
pull_request:
- branches: [stable, dev]
+ branches:
+ - dev # No need for stable-pull-request, as that equals dev-push
jobs:
analyze:
diff --git a/.github/workflows/rust_custom_mutator.yml b/.github/workflows/rust_custom_mutator.yml
index eb3e2581..7c2f0c12 100644
--- a/.github/workflows/rust_custom_mutator.yml
+++ b/.github/workflows/rust_custom_mutator.yml
@@ -2,9 +2,12 @@ name: Rust Custom Mutators
on:
push:
- branches: [ stable, dev ]
+ branches:
+ - stable
+ - dev
pull_request:
- branches: [ stable, dev ]
+ branches:
+ - dev # No need for stable-pull-request, as that equals dev-push
jobs:
test:
diff --git a/Dockerfile b/Dockerfile
index 29ca2a5f..a82fffdc 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -16,8 +16,8 @@ RUN apt-get update && apt-get full-upgrade -y && \
apt-get install -y --no-install-recommends wget ca-certificates && \
rm -rf /var/lib/apt/lists/*
-ARG LLVM_VERSION=14
-ARG GCC_VERSION=12
+ENV LLVM_VERSION=14
+ENV GCC_VERSION=12
RUN echo "deb [signed-by=/etc/apt/keyrings/llvm-snapshot.gpg.key] http://apt.llvm.org/jammy/ llvm-toolchain-jammy-${LLVM_VERSION} main" > /etc/apt/sources.list.d/llvm.list && \
wget -qO /etc/apt/keyrings/llvm-snapshot.gpg.key https://apt.llvm.org/llvm-snapshot.gpg.key