Repository navigation
v1.0.0
NetPoint v1.0 Release Notes
Release Date: 2023-03-14
Overview
NetPoint is a Kubernetes network policy exporter designed to transform NetworkPolicy data into a DataCenterObjects format consumable by Checkpoint firewalls. This initial release introduces multiple views for exporting data, robust GitOps tracking enforcement, advanced filtering options, and graceful shutdown capabilities for production-grade Kubernetes environments.
New Features
-
Multiple Views for Data Export:
- all: Aggregates all unique CIDRs from all NetworkPolicies into a single object.
- policy: Produces one DataCenterObject per individual NetworkPolicy.
- namespace: Groups NetworkPolicies by namespace, aggregating CIDRs per namespace.
- internet: Splits the aggregated CIDRs into two objects – one for public and one for private addresses.
- cidr: Allows users to supply a comma‑separated list of CIDRs and returns one object per provided CIDR, where each object’s
Rangesfield lists only those network policy CIDRs that are fully contained within the provided range.
-
GitOps Tracking Enforcement:
- Introduces the
GITOPS_TRACKING_REQUIREMENTenvironment variable to enforce filtering. - Supported values:
- label: Only include NetworkPolicies with the
app.kubernetes.io/instancelabel. - annotation: Only include NetworkPolicies with the
argocd.argoproj.io/tracking-idannotation. - label+annotation: Both the label and the annotation must be present.
- label: Only include NetworkPolicies with the
- Policies that do not meet the configured requirement are excluded from processing.
- Introduces the
-
Advanced Filtering Capabilities:
- Optional query parameters (
namespaceandname) allow filtering NetworkPolicies by a specific namespace or policy name. - When no filter is provided, the application bypasses unnecessary looping for efficiency.
- Optional query parameters (
-
Graceful Shutdown:
- Implements signal handling (SIGINT/SIGTERM) to enable a graceful shutdown.
- Ensures that in-flight requests are completed before termination, supporting seamless rollouts.
-
Kubernetes In-Cluster Configuration:
- Utilizes the in-cluster configuration, making deployment in Kubernetes straightforward and robust.
Bug Fixes & Improvements
-
CIDR Containment Logic:
Updated helper functions to accurately determine if a NetworkPolicy CIDR (typically /32) is fully contained within a user-provided CIDR range. -
Performance Optimization:
Skips the filtering loop when no namespace or name filter is specified, reducing overhead.
Known Limitations
- Full support is provided for IPv4; IPv6 support is experimental.
- Advanced filtering and reporting features are planned for future releases.
Full Changelog: https://github.com/TwistedSolutions/netpoint/commits/v1.0.0