From cc752913623586ea27104ef49230629d2c8c7921 Mon Sep 17 00:00:00 2001
From: Pawel Wieczorek
Date: Sun, 26 May 2019 11:40:36 +0200
Subject: k8s: Add basic structure for validation tool
This patch introduces CLI utility for checking if Kubernetes cluster
follows security recommendations. Provided Makefile simplifies setup
process by setting appropriate environment variables for the build.
Further information can be found in README. Provided symlink allows
proper document rendering on VCS hosting site.
Issue-ID: SECCOM-235
Change-Id: I4a1337c9834322ee4fd742a9ccb979b9bc505f75
Signed-off-by: Pawel Wieczorek
---
test/security/k8s/.gitignore | 2 ++
test/security/k8s/Makefile | 20 ++++++++++++++++++++
test/security/k8s/README | 26 ++++++++++++++++++++++++++
test/security/k8s/README.rst | 1 +
test/security/k8s/src/check/cmd/check/check.go | 9 +++++++++
5 files changed, 58 insertions(+)
create mode 100644 test/security/k8s/.gitignore
create mode 100644 test/security/k8s/Makefile
create mode 100644 test/security/k8s/README
create mode 120000 test/security/k8s/README.rst
create mode 100644 test/security/k8s/src/check/cmd/check/check.go
diff --git a/test/security/k8s/.gitignore b/test/security/k8s/.gitignore
new file mode 100644
index 000000000..3db554d59
--- /dev/null
+++ b/test/security/k8s/.gitignore
@@ -0,0 +1,2 @@
+# Built binaries
+/bin/check
diff --git a/test/security/k8s/Makefile b/test/security/k8s/Makefile
new file mode 100644
index 000000000..aeb1d9077
--- /dev/null
+++ b/test/security/k8s/Makefile
@@ -0,0 +1,20 @@
+PROJECT = check
+BIN_DIR = bin
+BIN = check
+
+all: run
+
+run: build
+ $(BIN_DIR)/$(BIN)
+
+build: $(BIN)
+
+$(BIN): export GOPATH = $(shell pwd)
+$(BIN):
+ go install $(PROJECT)/cmd/$(BIN)
+
+clean:
+ rm $(BIN_DIR)/$(BIN)
+ rmdir $(BIN_DIR)
+
+.PHONY: all run build clean $(BIN)
diff --git a/test/security/k8s/README b/test/security/k8s/README
new file mode 100644
index 000000000..e7ee79f3d
--- /dev/null
+++ b/test/security/k8s/README
@@ -0,0 +1,26 @@
+##############################
+K8s secure configuration check
+##############################
+
+Utility for checking if Kubernetes cluster configuration follows security recommendations.
+
+***************
+Getting started
+***************
+
+Prerequisites
+=============
+
+- make
+- go_
+
+.. _go: https://golang.org/doc/install
+
+Running
+=======
+
+Calling::
+
+ make run
+
+will build and run configuration check executable. It is the default target.
diff --git a/test/security/k8s/README.rst b/test/security/k8s/README.rst
new file mode 120000
index 000000000..100b93820
--- /dev/null
+++ b/test/security/k8s/README.rst
@@ -0,0 +1 @@
+README
\ No newline at end of file
diff --git a/test/security/k8s/src/check/cmd/check/check.go b/test/security/k8s/src/check/cmd/check/check.go
new file mode 100644
index 000000000..18487e29f
--- /dev/null
+++ b/test/security/k8s/src/check/cmd/check/check.go
@@ -0,0 +1,9 @@
+package main
+
+import (
+ "flag"
+)
+
+func main() {
+ flag.Parse()
+}
--
cgit 1.2.3-korg