argo-cd
1import * as React from 'react';
2import {selectPostfix} from '../utils';
3
4import './readiness-gates-not-passed-warning.scss';
5
6export interface ReadinessGatesNotPassedWarningProps {
7readinessGatesState: {
8nonExistingConditions: string[];
9notPassedConditions: string[];
10};
11}
12
13export const ReadinessGatesNotPassedWarning = ({readinessGatesState}: ReadinessGatesNotPassedWarningProps) => {
14if (readinessGatesState.notPassedConditions.length > 0 || readinessGatesState.nonExistingConditions.length > 0) {
15return (
16<div className='white-box white-box__readiness-gates-alert'>
17<h5>Readiness Gates Not Passing: </h5>
18<ul>
19{readinessGatesState.notPassedConditions.length > 0 && (
20<li>
21The status of pod readiness gate{selectPostfix(readinessGatesState.notPassedConditions, '', 's')}{' '}
22{readinessGatesState.notPassedConditions
23.map(t => `"${t}"`)
24.join(', ')
25.trim()}{' '}
26{selectPostfix(readinessGatesState.notPassedConditions, 'is', 'are')} False.
27</li>
28)}
29{readinessGatesState.nonExistingConditions.length > 0 && (
30<li>
31Corresponding condition{selectPostfix(readinessGatesState.nonExistingConditions, '', 's')} of pod readiness gate{' '}
32{readinessGatesState.nonExistingConditions
33.map(t => `"${t}"`)
34.join(', ')
35.trim()}{' '}
36do{selectPostfix(readinessGatesState.nonExistingConditions, 'es', '')} not exist.
37</li>
38)}
39</ul>
40</div>
41);
42}
43return null;
44};
45