Skip to content
This repository was archived by the owner on Jan 26, 2026. It is now read-only.
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
61 changes: 61 additions & 0 deletions .fleetControl/agentControl/agent-schema-for-agent-control.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
namespace: newrelic
name: com.newrelic.apm_java
version: 0.1.0
variables:
k8s:
version:
description: "Java Agent init container version"
type: string
default: "latest"
required: false
podLabelSelector:
description: "Pod label selector"
type: yaml
default: { }
required: false
namespaceLabelSelector:
description: "Namespace label selector"
type: yaml
default: { }
required: false
env:
description: "environment variables to pass to Java agent"
type: yaml
default: [ ]
required: false
health_env:
description: "environment variables to pass to health sidecar"
type: yaml
default: [ ]
required: false
health_version:
description: "health sidecar image version"
type: string
default: "latest"
required: false
deployment:
k8s:
health:
interval: 30s
initial_delay: 30s
objects:
instrumentation:
apiVersion: newrelic.com/v1beta1
kind: Instrumentation
metadata:
name: ${nr-sub:agent_id}
# APM CRs should be installed in "nr-ac:namespace"
# Due to a limitation in the k8s-agents-operator, Instrumentation CRs must be installed in the same namespace as the operator.
# Hence, the namespace is set to "nr-ac:namespace_agents".
# Reference: https://github.com/newrelic/k8s-agents-operator/blob/92c19208864f051f03f457ee04b772fca5042162/api/v1beta1/instrumentation_webhook.go#L110C27-L110C72
namespace: ${nr-ac:namespace_agents}
spec:
agent:
language: java
image: newrelic/newrelic-java-init:${nr-var:version}
env: ${nr-var:env}
healthAgent:
image: newrelic/k8s-apm-agent-health-sidecar:${nr-var:health_version}
env: ${nr-var:health_env}
podLabelSelector: ${nr-var:podLabelSelector}
namespaceLabelSelector: ${nr-var:namespaceLabelSelector}
17 changes: 17 additions & 0 deletions .fleetControl/configurationDefinitions.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
configurationDefinitions:
- name: New relic java agent config for k8s
slug: java-config # How is this slug used, can agents pick whatever they want or does this need to match something in AC?
platform: kubernetes # would this just be k8s vs on-host or will there be a larger set of agreed-upon platform options
description: java agent configuration, provided by the user
type: java-config # How is this different from the slug and what is it used for?
format: yml # the format of the agent config file
version: 1.0.0 # this is the schema version
schema: ./schemas/java-config.json
- name: New relic java agent config for host
slug: java-config
platform: host
description: java agent configuration, provided by the user
type: java-config
format: yml
version: 1.0.0
schema: ./schemas/java-config.json
Loading