Change:
This is a Feature Request The red banner introduced with is too intrusive. Most Kubernetes users don't actually care about this deadline, and there is no way to dismiss it. What would you like to be A simple "dismiss" button that sets a cookie to hide the banner in any future visit, like other websites do. Why is this needed I'd argue that most users of the website just want to read the documentation, they aren't going to submit images to that registry, so the warning isn't useful. Comments This could be reused for future banners.
This issue is currently awaiting triage. SIG Docs takes a lead on issue triage for this website, but any Kubernetes member can accept issues by applying the label. The label can be by org members by writing in a comment. <detailsInstructions for interacting with me using PR comments are available . If you have questions or suggestions related to my behavior, please file an issue against the repository. </details
/retitle Add way to dismiss banners in the K8s website We would implement this for all banners, not just red ones.
/area web-development
oh boy! are you in for a ride!!
xref: also, here's how i deal with papercuts on the web -
Which all banners are you referring to? I'd be willing to take this up.
There's a banner displayed now, it looks like this: ! Imagine if you could click to acknowledge that you'd read it and didn't want to see it again for a fortnight. (separately: does feel relevant - ruled out taking action as they don't plan to push a container image there, which I think reveals a misunderstanding. I think it's worth repeating banners every couple of weeks in case it helps a message to land better).
Which ...To clarify for anyone reading: This banner applies to pulling / downloading container images from the Kubernetes project, this banner is aimed at users, not Kubernetes developers. Nobody can push directly to either of these hosts and the change isn't related to pushing / submitting images.
Thanks and for the explanation! I'll take this up and try to resolve this. /assign
are you working on this issue? I would like to help if you want. Do let me know.
Yes, I'm working on this still, mostly it's completed already, but thanks for the offer!
The Kubernetes project currently lacks enough contributors to adequately respond to all issues. This bot triages un-triaged issues according to the following rules: After 90d of inactivity, is applied After 30d of inactivity since was applied, is applied After 30d of inactivity since was applied, the issue is closed You can: Mark this issue as fresh with Close this issue with Offer to help out with [Issue Triage][1] Please send feedback to sig-contributor-experience at . /lifecycle stale [1]:
As XDRAGON2002 seems is evaded, could you please proceed?
/remove-lifecycle stale
I'll help with this, it seems like a good feature
/sig docs

Discussion:
} } <ins> /* Announcements */ </ins> #announcement { > * { color: inherit;

padding-top: 40px; } <ins> // Don't show announcements when javascript is not available html.no-js body div#announcement { display: none; } #announcement.display-announcement{ display: block; // apply this class to display the announcement } </ins> #announcement { // default background is blue; overrides are possible color: #fff; <ins> display: none; // When javascript is available, Let javascript handle the state of the announcement </ins> .announcement-main { margin-left: auto; margin-right: auto;

[blog_post_show_more] other = "Show More Posts..." <ins> [banner_acknowledgement] other = "Hide this notice" </ins> [caution] other = "Caution:"

{{- if or (eq .endTime nil ) (gt ( time .endTime ) now ) -}} {{- if not $announcementShown -}} {{- $announcementShown = true -}} <del> <div lang="en" id="announcement" style="background-color: #3371e3; color: #fff; {{ .style | safeCSS }}"> </del> <ins> <div lang="en" id="announcement" data-announcement-name="{{ .name }}" style="background-color: #3371e3; color: #fff; {{ .style | safeCSS }}"> </ins> <aside> <div class="announcement-main" data-nosnippet> {{ if .title }}

</h4> {{ end }} <p>{{ .message | markdownify }}</p> <ins> {{- if eq .dismissParameters.dismissible true -}} <button  id="banner-dismiss" class="button" style="display: none;" data-ttl={{ .dismiss_params.showDismissedAnnouncementAfterDays }}>{{ T "banner_acknowledgement" }}</button> <!-- Only JS enabled users will see this button --> {{- end -}} </ins> </div> </aside> </div>

<!--script src="https://unpkg.com/split.js/dist/split.min.js"></script--> <script src="/js/split-1.6.0.js" intregrity="sha384-0blL3GqHy6+9fw0cyY2Aoiwg4onHAtslAs4OkqZY7UQBrR65/K4gI+hxLdWDrjpz"></script> <ins> <!--Script for dismissing banners/notices--> <script defer src="{{ "js/dismiss_banner.js" | relURL }}"></script> </ins> {{- if or (.HasShortcode "table")  (.HasShortcode "feature-gate-table") -}} <script defer src="{{ "js/sortable-table.js" | relURL }}"></script> {{- end -}}

<ins> $(document).ready(function() { function setCookie(name, value, days) { let expires = ""; let date = new Date(); // Create a new Date object let dateToSecond = 24 * 60 * 60 * 1000; if (days) { date.setTime(date.getTime() + days * dateToSecond); // Modify the existing Date object expires = "; expires=" + date.toUTCString(); } document.cookie = name + "=" + value + expires + "; path=/"; } function getCookie(name) { let matches = document.cookie.match(new RegExp( "(?:^|; )" + name.replace(/([.$?*|{}()[]/+^])/g, '$1') + "=([^;]*)" )); return matches ? "true" : undefined; } /* Check the presence of a cookie */ let announcement = document.querySelector("#announcement"); let token = `announcement_ack_${announcement.getAttribute('data-announcement-name').replace(/s/g, '_')}`; // Generate the unique token for announcement let acknowledged = getCookie(token); if (acknowledged === "true") { announcement.remove(); // Remove the announcement if the cookie is set } else { announcement.classList.add('display-announcement') // Display the announcement if the cookie is not set } /* Driver code to set the cookie */ let button = document.querySelector('#banner-dismiss'); button.removeAttribute('style'); button.addEventListener('click', function() { setCookie(token, "true", button.getAttribute('data-ttl')); // Set a cookie with time to live parameter announcement.remove(); }); }); </ins>