Open
Conversation
88b8d73 to
73e9c0c
Compare
Added a new module, `acs-opcua-server-edge`, for exposing UNS topics as OPC UA tags. This includes associated Helm charts, Docker configuration, and support for MQTT and OPC UA protocols.
…ents Added support for configurable security policies (`SecurityPolicy.Basic256Sha256`) and modes, with conditional anonymous access. Extended `DataStore` with `EventEmitter` capabilities to emit change events. Updated OPC UA server to reflect real-time data changes via data store notifications.
Refactored the OPC UA server to dynamically create nodes for new topics from the data store. Replaced static topic configuration with real-time folder hierarchy and variable creation using MQTT wildcard subscriptions. Enhanced `DataStore` with a `topics` method to support this behavior.
Introduced optional TLS configuration for MQTT connections, including CA file support. Updated MQTT client to distinguish between `mqtt` and `mqtts` protocols. Enhanced server start logs for improved clarity regarding subscribed MQTT topic patterns.
Introduced a new role `OPCUAServer` and corresponding Helm chart configuration. Enhanced setup to include OPC UA Server integration with associated group, subclass, and authentication settings.
…etails Expanded README to include Helm chart deployment instructions, required and optional configuration values, automatic variables, and value merge behavior for OPC UA Server. Clarified current features and limitations.
Updated Helm chart to support configurable `registry`, `tag`, and `pullPolicy` values for the OPC UA Server image.
Updated OPC UA server initialization to use separate certificate managers for server and user certificates, ensuring both operate within writable `/data` directories to prevent issues in read-only container environments.
2ef1744 to
51d5ff1
Compare
…server Replaced manual MQTT connection setup with `ServiceClient` for broker discovery, authentication, and improved configuration management. Updated Dockerfile, Helm charts, and related configuration files to reflect these changes. Removed legacy MQTT credentials and configuration.
Replaced file-based OPC UA username/password configuration with environment variables. Updated Docker Compose, Helm charts, and deployment templates to support the new approach. Removed legacy credential volumes and updated secret handling for improved deployment flexibility.
Renamed secret name to include `.password` suffix for clarity. Removed obsolete `local` MQTT configuration from README and documentation.
…entries Separated `opcua-server-opcua-creds` into distinct username and password secrets in deployment and Helm templates for improved clarity and management. Updated variable references accordingly.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR introduces
acs-opcua-server-edge, a new edge helm chart that exposes UNS topics as OPC UA tags for consumption by OPC UA clients (e.g. SCADA, HMI systems) at the edge.What's included
New
acs-opcua-server-edgeedge helm chartnode-opcuathat subscribes to MQTT topics and surfaces them as OPC UA variable nodesBasic256Sha256+SignAndEncryptfor secure username/password authentication, withSecurityPolicy.Nonekept available for anonymous browsing; anonymous access is configurablemqtts://) with a configurable CA certificate, auto-detected from port 8883Helm chart (
edge-helm-charts/charts/opcua-server)/datavolume (fixes node-opcua defaulting to~/.configwhich is read-only in the container)%%REGISTRY%%/%%TAG%%/%%PULLPOLICY%%placeholdersACS service-setup integration
Local.Role.OPCUAServer(withAuth.Class.EdgeService+UNS.Group.Readermembership) andLocal.Chart.OPCUAServerin the helm dumplocal-uuids.jsCI
acs-opcua-server-edgeadded to the publish workflow for Docker image buildsConfiguration highlights