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

Adapt to changes needed for gardener-node-agent #33

Open
wants to merge 6 commits into
base: master
Choose a base branch
from

Conversation

rfranzke
Copy link

@rfranzke rfranzke commented Oct 26, 2023

How to categorize this PR?
/area os
/kind enhancement

What this PR does / why we need it:
This PR adapts this extension to changes needed for gardener-node-agent, see gardener/gardener#8647 for more information.

Which issue(s) this PR fixes:
Part of gardener/gardener#8023

Special notes for your reviewer:
Kindly use the dedicated commits for an easier review process.

/cc @oliver-goetz @majst01 @Gerrit91

Release note:

This extension is now prepared to run with an enabled `UseGardenerNodeAgent` feature gate.
It is assumed that `gardenlet`'s `UseGardenerNodeAgent` is turned on by default if the feature gate is not explicitly set. Hence, make sure to use at least Gardener `v1.82` when using this extension version.

@majst01
Copy link
Contributor

majst01 commented Oct 26, 2023

Hi @rfranzke

This is awsome, thanks so much, will take a while til we can test this.

@rfranzke
Copy link
Author

Why does the build fail? Running golangci-lint run -p bugs --timeout=3m ./... locally on this branch doesn't yield any findings 👀

@majst01
Copy link
Contributor

majst01 commented Oct 26, 2023

Why does the build fail? Running golangci-lint run -p bugs --timeout=3m ./... locally on this branch doesn't yield any findings 👀

It says NewActuator is undefined ?

@rfranzke
Copy link
Author

I see this 😄 But all occurrences of NewActuator are fine, even go run and go test work, and local golangci-lint run does not find anything. I'm confused...

@majst01
Copy link
Contributor

majst01 commented Oct 26, 2023

I see this 😄 But all occurrences of NewActuator are fine, even go run and go test work, and local golangci-lint run does not find anything. I'm confused...

I check

@majst01
Copy link
Contributor

majst01 commented Oct 26, 2023

I updated master with this PR: #34 which compiled nicely, please pull master and it should compile your PR again.

Guess its because the newer linter does not like go-1.20 ??

@rfranzke
Copy link
Author

/hold
Let's wait with the merge for another revendoring with gardener/gardener@v1.83.0 containing gardener/gardener#8707

@rfranzke
Copy link
Author

/unhold
gardener/gardener@v1.84 has been released today, and this PR has been adapted accordingly.

/cc @Gerrit91 @majst01 @oliver-goetz
I think it's ready to be merged now. Please proceed with the review, thank you!

@majst01
Copy link
Contributor

majst01 commented Nov 30, 2023

/unhold gardener/gardener@v1.84 has been released today, and this PR has been adapted accordingly.

/cc @Gerrit91 @majst01 @oliver-goetz I think it's ready to be merged now. Please proceed with the review, thank you!

Will do, thanks a lot

Copy link

@oliver-goetz oliver-goetz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nice PR 😄

pkg/controller/operatingsystemconfig/actuator.go Outdated Show resolved Hide resolved
pkg/controller/operatingsystemconfig/actuator.go Outdated Show resolved Hide resolved
@majst01 majst01 mentioned this pull request Jan 29, 2024
1 task
@Gerrit91
Copy link
Contributor

/ok-to-build

@Gerrit91
Copy link
Contributor

The controller cannot be deployed because the installation helm chart is now broken. 😅

    message: 'chart rendering process failed: render error in "os-metal/templates/deployment.yaml":
      template: os-metal/templates/deployment.yaml:34:52: executing "os-metal/templates/deployment.yaml"
      at <.Values.leaderElection.resourceLock>: nil pointer evaluating interface {}.resourceLock'
    reason: ChartCannotBeRendered

@rfranzke
Copy link
Author

The controller cannot be deployed because the installation helm chart is now broken. 😅

Sorry for the delay, this should be fixed now. I've also rebased to master and incorporated the changes from #38 into this PR. Please check again :)

@rfranzke
Copy link
Author

Please note, there is one more addition:

It is assumed that gardenlet's UseGardenerNodeAgent is turned on by default if the feature gate is not explicitly set. Hence, make sure to use at least Gardener v1.82 when using this extension version.

@rfranzke
Copy link
Author

Later, when this PR is merged, and then even later, after you upgraded to gardener/gardener@v1.92 or higher, you can take a look at gardener/gardener-extension-os-gardenlinux#161 for what needs to be done to remove the migration/legacy code.

In the future, the `pkg/controller/operatingsystemconfig/generator` package can be deleted entirely
- no longer use `oscommon` package
- prepare for new OSC contract when `UseGardenerNodeAgent` feature gate is enabled
- no longer depend on `oscommon` package
It is `true` by default (even when `UseGardenerNodeAgent` is not provided via `.Values.gardener.gardenlet.featureGates` in the Helm chart values).
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

Successfully merging this pull request may close these issues.

None yet

4 participants