UNPKG

@roadiehq/backstage-plugin-argo-cd

Version:
24 lines (22 loc) 1.35 kB
const ARGOCD_ANNOTATION_APP_NAME = "argocd/app-name"; const ARGOCD_ANNOTATION_APP_SELECTOR = "argocd/app-selector"; const ARGOCD_ANNOTATION_APP_NAMESPACE = "argocd/app-namespace"; const ARGOCD_ANNOTATION_PROJECT_NAME = "argocd/project-name"; const ARGOCD_ANNOTATION_PROXY_URL = "argocd/proxy-url"; const useArgoCDAppData = ({ entity }) => { const appName = entity?.metadata.annotations?.[ARGOCD_ANNOTATION_APP_NAME] ?? ""; const appSelector = entity?.metadata.annotations?.[ARGOCD_ANNOTATION_APP_SELECTOR] ?? ""; const appNamespace = entity?.metadata.annotations?.[ARGOCD_ANNOTATION_APP_NAMESPACE]; const projectName = entity?.metadata.annotations?.[ARGOCD_ANNOTATION_PROJECT_NAME]; const url = entity?.metadata.annotations?.[ARGOCD_ANNOTATION_PROXY_URL] ?? "/argocd/api"; if (!(appName || appSelector || projectName)) { throw new Error("'argocd' annotation is missing"); } else if (appName && (appSelector || projectName)) { throw new Error( "Cannot provide both 'argocd/app-name' and 'argocd-app' annotations" ); } return { url, appName, appSelector, appNamespace, projectName }; }; export { ARGOCD_ANNOTATION_APP_NAME, ARGOCD_ANNOTATION_APP_NAMESPACE, ARGOCD_ANNOTATION_APP_SELECTOR, ARGOCD_ANNOTATION_PROJECT_NAME, ARGOCD_ANNOTATION_PROXY_URL, useArgoCDAppData }; //# sourceMappingURL=useArgoCDAppData.esm.js.map