UNPKG

@kinvolk/headlamp-plugin

Version:

The needed infrastructure for building Headlamp plugins.

36 lines (35 loc) 1.53 kB
/* * Copyright 2025 The Kubernetes Authors * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ export function isValidNamespaceFormat(namespace) { // We allow empty strings just because that's the default value in our case. if (!namespace) { return true; } // Validates that the namespace is a valid DNS-1123 label and returns a boolean. // https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-label-names const regex = new RegExp('^[a-z0-9]([-a-z0-9]*[a-z0-9])?$'); return regex.test(namespace); } export function isValidClusterNameFormat(name) { // We allow empty isValidClusterNameFormat just because that's the default value in our case. if (!name) { return true; } // Validates that the namespace is a valid DNS-1123 label and returns a boolean. // https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#dns-label-names const regex = new RegExp('^[a-z0-9]([-a-z0-9]*[a-z0-9])?$'); return regex.test(name); }