Skip to content

Conversation

tataruty
Copy link
Contributor

@tataruty tataruty commented Sep 12, 2025

Proposed changes

Problem:

As a potential NGINX Plus user,
I want to have a grace period for my initial licensing report,
So that I can validate NGF as a PoC without restriction.

NGF currently sets enforce_initial_report off; for NGINX Plus data planes when initially installing, but once the first configuration is sent from the control plane to the data plane, this directive is removed (defaulting to on). Users should be able to set this field themselves for other circumstances, like PoC testing or exemptions.

For reference: https://nginx.org/en/docs/ngx_mgmt_module.html#enforce_initial_report

Solution:
add a CLI argument to the controller to enable or disable the initial report enforcement
set the field in the nginx config based on the user input
the existing bootstrap config that sets this field to off should be left as-is to ensure startup succeeds
update the cli flag document
add helm chart flag to the existing nginx plus usage section

Testing:

  • Added cli flag to unit test
  • test helm installation:
  1. install with command: make install-ngf-local-build-with-plus HELM_PARAMETERS="--set nginx.usage.enforceInitialReport=false"
    result:
image
  1. Install with command: make install-ngf-local-build-with-plus HELM_PARAMETERS="--set nginx.usage.enforceInitialReport=true"
    result:
image
  1. Install with command: make install-ngf-local-build-with-plus
    result:
image

Please focus on (optional):

Closes #3790

Checklist

Before creating a PR, run through this checklist and mark each as complete.

  • I have read the CONTRIBUTING doc
  • I have added tests that prove my fix is effective or that my feature works
  • I have checked that all unit tests pass after adding my changes
  • I have updated necessary documentation
  • I have rebased my branch onto main
  • I will ensure my PR is targeting the main branch and pulling from my branch from my own fork

Release notes

If this PR introduces a change that affects users and needs to be mentioned in the release notes,
please add a brief note that summarizes the change.

NONE

@github-actions github-actions bot added documentation Improvements or additions to documentation enhancement New feature or request helm-chart Relates to helm chart labels Sep 12, 2025
Copy link

codecov bot commented Sep 12, 2025

Codecov Report

❌ Patch coverage is 95.94595% with 3 lines in your changes missing coverage. Please review.
✅ Project coverage is 86.86%. Comparing base (84a517f) to head (dd95cfa).
⚠️ Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
cmd/gateway/commands.go 95.65% 3 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #3899      +/-   ##
==========================================
+ Coverage   86.82%   86.86%   +0.04%     
==========================================
  Files         128      128              
  Lines       16503    16519      +16     
  Branches       62       62              
==========================================
+ Hits        14329    14350      +21     
+ Misses       1996     1990       -6     
- Partials      178      179       +1     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@tataruty tataruty changed the title Add EnforceInitialReport variable everywhere NGINX Plus: support enforce_initial_report field Sep 12, 2025
@tataruty tataruty force-pushed the enhancement/enforce_initial_report_for_plus branch 3 times, most recently from afbabc2 to 2fa4641 Compare September 16, 2025 19:00
@tataruty tataruty marked this pull request as ready for review September 16, 2025 19:20
@tataruty tataruty requested a review from a team as a code owner September 16, 2025 19:20
@github-project-automation github-project-automation bot moved this from 🆕 New to 🏗 In Progress in NGINX Gateway Fabric Sep 16, 2025
@tataruty tataruty force-pushed the enhancement/enforce_initial_report_for_plus branch from 2fa4641 to be6b05d Compare September 17, 2025 08:40
Copy link
Contributor

@ciarams87 ciarams87 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just one small comment, otherwise looks good!

Copy link
Collaborator

@sjberman sjberman left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work!

@tataruty tataruty merged commit 8bd27a3 into main Sep 17, 2025
51 checks passed
@github-project-automation github-project-automation bot moved this from 🏗 In Progress to ✅ Done in NGINX Gateway Fabric Sep 17, 2025
@tataruty tataruty deleted the enhancement/enforce_initial_report_for_plus branch September 17, 2025 14:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation enhancement New feature or request helm-chart Relates to helm chart

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

NGINX Plus: Allow for configuring enforce_initial_report field

3 participants