Skip to content

go-license: Generic Go License Check - #35

Merged
oxzi merged 1 commit into
mainfrom
go-license-init
Nov 4, 2026
Merged

oxzi merged 1 commit into
mainfrom
go-license-init

Conversation

Extract our Go License Check action used in Icinga DB, Notifications,
K8s, and the Go Library into a reusable action.
@oxzi
oxzi merged commit add1091 into main Nov 4, 2026
13 checks passed
@oxzi
oxzi deleted the go-license-init branch November 4, 2026 09:16
@julianbrost

Copy link
Copy Markdown
Member

Hopping in with a quick question: you're leaving the list of allowed licenses within the individual projects and there's already some divergence there. We need a distinction whether our repo is MIT or GPL licensed, but say for all GPLv3+ repos, the list of allowed licenses should be identical. Have you considered specifying a target license as an input (i.e. all licenses used should be compatible with that) and selecting a preset of allowed licenses from that?

@oxzi

oxzi commented Nov 4, 2026

Copy link
Copy Markdown
Member Author

Just in time 🙃

I thought about detecting the current license from the LICENSE file and selecting an allow list of accepted licenses, but then decided against adding it here - at least at the moment. Since IANAL, I am even unsure which licenses are compatible and our downstream repos are currently under three different licenses (where two, iirc, should be relicensed to GPLv3).

@julianbrost

Copy link
Copy Markdown
Member

At least Icinga DB and Icinga Notifications both are GPL-2.0-only and already have diverging lists of allowed licenses in their checks. I doubt that's intentional in the sense that's necessary, but probably happened because after the list was duplicated, one repo added another compatible license. If that action took compatible_with: GPL-2.0-only (or similar) as an input and the list would be in this repo, all repos using it would automatically benefit of an extended list.

@oxzi

oxzi commented Nov 4, 2026

Copy link
Copy Markdown
Member Author

Fair enough; I will create a follow up PR to generalize this :)

1 similar comment
@oxzi

This comment was marked as duplicate.

oxzi added a commit that referenced this pull request Nov 4, 2026
Drop the "allowed_licenses" input and decide based on the project's main
license. The current allow lists are copied from our repositories.

---

References
#35 (comment)

Checked downstream:

- Icinga/icingadb#1233
- Icinga/icinga-notifications#603
- Icinga/icinga-go-library#279
- Icinga/icinga-kubernetes#290
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cla/signed CLA is signed by all contributors of a PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants