Merge STF_685_MEC_IPE: Integration of tinyIoT, meepctl improvements, and Ansible setup fixes
This Merge Request merges STF_685_MEC_IPE into STF_685. It brings in key changes including tinyIoT (oneM2M Middle/Infrastructure Node CSE) integration, meepctl feature additions, Docker/K8s setup patches, and local Ansible environment fixes.
Summary of Main Changes Included:
1. tinyIoT Integration (MEC & IoT Platform Support)
- MEC033 & IoT Callback Support: Resolved callback failure issues for MEC033 registered IoT platforms.
- tinyIoT Middle Node (MN) CSE: Added dynamic lookup logic in the entrypoint script to resolve the remote IN-CSE service host dynamically.
- Background Tickers: Optimized refresh interval times for
meep-iotandmeep-sssfrom higher frequencies to a 60-second background refresh cycle. - MECSupport Plugin: Integrated custom
MECSupportplugins for oneM2M node registrations with the MEC Sandbox services.
2. meepctl & Local Automation Improvements
- Individual Dependency Control: Added features to
meepctlto allow individual deployments and deletion of dependencies (e.g.meepctl deploy/delete <dep_name>). - Force-Deploy Cooldown: Added deployment cooldown safety triggers for
meepctl force-deploy. - Tilt Integration: Added and patched Kubernetes
Tiltfileassets for sandbox automation and local hot-reloading development workflows.
3. Docker & Security Context Patches
- Docker Registry UID/GID Mapping: Patched
meepctlto dynamically inject the configuration's UID/GID variables into themeep-docker-registryStatefulSet securityContext. - DAI API Container fix: Created an empty
onboardedappdirectory inside the Docker build workspace to prevent build failures for the DAI API service container.
4. Ansible Setup Fixes (Issue #30 (closed))
- Ingress & OAuth: Updated matching regular expressions to support both
mec-platform.etsi.organdtry-mec.etsi.orgredirect URIs. - Docker Downgrades: Unpinned hardcoded version tags from Docker CE installations to avoid downgrade blockages on hosts with newer packages.
- CoreDNS Resolvers: Patched the cluster's Corefile to forward to public resolvers (
8.8.8.8 1.1.1.1), resolving external query resolution loops. - Go Compiler Upgrade: Updated Go environment to
1.25.0, bypassing mixed standard-library compile panics. .meepdirectory permissions: Ensured directories are pre-created on the host using the configured{{ target_user }}ownership prior to Kubernetes volume mounts, preventing permission conflicts when Kubernetes initializes missing hostPath mounts asroot.