From adeb7ab29c9ca8a93ddfc3e63ec8ae0f17976438 Mon Sep 17 00:00:00 2001
From: Adar Nimrod <nimrod@shore.co.il>
Date: Fri, 1 Jan 2021 21:15:20 +0200
Subject: [PATCH] pre-commit.

Checks from a common snippet for Docker projects. Address issues.
---
 .pre-commit-config.yaml | 48 +++++++++++++++++++++++++++++++++++++++++
 Dockerfile              |  7 +++---
 README.md               |  8 +++----
 3 files changed, 56 insertions(+), 7 deletions(-)
 create mode 100644 .pre-commit-config.yaml

diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml
new file mode 100644
index 0000000..13d68fd
--- /dev/null
+++ b/.pre-commit-config.yaml
@@ -0,0 +1,48 @@
+---
+repos:
+  - repo: https://github.com/pre-commit/pre-commit-hooks.git
+    rev: v3.4.0
+    hooks:
+      - id: check-added-large-files
+      - id: check-executables-have-shebangs
+      - id: check-merge-conflict
+      - id: check-symlinks
+      - id: trailing-whitespace
+
+  - repo: https://github.com/Yelp/detect-secrets
+    rev: v0.14.3
+    hooks:
+      - id: detect-secrets
+
+  - repo: https://github.com/adrienverge/yamllint
+    rev: v1.25.0
+    hooks:
+      - id: yamllint
+
+  - repo: https://github.com/amperser/proselint/
+    rev: 0.10.2
+    hooks:
+      - id: proselint
+        types: [plain-text]
+        exclude: LICENSE
+
+  - repo: https://github.com/executablebooks/mdformat.git
+    rev: 0.5.3
+    hooks:
+      - id: mdformat
+
+  - repo: https://git.shore.co.il/nimrod/shell-pre-commit.git
+    rev: v0.6.0
+    hooks:
+      - id: shell-lint
+
+  - repo: https://github.com/shellcheck-py/shellcheck-py.git
+    rev: v0.7.1.1
+    hooks:
+      - id: shellcheck
+
+  - repo: https://git.shore.co.il/nimrod/docker-pre-commit.git/
+    rev: v0.3.0
+    hooks:
+      - id: hadolint
+      - id: docker-compose
diff --git a/Dockerfile b/Dockerfile
index a8e27e1..fc9ddb4 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,6 +1,7 @@
 FROM buildpack-deps:stretch-scm as build
 ARG VERSION=1.0.5
 ENV DEBIAN_FRONTEND noninteractive
+# hadolint ignore=DL3008,DL3015
 RUN apt-get update && \
     apt-get install -y \
         build-essential \
@@ -8,14 +9,14 @@ RUN apt-get update && \
         libpcap-dev \
     && \
     git clone https://github.com/robertdavidgraham/masscan.git --branch ${VERSION} && \
-    cd masscan && \
-    make -j
+    make -jC masscan
 
 FROM debian:stretch-slim
 ARG VERSION=1.0.5
 LABEL MASSCAN_VERSION=${VERSION}
+# hadolint ignore=DL3008
 RUN apt-get update && \
-    DEBIAN_FRONTEND=noninteractive apt-get install -y libpcap0.8 && \
+    DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libpcap0.8 && \
     rm -rf /tmp/* /var/tmp/* /var/lib/apt/lists/* /var/cache/apt/archives/*
 COPY --from=build /masscan/bin/masscan /usr/local/bin/
 ENTRYPOINT ["/usr/local/bin/masscan"]
diff --git a/README.md b/README.md
index 302a142..ca2ee20 100644
--- a/README.md
+++ b/README.md
@@ -12,7 +12,7 @@ This software is licensed under the MIT license (see `LICENSE.txt`).
 
 ## Author Information
 
-Nimrod Adar, [contact me](mailto:nimrod@shore.co.il) or visit my [website](
-https://www.shore.co.il/). Patches are welcome via [`git send-email`](
-http://git-scm.com/book/en/v2/Git-Commands-Email). The repository is located
-at: <https://git.shore.co.il/explore/>.
+Nimrod Adar, [contact me](mailto:nimrod@shore.co.il) or visit my
+[website](https://www.shore.co.il/). Patches are welcome via
+[`git send-email`](http://git-scm.com/book/en/v2/Git-Commands-Email). The repository
+is located at: <https://git.shore.co.il/expore/>.
-- 
GitLab