feat(ui): support custom icons (#20864)

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
This commit is contained in:
Michael Crenshaw
2025-10-02 11:42:35 -04:00
committed by GitHub
parent 1b973b81ef
commit 90b3e856a6
29 changed files with 244 additions and 12 deletions

View File

@@ -261,8 +261,12 @@ clidocsgen:
actionsdocsgen:
hack/generate-actions-list.sh
.PHONY: resourceiconsgen
resourceiconsgen:
hack/generate-icons-typescript.sh
.PHONY: codegen-local
codegen-local: mod-vendor-local mockgen gogen protogen clientgen openapigen clidocsgen actionsdocsgen manifests-local notification-docs notification-catalog
codegen-local: mod-vendor-local mockgen gogen protogen clientgen openapigen clidocsgen actionsdocsgen resourceiconsgen manifests-local notification-docs notification-catalog
rm -rf vendor/
.PHONY: codegen-local-fast

View File

@@ -0,0 +1,18 @@
The Argo CD UI displays icons for various Kubernetes resource types to help users quickly identify them. Argo CD
includes a set of built-in icons for common resource types.
You can contribute additional icons for custom resource types by following these steps:
1. Ensure the license is compatible with Apache 2.0.
2. Add the icon file to the `ui/src/assets/images/resources/<group>/icon.svg` path in the Argo CD repository.
3. Modify the SVG to use the correct color, `#8fa4b1`.
4. Run `make resourceiconsgen` to update the generated typescript file that lists all available icons.
5. Create a pull request to the Argo CD repository with your changes.
`<group>` is the API group of the custom resource. For example, if you are adding an icon for a custom resource with the
API group `example.com`, you would place the icon at `ui/src/assets/images/resources/example.com/icon.svg`.
If you want the same icon to apply to resources in multiple API groups with the same suffix, you can create a directory
prefixed with an underscore. The underscore will be interpreted as a wildcard. For example, to apply the same icon to
resources in the `example.com` and `another.example.com` API groups, you would place the icon at
`ui/src/assets/images/resources/_.example.com/icon.svg`.

View File

@@ -0,0 +1,15 @@
#!/usr/bin/env bash
# Users may configure custom resource icons in resource_customizations. This script generates a list of those icons so
# that the UI knows which icons are available.
{
echo "// Code generated by hack/generate-icons-typescript.sh; DO NOT EDIT.";
echo "/* eslint-disable prettier/prettier */";
echo "";
echo "// resourceIconGroups is a map of resource kind globs to whether or not a custom icon exists for that kind.";
echo "// Each glob corresponds to a directory under ui/src/assets/images/resources, where any asterisk is represented as an underscore (_).";
echo "export const resourceIconGroups = {";
find ui/src/assets/images/resources -name icon.svg | sort | sed "s/ui\/src\/assets\/images\/resources\// '/" | sed "s/\/icon.svg/': true,/" | sed 's/_/*/';
echo "};";
} > ui/src/app/applications/components/resource-customizations.ts

View File

@@ -229,6 +229,7 @@ nav:
- developer-guide/extensions/proxy-extensions.md
- developer-guide/faq.md
- developer-guide/tilt.md
- developer-guide/custom-resource-icons.md
- faq.md
- security_considerations.md
- Support: SUPPORT.md

View File

@@ -175,7 +175,7 @@ export const ApplicationResourceList = (props: ApplicationResourceListProps) =>
<div className='row'>
<div className='columns small-1 xxxlarge-1'>
<div className='application-details__resource-icon'>
<ResourceIcon kind={res.kind} />
<ResourceIcon group={res.group} kind={res.kind} />
<br />
<div>{ResourceLabel({kind: res.kind})}</div>
</div>

View File

@@ -126,7 +126,7 @@ export function PodView(props: PodViewProps) {
style={group.kind === 'node' ? {} : {cursor: 'pointer'}}>
<div style={{display: 'flex', alignItems: 'center'}}>
<div style={{marginRight: '10px'}}>
<ResourceIcon kind={group.kind || 'Unknown'} />
<ResourceIcon group={group.group} kind={group.kind || 'Unknown'} />
<br />
{<div style={{textAlign: 'center'}}>{ResourceLabel({kind: group.kind})}</div>}
</div>

View File

@@ -284,7 +284,7 @@ function renderGroupedNodes(props: ApplicationResourceTreeProps, node: {count: n
<React.Fragment>
<div className='application-resource-tree__node' style={{left: node.x, top: node.y, width: node.width, height: node.height}}>
<div className='application-resource-tree__node-kind-icon'>
<ResourceIcon kind={node.kind} />
<ResourceIcon group={node.group} kind={node.kind} />
<br />
<div className='application-resource-tree__node-kind'>{ResourceLabel({kind: node.kind})}</div>
</div>
@@ -462,7 +462,7 @@ function renderPodGroup(props: ApplicationResourceTreeProps, id: string, node: R
className={classNames('application-resource-tree__node-kind-icon', {
'application-resource-tree__node-kind-icon--big': rootNode
})}>
<ResourceIcon kind={node.kind || 'Unknown'} />
<ResourceIcon group={node.group} kind={node.kind || 'Unknown'} />
<br />
{!rootNode && <div className='application-resource-tree__node-kind'>{ResourceLabel({kind: node.kind})}</div>}
</div>
@@ -746,7 +746,7 @@ function renderResourceNode(props: ApplicationResourceTreeProps, id: string, nod
className={classNames('application-resource-tree__node-kind-icon', {
'application-resource-tree__node-kind-icon--big': rootNode
})}>
<ResourceIcon kind={node.kind} />
<ResourceIcon group={node.group} kind={node.kind} />
<br />
{!rootNode && <div className='application-resource-tree__node-kind'>{ResourceLabel({kind: node.kind})}</div>}
</div>

View File

@@ -0,0 +1,26 @@
// Code generated by hack/generate-icons-typescript.sh; DO NOT EDIT.
/* eslint-disable prettier/prettier */
// resourceIconGroups is a map of resource kind globs to whether or not a custom icon exists for that kind.
// Each glob corresponds to a directory under ui/src/assets/images/resources, where any asterisk is represented as an underscore (_).
export const resourceIconGroups = {
'*.crossplane.io': true,
'*.fluxcd.io': true,
'*.knative.dev': true,
'cassandra.rook.io': true,
'cert-manager.io': true,
'core.spinkube.dev': true,
'external-secrets.io': true,
'flagger.app': true,
'install.istio.io': true,
'jaegertracing.io': true,
'k8s.keycloak.org': true,
'kafka.strimzi.io': true,
'keda.sh': true,
'kubevirt.io': true,
'kyverno.io': true,
'opentelemetry.io': true,
'projectcontour.io': true,
'work.karmada.io': true,
'zookeeper.pravega.io': true,
};

View File

@@ -291,7 +291,7 @@ export const ResourceDetails = (props: ResourceDetailsProps) => {
<React.Fragment>
<div className='resource-details__header'>
<div style={{display: 'flex', flexDirection: 'column', marginRight: '15px', alignItems: 'center', fontSize: '12px'}}>
<ResourceIcon kind={selectedNode.kind} />
<ResourceIcon group={selectedNode.group} kind={selectedNode.kind} />
{ResourceLabel({kind: selectedNode.kind})}
</div>
<h1>{selectedNode.name}</h1>

View File

@@ -1,17 +1,26 @@
import * as React from 'react';
import {resourceIcons} from './resources';
import {resourceIconGroups as resourceCustomizations} from './resource-customizations';
import * as minimatch from 'minimatch';
export const ResourceIcon = ({kind, customStyle}: {kind: string; customStyle?: React.CSSProperties}) => {
export const ResourceIcon = ({group, kind, customStyle}: {group: string; kind: string; customStyle?: React.CSSProperties}) => {
if (kind === 'node') {
return <img src={'assets/images/infrastructure_components/' + kind + '.svg'} alt={kind} style={{padding: '2px', width: '40px', height: '32px', ...customStyle}} />;
}
const i = resourceIcons.get(kind);
if (i !== undefined) {
return <img src={'assets/images/resources/' + i + '.svg'} alt={kind} style={{padding: '2px', width: '40px', height: '32px', ...customStyle}} />;
}
if (kind === 'Application') {
return <i title={kind} className={`icon argo-icon-application`} style={customStyle} />;
}
if (!group) {
const i = resourceIcons.get(kind);
if (i !== undefined) {
return <img src={'assets/images/resources/' + i + '.svg'} alt={kind} style={{padding: '2px', width: '40px', height: '32px', ...customStyle}} />;
}
} else {
const matchedGroup = matchGroupToResource(group);
if (matchedGroup) {
return <img src={`assets/images/resources/${matchedGroup}/icon.svg`} alt={kind} style={{paddingBottom: '2px', width: '40px', height: '32px', ...customStyle}} />;
}
}
const initials = kind.replace(/[a-z]/g, '');
const n = initials.length;
const style: React.CSSProperties = {
@@ -32,3 +41,22 @@ export const ResourceIcon = ({kind, customStyle}: {kind: string; customStyle?: R
</div>
);
};
// Utility function to match group with possible wildcards in resourceCustomizations. If found, returns the matched key
// as a path component (with '*' replaced by '_' if necessary), otherwise returns an empty string.
function matchGroupToResource(group: string): string {
// Check for an exact match
if (group in resourceCustomizations) {
return group;
}
// Loop over the map keys to find a match using minimatch
for (const key in resourceCustomizations) {
if (key.includes('*') && minimatch(group, key)) {
return key.replace(/\*/g, '_');
}
}
// Return an empty string if no match is found
return '';
}

View File

@@ -0,0 +1,5 @@
<!--
From: https://github.com/cncf/artwork/blob/3e6dbd6b9f3fd3b03e848c10a9921ccc5b5dabf7/projects/crossplane/icon/white/crossplane-icon-white.svg
Only modified to set the fill color to #8fa4b1.
-->
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 900 900"><defs><style>.cls-1{fill:#8fa4b1;}</style></defs><path class="cls-1" d="M471.22288,669.71789V790.45608c0,16.82419-10.9559,30.52608-24.40691,30.52608-13.46492,0-24.40692-13.68794-24.40692-30.52608V669.71789h48.81383M493.58075,647.36H400.03724V790.45608c0,29.21583,20.93612,52.88395,46.76478,52.88395,25.84261,0,46.76477-23.66812,46.76477-52.88395V647.36Z"/><path class="cls-1" d="M588.56,154.07853a163.28343,163.28343,0,0,1,25.82871,81.41674c.11153,2.53688.18121,5.12948.18121,7.70818,0,2.53688-.06968,5.17131-.19517,7.8615l-.05572,1.10116.05572,1.10116c.04186.64119.08363,1.26844.12549,1.90961.05573.8642.12549,1.68661.12549,2.17446v87.68922L323.736,635.93012a85.29961,85.29961,0,0,1-40.19959-72.39831V459.102L588.56,154.07853m2.2999-32.04539L262.50273,450.40425V563.5458c0,43.9631,27.01347,81.91853,65.24768,98.10154L635.64534,353.75239V257.36533c0-1.78417-.18122-3.51259-.2788-5.26888.13936-2.955.223-5.91007.223-8.893q0-4.36982-.19517-8.67a185.61592,185.61592,0,0,0-44.53447-112.50037Z"/><path class="cls-1" d="M449.04619,56.66c-100.12264,0-181.83209,78.86594-186.3483,177.87349q-.18816,4.3071-.19516,8.67c0,3.192.06967,6.3561.237,9.50629-.06968,1.56115-.237,3.0805-.237,4.65557V450.32058L590.832,121.99132A186.13267,186.13267,0,0,0,449.04619,56.66Z"/><path class="cls-1" d="M368.95361,669.99664H529.1805c58.55706,0,106.46484-47.90777,106.46484-106.45088V353.04148L327.26255,661.42427A105.43227,105.43227,0,0,0,368.95361,669.99664Z"/></svg>

After

Width:  |  Height:  |  Size: 1.7 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.2 KiB

View File

@@ -0,0 +1,10 @@
<!--
From: https://github.com/cncf/artwork/blob/3e6dbd6b9f3fd3b03e848c10a9921ccc5b5dabf7/projects/knative/icon/color/knative-icon-color.svg
Only modified to set the fill color to #8fa4b1.
-->
<svg viewBox="0 0 735 593.5" xmlns="http://www.w3.org/2000/svg">
<path fill="#8fa4b1" d="M297.496 1.488 65.749 113.096a15.035 15.035 0 0 0-8.135 10.194L.377 374.065a15.02 15.02 0 0 0 2.902 12.711l160.376 201.108a15.038 15.038 0 0 0 11.747 5.657H432.63c4.571 0 8.895-2.085 11.747-5.657l160.376-201.108a15.023 15.023 0 0 0 2.903-12.711L550.418 123.29a15.019 15.019 0 0 0-8.135-10.194L310.536 1.488a15.022 15.022 0 0 0-13.04 0"/>
<path fill="#fff" d="M221.845 210.533h51.054v100.764h1.017c5.072-8.798 10.48-16.907 15.552-25.023l51.736-75.741h63.225l-75.398 97.039 79.455 130.856h-60.18l-55.792-98.394-19.615 24.005v74.389h-51.054V210.533Z"/>
<path fill="#8fa4b1" d="m585.328 1.307-91.112 33.16a7.521 7.521 0 0 0-3.935 3.306l-48.478 83.964a7.513 7.513 0 0 0-.892 5.066l16.835 95.483a7.495 7.495 0 0 0 2.568 4.453l74.277 62.319a7.507 7.507 0 0 0 4.828 1.76h96.957a7.515 7.515 0 0 0 4.831-1.76l74.274-62.319a7.508 7.508 0 0 0 2.567-4.453l16.839-95.483a7.538 7.538 0 0 0-.896-5.066l-48.474-83.964a7.526 7.526 0 0 0-3.939-3.306l-91.112-33.16a7.5 7.5 0 0 0-5.138 0"/>
<path fill="#fff" d="M570.231 111.865a59.358 59.358 0 0 1 5.654-4.821 37.76 37.76 0 0 1 6.228-3.773c2.192-1.052 4.559-1.866 7.101-2.452 2.542-.585 5.301-.876 8.281-.876 4.91 0 9.265.848 13.063 2.542 3.801 1.694 7.001 4.067 9.603 7.101 2.602 3.04 4.558 6.663 5.873 10.871 1.316 4.205 1.976 8.826 1.976 13.851v57.423h-24.115v-57.423c0-5.025-1.168-8.929-3.5-11.706-2.342-2.775-5.786-4.162-10.351-4.162-3.385 0-6.569.73-9.556 2.192-2.981 1.462-5.814 3.504-8.498 6.137v64.962h-24.202v-90.389h14.903c3.04 0 5.057 1.403 6.056 4.211l1.484 6.312Z"/>
</svg>

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@@ -0,0 +1,5 @@
<!--
From: https://github.com/cncf/artwork/blob/3e6dbd6b9f3fd3b03e848c10a9921ccc5b5dabf7/projects/rook/icon/white/rook-icon-white.svg
Only modified to set the fill color to #8fa4b1.
-->
<svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="22.36 -5.64 310.53 371.28"><style>svg {enable-background:new 0 0 360 360}</style><style>.st0{fill:#8fa4b1}</style><path d="M325.9 113.7h-77.6V87.9h51.6V27.5h-39.4v34.2h-63.8V27.5h-38.6v34.2H92.5V27.5h-37v60.4h49.9v25.8H29.5V1.5h88.8v34.3h13.8V1.5h90.6v34.3h11.8V1.5h91.4zm-26.6 48.6V305c0 15.2-12.4 27.6-27.6 27.6H83.6C68.3 332.6 56 320.2 56 305V162.3h243.3m26-25.9H30.1v168.7c0 29.5 24 53.5 53.5 53.5h188.2c29.5 0 53.5-24 53.5-53.5V136.4z" class="st0"/><path d="M177.7 214.5c15.4 0 28.1 12.6 28.1 28.1V272h-56.1v-29.4c-.1-15.5 12.5-28.1 28-28.1m0-26c-29.7 0-54 24.2-54 54v55.4h108.1v-55.4c-.1-29.7-24.4-54-54.1-54z" class="st0"/></svg>

After

Width:  |  Height:  |  Size: 882 B

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 22 KiB

View File

@@ -0,0 +1,5 @@
<!--
From: https://github.com/cncf/artwork/blob/3e6dbd6b9f3fd3b03e848c10a9921ccc5b5dabf7/projects/spin/icon/white/spin-icon-white.svg
Only modified to set the fill color to #8fa4b1.
-->
<svg fill="none" height="420" viewBox="0 0 420 420" width="420" xmlns="http://www.w3.org/2000/svg"><path d="m210 73.2357c-8.464 0-16.721.8007-24.745 2.2728-.31.0517-.568-.1808-.568-.4907v-28.9781c0-.6715-.542-1.2397-1.239-1.2397h-30.886c-.671 0-1.239.5424-1.239 1.2397v40.1355c0 .1808-.103.3616-.284.439-45.852 22.0048-77.539 68.9328-77.539 123.2478 0 54.314 31.687 101.216 77.539 123.247.181.077.284.258.284.439v40.136c0 .671.542 1.239 1.239 1.239h30.886c.671 0 1.239-.542 1.239-1.239v-29.004c0-.31.284-.543.568-.491 8.024 1.472 16.281 2.273 24.745 2.273 75.398 0 136.5-61.159 136.5-136.626s-61.128-136.6003-136.5-136.6003zm-104.375 136.6263c0-35.513 17.805-66.919 44.924-85.824.335-.233.8 0 .8.413v170.821c0 .413-.465.646-.8.413-27.119-18.879-44.924-50.311-44.924-85.823zm115.935 103.851c-12.489 1.369-24.565.49-35.918-2.247-.568-.129-.955-.646-.955-1.214v-200.755c0-.568.387-1.085.955-1.214 7.818-1.885 15.972-2.892 24.384-2.892 59.631 0 107.755 50.311 104.194 110.772-2.967 50.415-42.498 92.049-92.634 97.55z" fill="#8fa4b1"/></svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
From: https://github.com/cncf/artwork/blob/3e6dbd6b9f3fd3b03e848c10a9921ccc5b5dabf7/projects/external-secrets-operator/icon/black/eso-icon-black.svg
Has only been modified to set the outer circle color to #8fa4b1.
-->
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 165.47 165.47"><defs><style>.d,.e,.f{fill:#fff;}.e,.g,.h{stroke-width:4px;}.e,.g,.h,.f,.i{stroke:#fff;}.e,.g,.h,.i{stroke-linecap:round;}.g,.h,.i{fill:none;}.h,.i{stroke-linejoin:round;}.f{stroke-miterlimit:10;}.i{stroke-width:3px;}</style></defs><g id="a"/><g id="b"><g id="c"><g><circle fill="#8fa4b1" cx="82.73" cy="82.73" r="82.73"/><g><path class="g" d="M84.62,45.71c4.91,0,8.9,3.98,8.9,8.9"/><path class="h" d="M59.86,62.99c0-12.66,10.26-22.92,22.92-22.92s22.92,10.26,22.92,22.92"/><g><path class="d" d="M76.25,98.95c-.21,.29-.43,.43-.65,.43s-.44-.1-.66-.29c-.22-.19-.33-.38-.33-.56s.09-.37,.26-.56l1.61-2.26-2.15-.69c-.42-.13-.63-.35-.63-.66,0-.17,.03-.32,.09-.46,.11-.4,.35-.6,.72-.6,.08,0,.21,.02,.4,.06l2.21,.72v-2.35c0-.57,.29-.86,.86-.86s.86,.29,.86,.86v2.35l2.15-.72c.19-.04,.35-.06,.49-.06s.29,.1,.46,.29c.17,.19,.26,.44,.26,.76s-.21,.54-.63,.67l-2.18,.69,1.63,2.26c.15,.17,.23,.35,.23,.54s-.11,.38-.33,.57c-.22,.19-.43,.29-.64,.29s-.42-.14-.63-.43l-1.69-2.38-1.69,2.38Z"/><path class="d" d="M66.57,98.95c-.21,.29-.43,.43-.65,.43s-.44-.1-.66-.29c-.22-.19-.33-.38-.33-.56s.09-.37,.26-.56l1.61-2.26-2.15-.69c-.42-.13-.63-.35-.63-.66,0-.17,.03-.32,.09-.46,.11-.4,.35-.6,.72-.6,.08,0,.21,.02,.4,.06l2.21,.72v-2.35c0-.57,.29-.86,.86-.86s.86,.29,.86,.86v2.35l2.15-.72c.19-.04,.35-.06,.49-.06s.29,.1,.46,.29c.17,.19,.26,.44,.26,.76s-.21,.54-.63,.67l-2.18,.69,1.63,2.26c.15,.17,.23,.35,.23,.54s-.11,.38-.33,.57c-.22,.19-.43,.29-.64,.29s-.42-.14-.63-.43l-1.69-2.38-1.69,2.38Z"/><path class="d" d="M85.92,98.95c-.21,.29-.43,.43-.65,.43s-.44-.1-.66-.29c-.22-.19-.33-.38-.33-.56s.09-.37,.26-.56l1.61-2.26-2.15-.69c-.42-.13-.63-.35-.63-.66,0-.17,.03-.32,.09-.46,.11-.4,.35-.6,.72-.6,.08,0,.21,.02,.4,.06l2.21,.72v-2.35c0-.57,.29-.86,.86-.86s.86,.29,.86,.86v2.35l2.15-.72c.19-.04,.35-.06,.49-.06s.29,.1,.46,.29c.17,.19,.26,.44,.26,.76s-.21,.54-.63,.67l-2.18,.69,1.63,2.26c.15,.17,.23,.35,.23,.54s-.11,.38-.33,.57c-.22,.19-.43,.29-.64,.29s-.42-.14-.63-.43l-1.69-2.38-1.69,2.38Z"/><path class="d" d="M95.6,98.95c-.21,.29-.43,.43-.65,.43s-.44-.1-.66-.29c-.22-.19-.33-.38-.33-.56s.09-.37,.26-.56l1.61-2.26-2.15-.69c-.42-.13-.63-.35-.63-.66,0-.17,.03-.32,.09-.46,.11-.4,.35-.6,.72-.6,.08,0,.21,.02,.4,.06l2.21,.72v-2.35c0-.57,.29-.86,.86-.86s.86,.29,.86,.86v2.35l2.15-.72c.19-.04,.35-.06,.49-.06s.29,.1,.46,.29c.17,.19,.26,.44,.26,.76s-.21,.54-.63,.67l-2.18,.69,1.63,2.26c.15,.17,.23,.35,.23,.54s-.11,.38-.33,.57c-.22,.19-.43,.29-.64,.29s-.42-.14-.63-.43l-1.69-2.38-1.69,2.38Z"/></g><rect class="i" x="57.56" y="87.66" width="50.43" height="14.93" rx=".87" ry=".87"/><g><path class="g" d="M31.15,101.61c0-4.91,3.98-8.9,8.9-8.9"/><path class="g" d="M24.94,108.73c0-3.43,2.78-6.22,6.22-6.22s6.22,2.78,6.22,6.22"/><line class="h" x1="44.3" y1="84.1" x2="44.3" y2="102.85"/></g><g><path class="g" d="M134.31,101.61c0-4.91-3.98-8.9-8.9-8.9"/><path class="g" d="M140.53,108.73c0-3.43-2.78-6.22-6.22-6.22s-6.22,2.78-6.22,6.22"/><line class="h" x1="121.17" y1="84.1" x2="121.17" y2="102.85"/></g><g><circle class="f" cx="82.78" cy="19.49" r="4.3"/><line class="e" x1="82.78" y1="21.23" x2="82.78" y2="39.18"/></g><g><polyline class="h" points="79.23 121.53 50.29 121.83 50.29 68.42 115.18 68.42 115.18 121.83 90.87 121.58"/><polygon class="d" points="92.07 117.61 85.13 121.53 91.99 125.58 92.07 117.61"/></g></g></g></g></g></svg>

After

Width:  |  Height:  |  Size: 3.5 KiB

View File

@@ -0,0 +1,34 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
This logo is copied from here: https://github.com/fluxcd/flagger/blob/27daa2ca468c42f3f373355818c146d48efc64f5/docs/logo/flagger-icon-white.svg
The logo is licensed under the Apache License 2.0: https://github.com/fluxcd/flagger/blob/27daa2ca468c42f3f373355818c146d48efc64f5/LICENSE
The SVG is unmodified aside from this comment being added and the color being changed to match the Argo CD UI's color scheme.
-->
<svg width="64px" height="64px" viewBox="0 0 64 64" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>flagger-icon-white</title>
<g id="flagger-icon-white" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<path d="M11.7870673,17.7791346 C10.7376442,17.0966346 10.7376442,15.5602885 11.7870673,14.8783654 L31.1659135,2.27951923 C31.4527085,2.09313128 31.7809164,2 32.109115,2 C32.1144833,2 32.1144833,30.6577081 32.1144833,30.6577081 C31.7844966,30.658555 31.4542722,30.565385 31.1659135,30.3779808 L11.7870673,17.7791346 Z" id="Fill-1" fill="#8fa4b1"></path>
<path d="M1.78706731,24.2791346 C0.737644231,23.5966346 0.737644231,22.0602885 1.78706731,21.3783654 L21.1659135,8.77951923 C21.4527085,8.59313128 21.7809164,8.5 22.109147,8.5 C22.1144833,8.5 16.7504591,14.9302441 16.4621003,14.7428399 L1.78706731,24.2791346 Z" id="Fill-1-Copy" fill="#8fa4b1"></path>
<path d="M32.1005414,32.7999243 C32.4314477,32.7984255 32.7627112,32.8915919 33.051875,33.0795192 L52.4312981,45.6783654 C53.4807212,46.3602885 53.4807212,47.8966346 52.4312981,48.5791346 L33.051875,61.1779808 C32.7723427,61.3596486 32.4534685,61.452763 32.1336066,61.4575 C32.1336066,61.4575 32.1005414,32.7999243 32.1005414,32.7999243 Z" id="Fill-1" fill="#8fa4b1"></path>
<path d="M42.6594534,51.6821881 L62.4312981,39.1784411 C63.4807212,39.8603641 63.4807212,41.3967103 62.4312981,42.0792103 L43.051875,54.6780564 C42.7723427,54.8597243 42.4534685,54.9528387 42.1336066,54.9573995 C42.1336066,54.9573995 42.3702896,51.4942608 42.6594534,51.6821881 Z" id="Fill-1-Copy-2" fill="#8fa4b1"></path>
<g id="Group" transform="translate(11.000000, 32.000000)" fill="#8fa4b1">
<path d="M23.1648462,1.79890385 C22.7177486,1.57560653 21.9079818,0.775616463 21.12525,0.8 C20.4471662,0.8 20.1819808,1.07951923 19.08525,1.79890385 C20.6106346,2.45198077 26.2588846,4.40082692 27.8390769,4.83755769 C25.3252832,3.17403545 23.7672062,2.16115083 23.1648462,1.79890385 Z" id="Fill-5"></path>
<path d="M17.1629423,3.04898077 L15.4269808,4.17744231 C16.9371113,5.2881491 18.4473527,6.15609036 19.9577051,6.7812661 C23.0272183,8.05182074 26.9292047,8.86995809 27.8191154,9.08936538 C32.8706538,10.3349423 37.6418077,11.5107115 41.4783462,15.3478269 C41.6733462,15.54225 41.8562308,15.7407115 42.0373846,15.93975 C42.4308462,15.1880192 42.2335385,14.1957115 41.4466154,13.6845577 L33.8560385,8.74898077 C32.0133462,8.14090385 30.1360385,7.67590385 28.2806538,7.21898077 C26.5308462,6.78744231 23.5727919,6.02059898 21.9181765,5.49156052 C20.8150996,5.13886821 19.2300215,4.32467496 17.1629423,3.04898077 Z" id="Fill-7"></path>
<path d="M16.8750849,8.20483098 C15.6193488,7.62821266 14.2831279,6.83594208 12.8664221,5.82801923 L11.2119808,6.91782692 C12.8335577,8.16072333 14.2385577,9.07106402 15.4269808,9.648849 C17.2096154,10.5155265 24.0114808,12.3722308 24.4326346,12.4760769 C29.4841731,13.7210769 34.2553269,14.8968462 38.0924423,18.7339615 C38.0987885,18.7408846 38.1045577,18.7472308 38.1114808,18.7541538 L39.75225,17.6868462 C39.6524423,17.5824231 39.5584038,17.4751154 39.4545577,17.3718462 C35.2384038,13.1551154 29.9791731,11.8587692 24.8941731,10.6051154 C24.3137885,10.4620385 18.7586891,9.06975845 16.8750849,8.20483098 Z" id="Fill-11"></path>
<path d="M23.1650769,16.3935 C27.1175769,17.4140769 30.8341154,18.6342692 33.9823846,21.4381154 L35.6439231,20.3581154 C32.0465509,16.9762696 28.005918,15.3433009 23.4551919,14.4789663 C19.3757148,13.7041376 16.6984434,12.7436057 13.6520967,11.5324737 C11.621199,10.7250524 9.97648083,9.72718297 8.71794231,8.53886538 L7.04717308,9.62521154 C9.06194661,11.3700006 10.8411363,12.5664934 12.3847422,13.2146899 C14.4228927,14.0705575 18.0163376,15.1301608 23.1650769,16.3935 Z" id="Fill-17"></path>
<path d="M4.57875,11.2299231 L2.92990385,12.3018462 C2.98759615,12.3612692 3.04009615,12.423 3.09951923,12.4818462 C7.31625,16.6985769 12.5743269,17.9949231 17.6599038,19.2485769 C22.0641346,20.3337692 26.2543269,21.3687692 29.7989423,24.1581923 L31.4893269,23.0591538 C27.4958654,19.6968462 22.7385577,18.5158846 18.1214423,17.3781923 C13.1206731,16.1453077 8.39567308,14.9758846 4.57875,11.2299231" id="Fill-19"></path>
<path d="M1.07555769,14.5060962 C0.883442308,14.3139808 0.702865385,14.1184038 0.524019231,13.9216731 C-0.227711538,14.6745577 -0.139442308,15.9726346 0.80325,16.5853269 L6.50959615,20.2955192 C9.03536538,21.3409038 11.6765192,21.9945577 14.2738269,22.6349423 C18.3284423,23.6341731 22.2019038,24.5924423 25.5578654,26.9157115 L27.2834423,25.7930192 C23.4676731,22.9245577 19.0403654,21.8255192 14.7347885,20.7639808 C9.68382692,19.5189808 4.91267308,18.3432115 1.07555769,14.5060962" id="Fill-21"></path>
<path d="M19.6441154,28.8342692 C20.0243077,29.0188846 20.3998846,29.2133077 20.7691154,29.4221538 C21.2093077,29.5150385 21.6771923,29.4383077 22.0683462,29.1838846 L23.0260385,28.5613846 C19.9493077,26.5035 16.5287308,25.461 13.1196923,24.5927308 L19.6441154,28.8342692 Z" id="Fill-23"></path>
</g>
<g id="Group-Copy" transform="translate(11.000000, 1.200000)" fill="#8fa4b1">
<path d="M23.1648462,1.79890385 C22.7177486,1.57560653 21.9079818,0.775616463 21.12525,0.8 C20.4471662,0.8 20.1819808,1.07951923 19.08525,1.79890385 C20.6106346,2.45198077 26.2588846,4.40082692 27.8390769,4.83755769 C25.3252832,3.17403545 23.7672062,2.16115083 23.1648462,1.79890385 Z" id="Fill-5"></path>
<path d="M17.1629423,3.04898077 L15.4269808,4.17744231 C16.9371113,5.2881491 18.4473527,6.15609036 19.9577051,6.7812661 C23.0272183,8.05182074 26.9292047,8.86995809 27.8191154,9.08936538 C32.8706538,10.3349423 37.6418077,11.5107115 41.4783462,15.3478269 C41.6733462,15.54225 41.8562308,15.7407115 42.0373846,15.93975 C42.4308462,15.1880192 42.2335385,14.1957115 41.4466154,13.6845577 L33.8560385,8.74898077 C32.0133462,8.14090385 30.1360385,7.67590385 28.2806538,7.21898077 C26.5308462,6.78744231 23.5727919,6.02059898 21.9181765,5.49156052 C20.8150996,5.13886821 19.2300215,4.32467496 17.1629423,3.04898077 Z" id="Fill-7"></path>
<path d="M16.8750849,8.20483098 C15.6193488,7.62821266 14.2831279,6.83594208 12.8664221,5.82801923 L11.2119808,6.91782692 C12.8335577,8.16072333 14.2385577,9.07106402 15.4269808,9.648849 C17.2096154,10.5155265 24.0114808,12.3722308 24.4326346,12.4760769 C29.4841731,13.7210769 34.2553269,14.8968462 38.0924423,18.7339615 C38.0987885,18.7408846 38.1045577,18.7472308 38.1114808,18.7541538 L39.75225,17.6868462 C39.6524423,17.5824231 39.5584038,17.4751154 39.4545577,17.3718462 C35.2384038,13.1551154 29.9791731,11.8587692 24.8941731,10.6051154 C24.3137885,10.4620385 18.7586891,9.06975845 16.8750849,8.20483098 Z" id="Fill-11"></path>
<path d="M23.1650769,16.3935 C27.1175769,17.4140769 30.8341154,18.6342692 33.9823846,21.4381154 L35.6439231,20.3581154 C32.0465509,16.9762696 28.005918,15.3433009 23.4551919,14.4789663 C19.3757148,13.7041376 16.6984434,12.7436057 13.6520967,11.5324737 C11.621199,10.7250524 9.97648083,9.72718297 8.71794231,8.53886538 L7.04717308,9.62521154 C9.06194661,11.3700006 10.8411363,12.5664934 12.3847422,13.2146899 C14.4228927,14.0705575 18.0163376,15.1301608 23.1650769,16.3935 Z" id="Fill-17"></path>
<path d="M4.57875,11.2299231 L2.92990385,12.3018462 C2.98759615,12.3612692 3.04009615,12.423 3.09951923,12.4818462 C7.31625,16.6985769 12.5743269,17.9949231 17.6599038,19.2485769 C22.0641346,20.3337692 26.2543269,21.3687692 29.7989423,24.1581923 L31.4893269,23.0591538 C27.4958654,19.6968462 22.7385577,18.5158846 18.1214423,17.3781923 C13.1206731,16.1453077 8.39567308,14.9758846 4.57875,11.2299231" id="Fill-19"></path>
<path d="M1.07555769,14.5060962 C0.883442308,14.3139808 0.702865385,14.1184038 0.524019231,13.9216731 C-0.227711538,14.6745577 -0.139442308,15.9726346 0.80325,16.5853269 L6.50959615,20.2955192 C9.03536538,21.3409038 11.6765192,21.9945577 14.2738269,22.6349423 C18.3284423,23.6341731 22.2019038,24.5924423 25.5578654,26.9157115 L27.2834423,25.7930192 C23.4676731,22.9245577 19.0403654,21.8255192 14.7347885,20.7639808 C9.68382692,19.5189808 4.91267308,18.3432115 1.07555769,14.5060962" id="Fill-21"></path>
<path d="M19.6441154,28.8342692 C20.0243077,29.0188846 20.3998846,29.2133077 20.7691154,29.4221538 C21.2093077,29.5150385 21.6771923,29.4383077 22.0683462,29.1838846 L23.0260385,28.5613846 C19.9493077,26.5035 16.5287308,25.461 13.1196923,24.5927308 L19.6441154,28.8342692 Z" id="Fill-23"></path>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 8.9 KiB

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
From: https://github.com/cncf/artwork/blob/3e6dbd6b9f3fd3b03e848c10a9921ccc5b5dabf7/projects/istio/icon/white/istio-icon-white.svg
Only modified to set the fill color to #8fa4b1.
-->
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 77.62745 102.5">
<defs>
<style>
.cls-1 {
fill: #8fa4b1;
}
</style>
</defs>
<path class="cls-1" d="m31.05548,54.44523v24.1773c.00065.04512-.03164.084-.07611.09164l-23.27949,3.99047c-.05091.0076-.09834-.02751-.10594-.07841-.00256-.01712-.0003-.03461.00653-.05051L30.87996,30.58635c.02242-.04633.07815-.06572.12449-.04331.0316.01529.05193.04704.05259.08214l-.00156,23.82005Zm3.92367-13.93321v38.21148c.00046.04691.03573.08617.08232.09164l34.87031,3.89415c.0512.00527.09698-.03196.10226-.08316.00167-.01616-.00092-.03247-.00751-.04732L35.15623,4.70041c-.02237-.04636-.07809-.0658-.12444-.04343-.03117.01504-.05144.04612-.05264.08071v35.77433Zm34.68546,45.76213l-38.57341,11.57218c-.02155.00797-.04524.00797-.06679,0l-23.309-11.57217c-.04636-.0203-.06749-.07435-.04719-.12071.01513-.03455.04988-.0563.08757-.05481h61.88241c.0508.00825.08531.05613.07706.10693-.00482.0297-.02369.05525-.05066.06859Z"/>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 11 KiB

View File

@@ -0,0 +1,5 @@
<!--
From: https://github.com/cncf/artwork/blob/3e6dbd6b9f3fd3b03e848c10a9921ccc5b5dabf7/projects/keycloak/icon/white/keycloak-icon-white.svg
Only modified to set the fill color to #8fa4b1.
-->
<svg xmlns="http://www.w3.org/2000/svg" width="167.117" height="150.656" viewBox="0 0 44.216 39.861"><path d="m117.344 128.588-23.017.003-5.716 9.865-5.796 10.065 5.737 9.962 5.782 9.965 23.011-.008 5.69-9.956h3.976v-.004h.02l-.007-19.93h-3.995zm-19.188 6.65h3.835l-.001.002 1.917 3.315-5.75 9.973 5.743 9.954-1.909 3.332.002.003h-3.837l-5.754-9.966-1.925-3.307 1.952-3.386zm11.499.002 3.842.003 5.754 9.962v.003l1.921 3.341-7.677 13.266h-3.83v-.001c-.706-1.036-1.914-3.33-1.914-3.33l5.753-9.958-5.754-9.973z" style="display:inline;fill:#8fa4b1;fill-opacity:1;stroke-width:.264583" transform="translate(-82.815 -128.588)"/></svg>

After

Width:  |  Height:  |  Size: 823 B

View File

@@ -0,0 +1,5 @@
<!--
From: https://github.com/cncf/artwork/blob/main/projects/strimzi/icon/white/strimzi-icon-white.svg?short_path=adb67c3
Has only been modified to set the fill color to #8fa4b1.
-->
<svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="39.28 -1.97 281.94 323.44"><path fill="#8fa4b1" d="M180.33826 4.32553L45.59882 82.11691v155.58545L180.33826 315.493l134.74017-77.79132V82.11691zm119.67309 224.67871l-119.67376 69.09357-119.67377-69.09357v-66.835C112.932 138.619 178.36755 122.742 183.91571 115.6293l-.00006-.00006c7.79755-9.99664-70.17828-26.39424-70.17828-26.39424s191.04174 11.21418 146.855 48.49421c-44.18579 37.27911-141.65576 58.07336-36.38922 67.17a725.85543 725.85543 0 0 1 75.80816 10.22217z"/></svg>

After

Width:  |  Height:  |  Size: 718 B

View File

@@ -0,0 +1,5 @@
<!--
From: https://github.com/cncf/artwork/blob/3e6dbd6b9f3fd3b03e848c10a9921ccc5b5dabf7/projects/keda/icon/white/keda-icon-white.svg
Has only been modified to set the stroke and fill colors to #8fa4b1.
-->
<svg id="Warstwa_1" data-name="Warstwa 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 625 625"><defs><style>.cls-1,.cls-3{fill:none;stroke:#8fa4b1;}.cls-1{stroke-width:30px;}.cls-2{fill:#8fa4b1;}</style></defs><title>keda-icon-white</title><g id="Icon"><g id="k8s-icon-1"><g id="Kubernetes_Logo_Hrz_lockup_REV" data-name="Kubernetes Logo Hrz lockup REV"><path id="Shape" class="cls-1" d="M522.24,172.9c-1.86-5.44-6.28-10.35-12.36-13.63L318.77,68.71l-.11-.06c-2.07-1-5.08-1.55-9-1.55-3.56,0-5.14,0-7,.13a34.57,34.57,0,0,0-3.85.42L109.09,158.16l-.17.08A18.47,18.47,0,0,0,98.41,171L51.47,374.84a23.88,23.88,0,0,0,4.13,17.75l131.48,161a31,31,0,0,0,18.28,8.21h211.1l.82.09c5.8.64,11.32-1.88,15.16-7.06l.21-.28L564.91,392.59a27,27,0,0,0,4.65-18.18Z"/></g></g><g id="nodes"><circle id="Oval-2" class="cls-2" cx="438" cy="553" r="39"/><circle id="Oval-2-2" data-name="Oval-2" class="cls-2" cx="196" cy="553" r="39"/><circle id="Oval-2-3" data-name="Oval-2" class="cls-2" cx="307" cy="73" r="39"/><circle id="Oval-2-4" data-name="Oval-2" class="cls-2" cx="518" cy="165" r="39"/><circle id="Oval-2-5" data-name="Oval-2" class="cls-2" cx="100" cy="165" r="39"/><circle id="Oval-2-6" data-name="Oval-2" class="cls-2" cx="567" cy="384" r="39"/><circle id="Oval-2-7" data-name="Oval-2" class="cls-2" cx="59" cy="384" r="39"/></g><g id="Warstwa_1-2" data-name="Warstwa 1"><g id="Wordmark"><path id="KEDA" class="cls-2" d="M195.77,367l-23-41.09-6.93,7.06v34h-18V277.1h18v29l26.32-29h24.26L185,312.28,217.21,367Zm99.89-89.87v18h-60v-18Zm-60,52.63v-18h49.68v18Zm0,37.37v-18h59.57v18Zm78.43-90h25.43a44.2,44.2,0,0,1,31.7,13.09,42.65,42.65,0,0,1,9.63,14.38,44.46,44.46,0,0,1,0,35.05,41,41,0,0,1-9.63,14.25,45.05,45.05,0,0,1-31.7,13.23H321.48V367h-7.34Zm18,72h7.45a27,27,0,0,0,0-54.05h-7.45Zm102.61-72H440l42.49,90H462.58L436.9,312.41,409.05,367.1H388.89Z"/><polygon class="cls-3" points="446.72 363.34 451.59 354.62 432.75 354.62 438.38 315.55 438.1 315.03 408.31 368.99 408.32 368.99 407.42 370.59 426.54 370.44 421.46 408.86 421.58 409.36 444.66 367.09 444.65 367.09 444.65 367.09 446.72 363.34"/><path id="Combined-Shape" class="cls-2" d="M444.66,367.09l6.88-12.45h-18.8l5.9-40.51-29.28,53h-6.45l34-63.7,33.95,63.7Z"/></g></g></g></svg>

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -0,0 +1,5 @@
<!--
From: https://github.com/cncf/artwork/blob/3e6dbd6b9f3fd3b03e848c10a9921ccc5b5dabf7/projects/kubevirt/icon/white/kubevirt-icon-white.svg
Has only been modified to set the fill color to #8fa4b1.
-->
<svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="6.10 10.85 345.80 334.30"><defs><style>.cls-1{fill:#8fa4b1}</style></defs><path d="M115.09287 338.742l-1.852-.07941a14.868 14.868 0 0 0 1.852.07941z" class="cls-1"/><path d="M345.18784 212.87648L316.40244 88.7043c-.18817-.75263-.56445-1.50513-.75256-2.25769a23.64542 23.64542 0 0 0-5.07978-7.14929l-.12829.2525c-.02051-.02063-.03937-.04382-.05988-.06439a19.93834 19.93834 0 0 0-2.25769-1.88135 20.626 20.626 0 0 0-3.95092-2.634L188.27915 19.46889q-.56424-.28227-1.12878-.56446a12.17166 12.17166 0 0 0-2.44587-.75256c-.17614-.04407-.38055-.05988-.57257-.08814-.628-.0924-1.29681-.144-1.87323-.28814a22.76456 22.76456 0 0 0-3.57464-.18817 47.94466 47.94466 0 0 0-7.33747.37634 9.44163 9.44163 0 0 0-2.25759.37624L53.383 74.2176c-.27545.10328-.5376.231-.80047.35718a13.604 13.604 0 0 0-2.24543 1.37287c-.31372.23455-.616.47479-.905.71576-.114.09112-.21692.1911-.32873.28393-.04474.03711-.087.07617-.13141.11353l-.04584-.092-.01532-.031-.04309-.08642a20.05086 20.05086 0 0 0-7.14929 11.47656L13.30918 213.25288a21.45849 21.45849 0 0 0-.37622 4.8916 11.57114 11.57114 0 0 0 .18817 2.44587 26.87493 26.87493 0 0 0 4.32715 11.10022l42.96155 53.24816 10.282 12.78888 26.71586 33.11249a29.80244 29.80244 0 0 0 12.041 6.96118l.00189.00049a19.69944 19.69944 0 0 0 3.19647.75208c.7525 0 1.69318.18817 2.4458.18817h127.93496a39.614 39.614 0 0 0 4.70349-.37628 19.24937 19.24937 0 0 0 12.79346-7.52564l59.82855-73.9389 20.319-25.21063a26.421 26.421 0 0 0 3.76282-8.09l.00012-.00067a3.98126 3.98126 0 0 1 .12451-.77362c.007-.0343.01569-.06861.02161-.10291l.00006-.00024.00012-.00067c.00647-.04163.01666-.08344.02087-.12519v-.00067c.00409-.04138.02076-.08282.02076-.1242l.00012-.00068a25.54436 25.54436 0 0 0 .73712-6.97985c-.01755-.86075-.06842-1.72977-.17258-2.61539zm-87.877-28.76654l-.01447.01611a9.5482 9.5482 0 0 1-11.07013 2.03467 9.408 9.408 0 0 1-4.32721-12.60535l13.358-26.90405v-.18811a8.937 8.937 0 0 1 2.17371-2.86633 9.55005 9.55005 0 0 1 10.43164-1.27271 9.18249 9.18249 0 0 1 4.1391 12.60535l-3.85931 7.815-.0965.19544-3.56982 7.22888-5.64417 11.85278a9.87529 9.87529 0 0 1-1.52085 2.08832zm-13.15412 26.3208l-3.38647 6.585-9.78326 20.319a9.87121 9.87121 0 0 1-1.71943 2.29907c-.056.05561-.11633.10529-.17346.15937a9.61743 9.61743 0 0 1-2.66821 1.79834 9.42977 9.42977 0 0 1-12.37152-12.72309l13.358-26.90393a9.56395 9.56395 0 0 1 12.60535-4.1391 9.45293 9.45293 0 0 1 4.75073 10.94794c-.03491.12811-.0777.25525-.11817.38269a9.69652 9.69652 0 0 1-.49357 1.27471zM207.62748 282.157a9.50065 9.50065 0 0 1-10.06024 2.183c-.27576-.10309-.55024-.21625-.82172-.34656a9.408 9.408 0 0 1-4.32727-12.60534l6.773-13.54615a9.49475 9.49475 0 0 1 5.649-4.40545 9.36464 9.36464 0 0 1 11.46045 11.76806l-.007.02143c-.05548.17285-.10382.34631-.1698.51788-.18817.18811-.18817.18811-.18817.37628l-6.58484 13.73419a9.87977 9.87977 0 0 1-1.52368 2.09143c-.06674.07042-.13121.14317-.19973.21123zm2.25852-131.74329a9.21794 9.21794 0 0 1-2.60461-.94031 9.76615 9.76615 0 0 1-3.951-12.79345l16.5564-31.60749h5.83221a8.73886 8.73886 0 0 1 4.32721 1.12891 9.4256 9.4256 0 0 1 3.951 12.79346l-14.11047 26.52771a9.24039 9.24039 0 0 1-10.00074 4.89117zm77.3548-25.21033l-.94074 2.634-.18811.18817a9.4997 9.4997 0 0 1-1.19757 1.62091l-.00512.00513a9.52354 9.52354 0 0 1-5.00592 2.88922c-.07251.01617-.1449.02252-.21747.03692a9.46066 9.46066 0 0 1-11.07093-7.18622h-11.28843a9.407 9.407 0 1 1 0-18.8139h39.32123l-8.91833 17.65839zm-98.96149 39.69751a9.46795 9.46795 0 1 1 16.74439 8.84265l-14.11048 26.52765a9.3656 9.3656 0 0 1-16.98852-.714 9.95378 9.95378 0 0 1 .244-8.12848zm-86.74688 17.72626l-37.8018-77.17841h76.19665l.10163.18818 30.377 56.25378-10.34771 19.37842-.37628.18817-30.85486-57.19452h-33.677l53.05542 112.69568 7.52557-14.29865a9.48448 9.48448 0 0 1 17.44214 1.64783c.01734.0567.02918.11463.04541.17157.04822.17951.09839.35828.136.54059a9.317 9.317 0 0 1-.87915 6.48267l-13.73419 25.77508-10.48718 19.47608-.04865.09045-.18817.37628-.02661-.0542-29.06765-59.11352-10.03876-20.41541-5.88152-12.00822z" class="cls-1"/></svg>

After

Width:  |  Height:  |  Size: 4.2 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 5.8 KiB

View File

@@ -0,0 +1,5 @@
<!--
From: https://github.com/cncf/artwork/blob/3e6dbd6b9f3fd3b03e848c10a9921ccc5b5dabf7/projects/opentelemetry/icon/white/opentelemetry-icon-white.svg
Has only been modified to set the fill color to #8fa4b1.
-->
<svg xmlns="http://www.w3.org/2000/svg" role="img" viewBox="-12.70 -12.70 1024.40 1024.40"><style>svg {enable-background:new 0 0 1000 1000}</style><path fill="#8fa4b1" d="M528.7 545.9c-42 42-42 110.1 0 152.1s110.1 42 152.1 0 42-110.1 0-152.1-110.1-42-152.1 0zm113.7 113.8c-20.8 20.8-54.5 20.8-75.3 0-20.8-20.8-20.8-54.5 0-75.3 20.8-20.8 54.5-20.8 75.3 0 20.8 20.7 20.8 54.5 0 75.3zm36.6-643l-65.9 65.9c-12.9 12.9-12.9 34.1 0 47l257.3 257.3c12.9 12.9 34.1 12.9 47 0l65.9-65.9c12.9-12.9 12.9-34.1 0-47L725.9 16.7c-12.9-12.9-34-12.9-46.9 0zM217.3 858.8c11.7-11.7 11.7-30.8 0-42.5l-33.5-33.5c-11.7-11.7-30.8-11.7-42.5 0L72.1 852l-.1.1-19-19c-10.5-10.5-27.6-10.5-38 0-10.5 10.5-10.5 27.6 0 38l114 114c10.5 10.5 27.6 10.5 38 0s10.5-27.6 0-38l-19-19 .1-.1 69.2-69.2zm348.6-652.9L419.5 352.3c-13 13-13 34.4 0 47.4l90.4 90.4c63.9-46 153.5-40.3 211 17.2l73.2-73.2c13-13 13-34.4 0-47.4L613.3 205.9c-13-13.1-34.4-13.1-47.4 0zm-94 322.3l-53.4-53.4c-12.5-12.5-33-12.5-45.5 0L184.7 663.2c-12.5 12.5-12.5 33 0 45.5l106.7 106.7c12.5 12.5 33 12.5 45.5 0L458 694.1c-25.6-52.9-21-116.8 13.9-165.9z"/></svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1,5 @@
<!--
From: https://github.com/cncf/artwork/blob/3e6dbd6b9f3fd3b03e848c10a9921ccc5b5dabf7/projects/contour/icon/white/contour-icon-white.svg
Has only been modified to set the fill color to #8fa4b1.
-->
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 360 360"><defs><style>.cls-1{fill:#8fa4b1;}</style></defs><path class="cls-1" d="M233.49354,13.60742A172.54166,172.54166,0,0,0,189.601,5.43814c-18.10959,99.876-68.01935,169.76342-111.29634,213.538A430.60388,430.60388,0,0,1,27.997,262.48437a174.15983,174.15983,0,0,0,13.98066,21.40775c27.222-17.23246,52.17582-36.80658,71.6803-55.38577C160.28936,184.08758,214.07746,113.49855,233.49354,13.60742Z"/><path class="cls-1" d="M291.88937,123.9467A372.54289,372.54289,0,0,0,315.29619,70.039,175.10772,175.10772,0,0,0,284.66577,40.3032c-23.84412,94.17987-79.44457,162.10613-127.97928,205.90359a497.63662,497.63662,0,0,1-89.62482,64.25429,174.77373,174.77373,0,0,0,14.7187,11.37237A517.17949,517.17949,0,0,0,188.27865,251.136C232.1921,213.40267,267.05212,170.60971,291.88937,123.9467Z"/><path class="cls-1" d="M277.15082,34.89881A173.24206,173.24206,0,0,0,238.8559,15.42572C219.0561,116.321,164.68042,187.64625,117.52328,232.5651a464.13827,464.13827,0,0,1-71.81777,56.06806,175.035,175.035,0,0,0,14.62435,15.72825,485.22117,485.22117,0,0,0,90.61326-64.51895C199.06542,196.41682,254.26826,128.79887,277.15082,34.89881Z"/><path class="cls-1" d="M336.13405,133.20021c2.51737-4.48613,4.89276-9.00617,7.203-13.54137A173.25517,173.25517,0,0,0,323.64154,81.2481,386.0473,386.0473,0,0,1,302.07666,129.369c-25.51378,47.93487-61.2713,91.84832-106.27711,130.52083A533.48966,533.48966,0,0,1,93.172,329.03161q7.06151,4.1016,14.52458,7.544a550.07205,550.07205,0,0,0,117.96-74.17927C272.4271,223.96358,309.5963,180.49554,336.13405,133.20021Z"/><path class="cls-1" d="M186.93788,5.34036c-2.27707-.08912-4.55541-.17391-6.85395-.17391-95.7447,0-173.63959,77.89706-173.63959,173.6396a172.53394,172.53394,0,0,0,20.28834,81.33323,427.96473,427.96473,0,0,0,49.69651-43.01792C119.36973,173.68688,168.88439,104.37529,186.93788,5.34036Z"/><path class="cls-1" d="M348.78657,140.29987c-27.42246,48.87333-65.74985,93.72453-113.9178,133.30646A571.32566,571.32566,0,0,1,126.119,343.81652a172.88007,172.88007,0,0,0,53.96489,8.62913c95.74435,0,173.6396-77.89688,173.6396-173.6396A173.37518,173.37518,0,0,0,349.191,139.542C349.05086,139.79329,348.92747,140.04875,348.78657,140.29987Z"/></svg>

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@@ -0,0 +1,5 @@
<!--
From: https://github.com/cncf/artwork/blob/3e6dbd6b9f3fd3b03e848c10a9921ccc5b5dabf7/projects/karmada/icon/white/karmada-icon-white.svg
Only modified to set the fill color to #8fa4b1.
-->
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 220.61 173.65"><defs><style>.cls-1{fill:#8fa4b1;}</style></defs><title>icon-white</title><g id="Layer_2" data-name="Layer 2"><g id="Layer_1-2" data-name="Layer 1"><path class="cls-1" d="M0,119.72H29.57A91.32,91.32,0,0,0,36.64,110c.12-1.87.2-3.75.2-5.65A87.07,87.07,0,0,0,11.59,42.93a74.5,74.5,0,0,1,5.8,28.89A74.4,74.4,0,0,1,0,119.72Z"/><path class="cls-1" d="M17.2,131.29H33.48c.7-2.56,1.32-5.13,1.81-7.69H0A24.7,24.7,0,0,1,17.2,131.29Z"/><path class="cls-1" d="M29.69,142.26c1.08-2.64,2.08-5.32,2.93-8.06H19.56a24.45,24.45,0,0,1,3.69,8.06Z"/><path class="cls-1" d="M28.49,145.17H23.8a25.11,25.11,0,0,1,.22,3.15A24.77,24.77,0,0,1,23,155.46,77.67,77.67,0,0,0,28.49,145.17Z"/><path class="cls-1" d="M183.78,119.72h35.47a87.38,87.38,0,0,0-23.88-76.79,74.79,74.79,0,0,1-11.59,76.79Z"/><path class="cls-1" d="M201,131.29H217.5c.69-2.52,1.29-5.09,1.75-7.69H183.78A24.74,24.74,0,0,1,201,131.29Z"/><path class="cls-1" d="M213.64,142.26c1.11-2.63,2.14-5.31,3-8.06h-13.3a24.65,24.65,0,0,1,3.69,8.06Z"/><path class="cls-1" d="M212.4,145.17h-4.82a25.12,25.12,0,0,1,.21,3.15,24.76,24.76,0,0,1-1,7.14A85.55,85.55,0,0,0,212.4,145.17Z"/><path class="cls-1" d="M36.19,119.72H76q2.79-3.36,5.32-6.93a108,108,0,0,0,.66-12A108.89,108.89,0,0,0,50.46,24,93.16,93.16,0,0,1,57.7,60.13,92.93,92.93,0,0,1,36.19,119.72Z"/><path class="cls-1" d="M78.54,131.29c.65-2.55,1.23-5.11,1.7-7.69h-44c-.08.1-.15-.09-.22,0a30.61,30.61,0,0,1,19.36,7.69Z"/><path class="cls-1" d="M75.2,142.26c1-2.65,1.83-5.34,2.59-8.06H58.21a31.71,31.71,0,0,1,5.1,8.06Z"/><path class="cls-1" d="M70.53,153.22c1.27-2.62,2.48-5.3,3.56-8.05H64.43a30.73,30.73,0,0,1,1.49,8.05Z"/><path class="cls-1" d="M65.94,156.13a31.46,31.46,0,0,1-1.27,7.57c1.56-2.43,3-5,4.38-7.57Z"/><path class="cls-1" d="M139,119.72h38.34a76.75,76.75,0,0,0,7.11-10.1c.23-2.91.37-5.85.37-8.83A108.86,108.86,0,0,0,153.3,24,93.41,93.41,0,0,1,139,119.72Z"/><path class="cls-1" d="M181.34,131.29c.65-2.55,1.25-5.12,1.72-7.69H139c-.08.1-.15-.09-.23,0a30.64,30.64,0,0,1,19.37,7.69Z"/><path class="cls-1" d="M178,142.26c1-2.65,1.82-5.34,2.59-8.06H161.05a31.47,31.47,0,0,1,5.11,8.06Z"/><path class="cls-1" d="M173.35,153.22c1.27-2.62,2.47-5.3,3.55-8.05h-9.63a31.16,31.16,0,0,1,1.5,8.05Z"/><path class="cls-1" d="M168.78,156.13a31,31,0,0,1-1.27,7.57c1.56-2.42,3-5,4.37-7.57Z"/><path class="cls-1" d="M81.85,119.72h51.37q2.55-3.09,4.85-6.38A138.18,138.18,0,0,0,139.19,96,136.15,136.15,0,0,0,99.75,0a116.37,116.37,0,0,1,9.06,45.14A116.24,116.24,0,0,1,81.85,119.72Z"/><path class="cls-1" d="M135.36,131.29c.61-2.55,1.17-5.11,1.64-7.69H81.85c-.07.09-.14-.09-.21,0a38.25,38.25,0,0,1,21.85,7.69Z"/><path class="cls-1" d="M113.44,142.26h18.78c.87-2.66,1.68-5.34,2.39-8.06H106.93A39.26,39.26,0,0,1,113.44,142.26Z"/><path class="cls-1" d="M128.17,153.22c1.1-2.64,2.14-5.33,3.09-8.05H115.07a38.58,38.58,0,0,1,3,8.05Z"/><path class="cls-1" d="M119.1,164.19H123c1.37-2.63,2.68-5.32,3.9-8.06h-8.24a39.17,39.17,0,0,1,.53,6.36C119.16,163.06,119.12,163.62,119.1,164.19Z"/><path class="cls-1" d="M118.86,167.1a38.43,38.43,0,0,1-1.35,6.55c1.37-2.12,2.65-4.32,3.89-6.55Z"/></g></g></svg>

After

Width:  |  Height:  |  Size: 3.2 KiB

View File

@@ -0,0 +1,5 @@
<!--
From: https://github.com/cncf/artwork/blob/3e6dbd6b9f3fd3b03e848c10a9921ccc5b5dabf7/archived/pravega/icon/white/pravega-icon-white.svg
Only modified to set the fill color to #8fa4b1.
-->
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 250 250"><defs><style>.cls-1{fill:#8fa4b1;}</style></defs><path class="cls-1" d="M144.07,39.56333c-3.90684,29.5806-58.60322,51.53353-66.2309,60.46363-22.88325-4.651-55.81258-11.16251-58.04511,12.46472,0,0,1.48831,1.86042,9.48809-5.023,6.32548-4.279,2.41864,4.27894,2.41864,4.27894-18.79031,3.34874-27.16219,8.37189-21.58094,15.62746,11.34863-10.6043,36.27819,2.04653,43.16176,19.72052C59.60705,95.1898,147.41888,92.02707,144.07,39.56333Z"/><path class="cls-1" d="M241.184,171.467c-28.46439,23.81335-67.34721,35.162-117.76454,20.27862a39.68309,39.68309,0,0,0,9.53783,27.72018c10.54049,12.1327,28.7828,17.58894,49.6235,8.558-10.206-.15238-18.91249-2.80414-25.92075-8.558a36.937,36.937,0,0,1-4.40407-4.27894C191.69685,224.489,220.53335,208.1173,241.184,171.467Z"/><path class="cls-1" d="M92.11046,219.46581c-8.05235-20.31211-1.11144-45.10813,27.77412-53.394,39.999-13.95315,87.43972-20.27862,90.60246-89.85836-11.34851,28.46451-58.23111,56.7428-100.09055,60.27764,62.32405-26.79009,124.09-67.53321,96.55582-132.27579,7.25557,47.6267-39.06881,69.02153-94.6954,93.393-42.41755,19.90651-55.99859,40.18513-51.16154,72.37037,3.29445,19.16,10.42988,36.25547,20.10159,49.48711,11.08258,15.162,25.4964,25.24932,41.29225,27.53419A46.284,46.284,0,0,1,92.11046,219.46581Z"/><path class="cls-1" d="M122.15481,219.46581c-10.89658-15.44918-8.5136-37.5344,15.962-53.95217-24.92966,5.20927-45.02217,27.34819-36.09218,53.39407.07721.19031.16942.36995.24958.5581,10.35052,24.28334,45.15742,31.14931,70.81847,17.488C150.14172,240.87847,131.385,232.55245,122.15481,219.46581Z"/></svg>

After

Width:  |  Height:  |  Size: 1.8 KiB