Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SDN-5007: introducing bfpapplication object #6

Merged
merged 16 commits into from
Jun 20, 2024

Commits on Jun 18, 2024

  1. WIP: introducing bfpapplication object

    Signed-off-by: Mohamed Mahmoud <mmahmoud@redhat.com>
    msherif1234 authored and anfredette committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    f002f69 View commit details
    Browse the repository at this point in the history
  2. add application object controllers

    Signed-off-by: Mohamed Mahmoud <mmahmoud@redhat.com>
    msherif1234 authored and anfredette committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    98e6266 View commit details
    Browse the repository at this point in the history
  3. Additional changes for BpfApplication object

    - Ran make generate for latest BpfApplication CRD change
    - Handle setting owner and object type
    - If reconcile is complete for one program/object, continue with the
      next one
    - Added unit test for fentry
    
    TODO:
    - Add BpfApplication tests for all program types
    - Add sample BpfApplication yaml and test on kubernetes
    - See if there's any way to reduce code duplication in application-program.go
    
    Signed-off-by: Andre Fredette <afredette@redhat.com>
    anfredette committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    9d8badc View commit details
    Browse the repository at this point in the history
  4. Set up k8s permissions for bpfapplication

    Signed-off-by: Andre Fredette <afredette@redhat.com>
    anfredette committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    1cbf1e3 View commit details
    Browse the repository at this point in the history
  5. Fix bundle manifest check error

    Signed-off-by: Andre Fredette <afredette@redhat.com>
    anfredette committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    d3d497d View commit details
    Browse the repository at this point in the history
  6. Additional changes for BpfApplication object

    - Ran make generate for latest BpfApplication CRD change
    - Handle setting owner and object type
    - If reconcile is complete for one program/object, continue with the
      next one
    - Added unit test for fentry
    
    TODO:
    - Add BpfApplication tests for all program types
    - Add sample BpfApplication yaml and test on kubernetes
    - See if there's any way to reduce code duplication in application-program.go
    
    Signed-off-by: Andre Fredette <afredette@redhat.com>
    anfredette committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    e02e408 View commit details
    Browse the repository at this point in the history
  7. Additional changes for BpfApplication object

    - Handle setting owner and object type
    - If reconcile is complete with one program/object, continue with the
      next one
    
    These changes have not been tested.  Still need to write a unit test
    
    Signed-off-by: Andre Fredette <afredette@redhat.com>
    anfredette committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    96816e8 View commit details
    Browse the repository at this point in the history
  8. Add BpfParentProgram label to BpfPrograms

    When reconciling a *Program object created by an ApplicationProgram,
    getExistingBpfPrograms needs to return just the programs for the given
    *Program.  However, the current implementation uses the BpfParentProgram
    label, so that gets all the BpfPrograms created for the
    ApplicationProgram, which messes up the reconcile logic.
    
    This commit adds another label called BpfParentProgram which allows us
    to get just the BpfPrograms for the current *Program regardless of
    whether they were created for a single *Program CRD or by a program
    entry for an ApplicationProgram CRD.
    
    Signed-off-by: Andre Fredette <afredette@redhat.com>
    anfredette committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    e44d4f4 View commit details
    Browse the repository at this point in the history
  9. Add AppProgram agent controller unit-test and sample config

    Signed-off-by: Mohamed Mahmoud <mmahmoud@redhat.com>
    msherif1234 authored and anfredette committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    b0eda06 View commit details
    Browse the repository at this point in the history
  10. BpfApplication operator controller needs to watch BpfPrograms it owns

    Signed-off-by: Andre Fredette <afredette@redhat.com>
    anfredette committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    e8d57d1 View commit details
    Browse the repository at this point in the history
  11. Display status column for BpfApplications

    Signed-off-by: Andre Fredette <afredette@redhat.com>
    anfredette committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    67b5f6a View commit details
    Browse the repository at this point in the history
  12. Fixes to get BpfApplication delete working

    Two changes were needed:
    - The BpfPrograms needed the internal.BpfApplicationControllerFinalizer
      instead of the *Program finalizer.
    - GetDeletionTimestamp() needs to be called on the Owner.  In this case,
      the owner is the BpfApplication.
    
    Also moved SetupWithManager() in the BpfApplication operator controller
    so that it was in the same order as the other controllers.  This made a
    diff easier to read.
    
    Signed-off-by: Andre Fredette <afredette@redhat.com>
    anfredette committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    e5ee05b View commit details
    Browse the repository at this point in the history
  13. update samples config to include more ebpf program types

    Signed-off-by: Mohamed Mahmoud <mmahmoud@redhat.com>
    msherif1234 authored and anfredette committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    fd95631 View commit details
    Browse the repository at this point in the history
  14. address review comments

    Signed-off-by: Mohamed Mahmoud <mmahmoud@redhat.com>
    msherif1234 authored and anfredette committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    3f09cbf View commit details
    Browse the repository at this point in the history
  15. update readme with the new bpfapplication object

    Signed-off-by: Mohamed Mahmoud <mmahmoud@redhat.com>
    msherif1234 authored and anfredette committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    b5c665d View commit details
    Browse the repository at this point in the history

Commits on Jun 20, 2024

  1. Make BpfApplication BpfProgram names unique

    Adds the attach point to the name of the BpfApplication programs so that
    BpfPrograms created by multipl programs of the same type are unique.
    
    Also
    - Adds some helper functions for name generation
    - Fixed an indent issue with the BpfApplication sample yaml
    
    Signed-off-by: Andre Fredette <afredette@redhat.com>
    anfredette committed Jun 20, 2024
    Configuration menu
    Copy the full SHA
    5fc5db8 View commit details
    Browse the repository at this point in the history