Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release v0.17 #1875

Open
10 of 24 tasks
marquiz opened this issue Sep 16, 2024 · 3 comments
Open
10 of 24 tasks

Release v0.17 #1875

marquiz opened this issue Sep 16, 2024 · 3 comments

Comments

@marquiz
Copy link
Contributor

marquiz commented Sep 16, 2024

Release Checklist

  • All OWNERS must LGTM the release proposal
  • Verify that the changelog in this issue is up-to-date
  • Create new release branch (release v0.$MAJ.0)
    • an OWNER creates a vanilla release branch with
      git branch release-0.$MAJ master
    • An OWNER pushes the new release branch with
      git push release-0.$MAJ
    • Create Prow pre-submit job configuration for the new release branch in K8s
      test-infra, submit a PR
    • Wait for the test-infra Prow config PR to be merged
  • Run hack/prepare-release.sh $VERSION to turn references to point to the upcoming release
    (README, deployment templates, docs configuration, test/e2e flags), submit a PR against the release branch
  • An OWNER prepares a draft release
    • Create a draft release at Github releases page
    • Write the change log into the draft release
    • Upload release artefacts generated by prepare-release.sh script above to the draft release
  • An OWNER runs
    git tag -s -m "NFD release $VERSION" $VERSION
  • An OWNER pushes the tag with
    git push $VERSION
  • Submit a PR against k8s.io, updating registry.k8s.io/images/k8s-staging-nfd/images.yaml to promote the container images (both "full" and "minimal" variants) to production
  • Wait for the PR to be merged and verify that the image (registry.k8s.io/nfd/node-feature-discovery:$VERSION) is available.
  • Publish the draft release prepared at the Github releases page
    which will also trigger a Helm repo index update to add the latest release
  • Add a link to the tagged release in this issue.
  • Send an announcement email to dev@kubernetes.io with the subject [ANNOUNCE] node-feature-discovery $VERSION is released
    • Add a link to the release announcement in this issue
  • Update README in master branch
    • Update references e.g. by running hack/prepare-release.sh $VERSION but only committing README.md, and,
      submit a PR
    • Wait for the PR to be merged
  • Create an unannotated devel tag in the master branch, on the first commit that gets merged after the release branch has been created (presumably the README update commit above), and, push the tag:
    DEVEL=v0.$(($MAJ+1)).0-devel; git tag $DEVEL master && git push $DEVEL
    This ensures that the devel builds on the master branch will have a meaningful version number.
  • Close this issue

Changelog

Configurable restrictions (EXPERIMENTAL)

The nfd-master now has configuration options to restrict its capabilities, that is what modifications on node objects are allowed. See the nfd-master configuration file reference for documentation.

Image compatibity (EXPERIMENTAL)

There is an initiative to utilize NFD to implement system compatibility requirements for container images. As part of this work NFD v0.17 includes nfd command line client for validating systems against image compatibility manifests. See the documentation for more details, including examples how to create container images with compatibility manifests and validating nodes.

See the enhancement proposal for background information and design details.

Miscellaneous

Scalability

This release contains numerous fixes to fix issues and improve the scalability of NFD in larger clusters.

DMI features

Discovery of system.dmiid.product_name was added.

CPUID features

Support for new CPUID flags were added, including AMX-FP8 and AVX-VNNI-INT16.

Helm chart

Numerous small improvements in the NFD Helm chart, mainly new configuration values (see chart parameters for documentation).

Deprecations

gRPC API

The NodeFeature API is now GA and the legacy gRPC API has been completely removed.

Hooks

Support for hooks (deprecated in v0.12 has been removed. See the customization guide for replacements.

ResourceLabels config option

The resourceLabels configuration file option (and the corresponding -resource-labels flag), deprecated in v0.13 were removed. Use NodeFeatureRule object's extendedResources field instead.

Dynamic configuration

Dynamic runt-time reconfiguration was removed. This improves robustness and consistency as some of the configuration options did not support dynamic configuration.

Upcoming changes

The separate metric and health ports will be united behind a single port and the corresponding Helm chart values will be removed in NFD v0.18. This should be invisible to most users.

List of PRs

@ArangoGutierrez
Copy link
Contributor

We ready? @marquiz

@xagent003
Copy link

bump... any update on this release? We're eagerly awaiting for some of the cache sync and scaling fixes surrounding large # of nodes and NodeFeatureCRs

@marquiz
Copy link
Contributor Author

marquiz commented Dec 17, 2024

@xagent003 imminent 😊 We were waiting for #1932 which has now been updated and I need to review.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

9 participants