mirror of
https://github.com/hanzoai/ingress.git
synced 2026-10-26 02:47:15 +00:00
Hanzo CI/CD / cicd (push) Failing after 9m46s
CI/CD / cicd (push) Failing after 10m4s
Most of it was stale, not cosmetic: the docs taught `TRAEFIK_*` env, `traefik.http.*` labels, `traefik.ingress.kubernetes.io/` annotations, `.traefik.yml` plugins and `traefik_*` metrics. This binary answers to `INGRESS_*`, `ingress.http.*`, `ingress.kubernetes.io/`, `.ingress.yml` and `ingress.*` — a reader following the old text configured nothing. Two were worse than stale. Gateway API examples gave `group: traefik.io` for an IngressService backendRef, which kubernetes.go:1265 refuses against hanzo.ai. The contributing guide built with `github.com/traefik/ingress` ldflags against a module that is `github.com/hanzoai/ingress/v3`. script/code-gen.sh globs `hanzo.ai_*.yaml` and matched nothing — the per-CRD dumps had been deleted and never regenerated, so `cat` failed the script under `set -e`. controller-gen v0.19.0 restores all ten; they concatenate byte-for-byte into the committed definition and fixture. CHANGELOG.md is untouched: 6,789 lines of imported release history, where a rewrite would falsify the record rather than rebrand it. `@traefiklabs/faency`, `traefik/whoami`, k3s's `--disable=traefik`, the `traefik.io` CRD group and the MIT attribution stay — upstream's addresses, not our brand. Co-authored-by: Hanzo Dev <[email protected]>
59 lines
1.2 KiB
CSS
59 lines
1.2 KiB
CSS
/* Ingress Hub Menu icon base styles */
|
|
.menu-icon {
|
|
height: 18px;
|
|
width: 18px;
|
|
vertical-align: middle;
|
|
margin-left: 6px;
|
|
transition: all 0.2s ease;
|
|
filter: drop-shadow(0 1px 1px rgba(0,0,0,0.1));
|
|
display: inline;
|
|
white-space: nowrap;
|
|
}
|
|
|
|
/* Ensure parent container keeps items inline */
|
|
.nav-link-with-icon {
|
|
white-space: nowrap !important;
|
|
display: inline-flex !important;
|
|
align-items: center !important;
|
|
}
|
|
|
|
/* Hover effects */
|
|
.menu-icon:hover {
|
|
transform: scale(1.05);
|
|
opacity: 0.8;
|
|
}
|
|
|
|
/* Tablet responsive */
|
|
@media (max-width: 1024px) {
|
|
.menu-icon {
|
|
height: 14px;
|
|
width: 14px;
|
|
margin-left: 4px;
|
|
}
|
|
}
|
|
|
|
/* Mobile responsive */
|
|
@media (max-width: 768px) {
|
|
.menu-icon {
|
|
height: 12px;
|
|
width: 12px;
|
|
margin-left: 3px;
|
|
vertical-align: middle;
|
|
}
|
|
|
|
/* Keep mobile navigation items inline */
|
|
.nav-link-with-icon {
|
|
display: inline-flex !important;
|
|
align-items: center !important;
|
|
width: auto !important;
|
|
}
|
|
}
|
|
|
|
/* High DPI displays */
|
|
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
|
|
.menu-icon {
|
|
image-rendering: -webkit-optimize-contrast;
|
|
image-rendering: crisp-edges;
|
|
}
|
|
}
|