mirror of
https://github.com/apache/nifi.git
synced 2025-03-03 16:09:19 +00:00
NIFI-13454 Renamed FileParameterProvider to KubernetesSecretParameterProvider
This closes #9008 Signed-off-by: David Handermann <exceptionfactory@apache.org>
This commit is contained in:
parent
5c9fb448a4
commit
b105b5bbef
@ -53,8 +53,10 @@ import java.util.concurrent.atomic.AtomicInteger;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Tags({"file"})
|
||||
@CapabilityDescription("Fetches parameters from files. Parameter groups are indicated by a set of directories, and files within the directories map to parameter names. " +
|
||||
"The content of the file becomes the parameter value.")
|
||||
@CapabilityDescription("Fetches parameters from files, in the format provided by Kubernetes mounted secrets. " +
|
||||
"Parameter groups are indicated by a set of directories, and files within the directories map to parameter names. " +
|
||||
"The content of the file becomes the parameter value. Since Kubernetes mounted Secrets are base64-encoded, the " +
|
||||
"parameter provider defaults to Base64-decoding the value of the parameter from the file.")
|
||||
|
||||
@Restricted(
|
||||
restrictions = {
|
||||
@ -63,7 +65,7 @@ import java.util.stream.Collectors;
|
||||
explanation = "Provides operator the ability to read from any file that NiFi has access to.")
|
||||
}
|
||||
)
|
||||
public class FileParameterProvider extends AbstractParameterProvider implements VerifiableParameterProvider {
|
||||
public class KubernetesSecretParameterProvider extends AbstractParameterProvider implements VerifiableParameterProvider {
|
||||
private static final int MAX_SIZE_LIMIT = 8096;
|
||||
private static final Charset DEFAULT_CHARSET = StandardCharsets.UTF_8;
|
||||
|
@ -13,6 +13,6 @@
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
org.apache.nifi.parameter.EnvironmentVariableParameterProvider
|
||||
org.apache.nifi.parameter.FileParameterProvider
|
||||
org.apache.nifi.parameter.KubernetesSecretParameterProvider
|
||||
org.apache.nifi.parameter.DatabaseParameterProvider
|
||||
org.apache.nifi.parameter.OnePasswordParameterProvider
|
||||
|
@ -16,23 +16,24 @@
|
||||
-->
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<title>FileParameterProvider</title>
|
||||
<title>KubernetesSecretParameterProvider</title>
|
||||
|
||||
<link rel="stylesheet" href="../../../../../css/component-usage.css" type="text/css" />
|
||||
</head>
|
||||
<body>
|
||||
<h3>Deriving Parameters from Files</h3>
|
||||
<h3>Deriving Parameters from mounted Kubernetes Secret files</h3>
|
||||
|
||||
<p>
|
||||
The FileParameterProvider maps a directory to a parameter group named after the directory, and the files
|
||||
The KubernetesSecretParameterProvider maps a directory to a parameter group named after the directory, and the files
|
||||
within the directory to parameters. Each file's name is mapped to a parameter, and the content of the file
|
||||
becomes the value. Hidden files and nested directories are ignored.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
While this provider can be useful in a range of cases, it particularly matches the mounted volume secret
|
||||
structure in Kubernetes. A full discussion of Kubernetes secrets is beyond the scope of this document,
|
||||
but a brief overview can illustrate how these secrets can be mapped to parameter groups.
|
||||
While this provider can be useful in a range of cases since it simply reads parameter values from local files, it
|
||||
particularly matches the mounted volume secret structure in Kubernetes. A full discussion of Kubernetes secrets
|
||||
is beyond the scope of this document, but a brief overview can illustrate how these secrets can be mapped to
|
||||
parameter groups.
|
||||
</p>
|
||||
|
||||
<h3>Kubernetes Mounted Secrets Example</h3>
|
||||
@ -82,7 +83,7 @@ sys.access.key sys.admin.password sys.admin.username
|
||||
|
||||
<p>
|
||||
Therefore, to map this secret to a parameter group that will populate a Parameter Context named 'system-credentials',
|
||||
you should simply provide the following configuration to the FileParameterProvider:
|
||||
you should simply provide the following configuration to the KubernetesSecretParameterProvider:
|
||||
|
||||
<ul>
|
||||
<li><b>Parameter Group Directories</b> - /etc/secrets/system-credentials</li>
|
@ -43,8 +43,8 @@ describe('EditParameterProvider', () => {
|
||||
bulletins: [],
|
||||
component: {
|
||||
id: '369487d7-018d-1000-817a-1d8d9a8f4a91',
|
||||
name: 'Group 1 - FileParameterProvider',
|
||||
type: 'org.apache.nifi.parameter.FileParameterProvider',
|
||||
name: 'Group 1 - KubernetesSecretParameterProvider',
|
||||
type: 'org.apache.nifi.parameter.KubernetesSecretParameterProvider',
|
||||
bundle: {
|
||||
group: 'org.apache.nifi',
|
||||
artifact: 'nifi-standard-nar',
|
||||
|
@ -45,8 +45,8 @@ describe('FetchParameterProviderParameters', () => {
|
||||
bulletins: [],
|
||||
component: {
|
||||
id: '369487d7-018d-1000-817a-1d8d9a8f4a91',
|
||||
name: 'Group 1 - FileParameterProvider',
|
||||
type: 'org.apache.nifi.parameter.FileParameterProvider',
|
||||
name: 'Group 1 - KubernetesSecretParameterProvider',
|
||||
type: 'org.apache.nifi.parameter.KubernetesSecretParameterProvider',
|
||||
bundle: {
|
||||
group: 'org.apache.nifi',
|
||||
artifact: 'nifi-standard-nar',
|
||||
|
Loading…
x
Reference in New Issue
Block a user