Skip to content

Improved configuration validation for running configuration changes #7379

@shaun-nx

Description

@shaun-nx

Overview

As a user of NGINX Ingress Controller, I would like have the confidence that NGINX itself will never be given an invalid configuration so that I can always be confident that my applications will serve traffic undisrupted

Functional Requirements

  • Ensure all configuration is pre-validated before it is written to disk and NGINX is reloaded.

Example: In the presence of an invalid Snippet, either in an Ingress Resource or a VirtualServer resource, ensure the snippet is validated to prevent this invalid configuration from being applied to the NGINX pod

Definition of Done

Development

  • Unit tests are written to cover functionality delivered in the story.
  • Make sure that the unit test passes before creating a pull request.
  • Make sure that the test coverage stays optimal.
  • Run make lint locally before creating a PR.

Testing

  • Automated tests are written as part of the story.
  • Run “make lint-python“ from root
  • Acceptance criteria are met.
  • Stories are demonstrated to the team.
  • Product Manager accepts the story as done.
  • If a feature requires changes/extensions of the Helm chart, those shall be done as part of the story.

Release Notes & Documentation

  • PR is labeled appropriately so they display in GitHub release notes.
  • Create/update documentation related to the user story.
  • Create/update the example in our codebase when applicable.

Sub-issues

Metadata

Metadata

Assignees

No one assigned

    Labels

    proposalAn issue that proposes a feature requestready for refinementAn issue that was triaged and it is ready to be refined

    Type

    Projects

    Status

    Prioritized backlog

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions