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

Add UPF-P4 SW component #56

Merged
merged 76 commits into from
Nov 12, 2024
Merged

Add UPF-P4 SW component #56

merged 76 commits into from
Nov 12, 2024

Conversation

rafagarciaUMA
Copy link
Contributor

Add UPF-P4 SW component from my 'upf_p4_sw' branch to 'develop' branch.

- Created initial component playbook structure with 4 stages:
  - Stage 1: Infrastructure as Code deployment
  - Stage 2: Component access preparation (TODO)
  - Stage 3: Configuration as Code preparation (TODO)
  - Stage 4: Results publication (TODO)

- Implemented Stage 1 with basic terraform workflow:
  - Loading environment variables
  - Preparing terraform working directory
  - Configuring VM resources
  - Executing terraform apply
- Added new input parameters for UPF configuration
- Enhanced metadata dictionary and output handling
- Improved documentation and result templates
- Cleaned up unused code and comments
- Updated changelog for v0.3.0 release
- Add validation for required Terraform output variables
- Configure Harbor token from site available components
- Remove commented disk configuration code
Enables publishing of id, ips, enb_ipv4_n3 and dn_ipv4_n6 variables to TNLCM
…ferences

- Comment out base64 encoding for ID, IPs and network addresses
- Update template to reference variables directly without output prefix
- Fix metadata references to use specific component variables
- Add proxy IP configuration (10.11.3.1) required for UERANSIM component
- Add detailed instructions for accessing container logs
- Document debug mode configuration in docker-compose
- Update README with step-by-step logging guide
@alvarocurt
Copy link
Member

Thank you so much Rafa.
Before merging, could you please remove the (autogenerated) files inside variables?
Those are just placeholder files from the dummy component to show where variables are loaded during the deployment, but have no real purpose in a functional component's code
Besides that, I think everything looks nice.

@alvarocurt
Copy link
Member

Additional comments:

  • I've seen some unencripted certificates published as blank files. Is that intentional? Isn't that a huge security flaw?
  • I would suggest adding the IPs and VM ID to the TNLCM callback. Process is really simple, you already load those variables during the main ansible playbook execution.
  • You have 2 extra task checking if the terraform outputs are correctly created. I never had to do that. Did you encounter any problems with that during development? I'm actually interested, in case those checks should be added to more components

Copy link
Member

@alvarocurt alvarocurt left a comment

Choose a reason for hiding this comment

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

Review on comments

- Clean up autogenerated files from variables directory
- Add VM ID and IP information to component_playbook.yaml metadata
- Remove certificates, private keys and configuration files containing unnecessary data
@rafagarciaUMA
Copy link
Contributor Author

Thank you so much Alvaro for your thorough review! I've addressed all your comments:

  • I've removed all the autogenerated files from the variables directory
  • I've deleted the freeDiameter certificates. They were accidentally left over from open5gs 4G setup and are not needed for this component.
  • I've added the IPs and VM ID to the TNLCM callback as suggested.
  • Regarding the two extra tasks that check terraform outputs: I personally haven't experienced any issues with outputs in this component, but I had some problems with my other P4 telemetry component where I have different outputs. These tasks aren't strictly necessary really. I added them after reading about it as a "best practice" (thanks ChatGPT 😅)

@alvarocurt alvarocurt merged commit 15ef5e4 into develop Nov 12, 2024
@alvarocurt alvarocurt deleted the upf_p4_sw branch November 12, 2024 09:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants