kubernetes/ingress-nginx

Missing MakeFile build-plugin, and build-plugin bash script

threadcrux opened this issue · 8 comments

Build-plugin associated build files are missing

.PHONY: build-plugin
build-plugin:  ## Build ingress-nginx krew plugin.
        @build/run-in-docker.sh \
                PKG=$(PKG) \
                ARCH=$(ARCH) \
                COMMIT_SHA=$(COMMIT_SHA) \
                REPO_INFO=$(REPO_INFO) \
                TAG=$(TAG) \
                GOBUILD_FLAGS=$(GOBUILD_FLAGS) \
                build/build-plugin.sh

Originally in the sourcecode way back here https://github.com/kubernetes/ingress-nginx/blob/controller-v0.35.0/Makefile#L89

Also the build-plugin.sh build script here:

https://github.com/kubernetes/ingress-nginx/blob/controller-v0.35.0/build/build-plugin.sh

Related to this issue: #12226

This issue is currently awaiting triage.

If Ingress contributors determines this is a relevant issue, they will accept it by applying the triage/accepted label and provide further guidance.

The triage/accepted label can be added by org members by writing /triage accepted in a comment.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

Related:
#8812
#7627

This is where it was removed and it looks like nothing has happened since. Why was the Makefile and Build scripts removed? Automated build systems should utilize Makefiles and build scripts not post-exempt them.

We have a large amount of unruly bash scripts, so minimizing them is helpful for us.

Looks like the Github action has been failing for plugin releases.

https://github.com/kubernetes/ingress-nginx/actions/runs/11344873927/job/31550537152#step:7:26

This is the first time its been brought to our attention. Unfortunately this doesn't get a lot eyes on it when were releasing new versions.

@strongjz Alright message received, thanks for the response. There's a separate issue that's related to this with being unable to install the plugin.

As far as builds go, I would recommend a path that allows for manual building and automated builds in these cases. Bash scripts aside, it would be nice to have some sort of pathway to do a manual build that's documented

Oops, didn't see this was a simple go build. Manual path exists in some fashion but isn't easy for end users, referencing issues around this as examples of that claim.

It would be good to add that to documentation for starters

Mage is how we have moved some of release processes from bash. If you were to move the manual build to mage, that could be a good step forward and a PR I would approve.

https://github.com/kubernetes/ingress-nginx/tree/main/magefiles

https://magefile.org/

We have a large amount of unruly bash scripts, so minimizing them is helpful for us.

Looks like the Github action has been failing for plugin releases.

https://github.com/kubernetes/ingress-nginx/actions/runs/11344873927/job/31550537152#step:7:26

This is the first time its been brought to our attention. Unfortunately this doesn't get a lot eyes on it when were releasing new versions.

let me rephrase, the first i have seen it, looks like there was an earlier issue, We miss a lot of GitHub messages, that is why we tell folks to talk to us in slack or come to the community meeting.

We have a large amount of unruly bash scripts, so minimizing them is helpful for us.
Looks like the Github action has been failing for plugin releases.
https://github.com/kubernetes/ingress-nginx/actions/runs/11344873927/job/31550537152#step:7:26
This is the first time its been brought to our attention. Unfortunately this doesn't get a lot eyes on it when were releasing new versions.

let me rephrase, the first i have seen it, looks like there was an earlier issue, We miss a lot of GitHub messages, that is why we tell folks to talk to us in slack or come to the community meeting.

Heard, I wasn't shooting shot at you guys, I'm trying to tie together the related info

Mage is how we have moved some of release processes from bash. If you were to move the manual build to mage, that could be a good step forward and a PR I would approve.

https://github.com/kubernetes/ingress-nginx/tree/main/magefiles

https://magefile.org/

I'll take a look