diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 00000000..d1587865 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,34 @@ +--- +name: Bug report +about: Create a report to help us improve +title: '' +labels: '' +assignees: '' + +--- + +# Describe the bug +A clear and concise description of what the bug is. + +# Environment +OS: the OS + version you’re running Kubescape on, e.g Ubuntu 22.04 LTS +Version: the version that Kubescape reports when you run `kubescape version` +``` +Your current version is: +``` + +# Steps To Reproduce +Steps to reproduce the behavior: +1. Go to '...' +2. Click on '....' +3. Scroll down to '....' +4. See error + +# Expected behavior +A clear and concise description of what you expected to happen. + +# Actual Behavior +A clear and concise description of what happened. If applicable, add screenshots to help explain your problem. + +# Additional context +Add any other context about the problem here. diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 00000000..bbcbbe7d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,20 @@ +--- +name: Feature request +about: Suggest an idea for this project +title: '' +labels: '' +assignees: '' + +--- + +**Is your feature request related to a problem? Please describe.** +A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] + +**Describe the solution you'd like** +A clear and concise description of what you want to happen. + +**Describe alternatives you've considered** +A clear and concise description of any alternative solutions or features you've considered. + +**Additional context** +Add any other context or screenshots about the feature request here. diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 00000000..b2d8493c --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,14 @@ +## Describe your changes + +## Screenshots - If Any (Optional) + +## Issue ticket number and link + +## Checklist before requesting a review +- [ ] My code follows the style guidelines of this project +- [ ] I have commented my code, particularly in hard-to-understand areas +- [ ] I have performed a self-review of my code +- [ ] If it is a core feature, I have added thorough tests. +- [ ] New and existing unit tests pass locally with my changes + +**Please open the PR against the `dev` branch (Unless the PR contains only documentation changes)** diff --git a/Makefile b/Makefile index 1fd42de0..f45b5953 100644 --- a/Makefile +++ b/Makefile @@ -7,7 +7,7 @@ export CGO_ENABLED=1 # build and install libgit2 libgit2: - git submodule update --init --recursive + -git submodule update --init --recursive cd git2go; make install-static # go build tags diff --git a/README.md b/README.md index 9ff311a2..8ca20c32 100644 --- a/README.md +++ b/README.md @@ -5,9 +5,10 @@ -Kubescape is a K8s open-source tool providing a multi-cloud K8s single pane of glass, including risk analysis, security compliance, RBAC visualizer and image vulnerabilities scanning. +Kubescape is a K8s open-source tool providing a multi-cloud K8s single pane of glass, including risk analysis, security compliance, RBAC visualizer, and image vulnerabilities scanning. Kubescape scans K8s clusters, YAML files, and HELM charts, detecting misconfigurations according to multiple frameworks (such as the [NSA-CISA](https://www.armosec.io/blog/kubernetes-hardening-guidance-summary-by-armo/?utm_source=github&utm_medium=repository), [MITRE ATT&CK®](https://www.microsoft.com/security/blog/2021/03/23/secure-containerized-environments-with-updated-threat-matrix-for-kubernetes/)), software vulnerabilities, and RBAC (role-based-access-control) violations at early stages of the CI/CD pipeline, calculates risk score instantly and shows risk trends over time. -It became one of the fastest-growing Kubernetes tools among developers due to its easy-to-use CLI interface, flexible output formats, and automated scanning capabilities, saving Kubernetes users and admins’ precious time, effort, and resources. + +It has become one of the fastest-growing Kubernetes tools among developers due to its easy-to-use CLI interface, flexible output formats, and automated scanning capabilities, saving Kubernetes users and admins precious time, effort, and resources. Kubescape integrates natively with other DevOps tools, including Jenkins, CircleCI, Github workflows, Prometheus, and Slack, and supports multi-cloud K8s deployments like EKS, GKE, and AKS.
@@ -49,7 +50,7 @@ kubescape scan --submit --enable-host-scan --verbose
-> Kubescape is an open source project, we welcome your feedback and ideas for improvement. We’re also aiming to collaborate with the Kubernetes community to help make the tests themselves more robust and complete as Kubernetes develops. +> Kubescape is an open source project. We welcome your feedback and ideas for improvement. We’re also aiming to collaborate with the Kubernetes community to help make the tests more robust and complete as Kubernetes develops.
@@ -58,17 +59,17 @@ kubescape scan --submit --enable-host-scan --verbose
-# Being part of the team +# Being a part of the team We invite you to our team! We are excited about this project and want to return the love we get. Want to contribute? Want to discuss something? Have an issue? * Feel free to pick a task from the [roadmap](docs/roadmap.md) or suggest a feature of your own. [Contact us](MAINTAINERS.md) directly for more information :) -* Open a issue, we are trying to respond within 48 hours -* [Join us](https://armosec.github.io/kubescape) in a discussion on our discord server! +* Open an issue, we are trying to respond within 48 hours +* [Join us](https://discord.com/invite/WKZRaCtBxN) in the discussion on our discord server! -[logo](https://armosec.github.io/kubescape/) +[logo](https://discord.com/invite/WKZRaCtBxN) ![discord](https://img.shields.io/discord/893048809884643379) @@ -87,7 +88,7 @@ Want to contribute? Want to discuss something? Have an issue? * [Scan Kubescape on an air-gapped environment (offline support)](https://youtu.be/IGXL9s37smM) * [Managing exceptions in the Kubescape SaaS version](https://youtu.be/OzpvxGmCR80) * [Configure and run customized frameworks](https://youtu.be/12Sanq_rEhs) -* Customize controls configurations. [Kubescape CLI](https://youtu.be/955psg6TVu4), [Kubescape SaaS](https://youtu.be/lIMVSVhH33o) +* Customize control configurations. [Kubescape CLI](https://youtu.be/955psg6TVu4), [Kubescape SaaS](https://youtu.be/lIMVSVhH33o) ## Install on Windows @@ -204,7 +205,7 @@ kubescape scan *.yaml --submit kubescape scan https://github.com/kubescape/kubescape --submit ``` -#### Display all scanned resources (including the resources who passed) +#### Display all scanned resources (including the resources which passed) ``` kubescape scan --verbose ``` @@ -244,7 +245,7 @@ kubescape scan --exceptions examples/exceptions/exclude-kube-namespaces.json ``` kubescape scan --submit ``` -> Kubescape will load the default values file +> Kubescape will load the default value file ### Offline/Air-gaped Environment Support @@ -264,11 +265,11 @@ kubescape download artifacts --output path/to/local/dir kubescape scan --use-artifacts-from path/to/local/dir ``` -#### Download a single artifacts +#### Download a single artifact -You can also download a single artifacts and scan with the `--use-from` flag +You can also download a single artifact and scan with the `--use-from` flag -1. Download and save in file, if file name not specified, will save in `~/.kubescape/.json` +1. Download and save in file, if file name is not specified, will save in `~/.kubescape/.json` ``` kubescape download framework nsa --output /path/nsa.json ``` @@ -358,7 +359,7 @@ View Kubescape scan results directly in [Lens IDE](https://k8slens.dev/) using k ## VS code configuration samples -You can use the samples files below to setup your VS code environment for building and debugging purposes. +You can use the sample files below to setup your VS code environment for building and debugging purposes.
.vscode/settings.json @@ -403,13 +404,13 @@ You can use the samples files below to setup your VS code environment for buildi # Under the hood ## Technology -Kubescape based on [OPA engine](https://github.com/open-policy-agent/opa) and ARMO's posture controls. +Kubescape is based on the [OPA engine](https://github.com/open-policy-agent/opa) and ARMO's posture controls. -The tools retrieves Kubernetes objects from the API server and runs a set of [rego's snippets](https://www.openpolicyagent.org/docs/latest/policy-language/) developed by [ARMO](https://www.armosec.io?utm_source=github&utm_medium=repository). +The tools retrieve Kubernetes objects from the API server and run a set of [rego's snippets](https://www.openpolicyagent.org/docs/latest/policy-language/) developed by [ARMO](https://www.armosec.io?utm_source=github&utm_medium=repository). -The results by default printed in a pretty "console friendly" manner, but they can be retrieved in JSON format for further processing. +The results by default are printed in a pretty "console friendly" manner, but they can be retrieved in JSON format for further processing. -Kubescape is an open source project, we welcome your feedback and ideas for improvement. We’re also aiming to collaborate with the Kubernetes community to help make the tests themselves more robust and complete as Kubernetes develops. +Kubescape is an open source project, we welcome your feedback and ideas for improvement. We’re also aiming to collaborate with the Kubernetes community to help make the tests more robust and complete as Kubernetes develops. ## Thanks to all the contributors ❤️