mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-30 15:05:27 +00:00
publishing: use deps in replace directive in rules
The list of dependencies for a repo right now is equal to the list of deps mentioned in the require directive in the repo's go.mod file. This means that we loose all transitive deps mentioned in the replace directive in go.mod files. So instead use all deps mentioned in the replace directive, and prune any extra dependencies. Also add a test for this in verify-publishing-bot.py
This commit is contained in:
parent
2109c1a7a3
commit
ab3cdd57b7
@ -34,7 +34,7 @@ def get_gomod_dependencies(rootdir, components):
|
||||
for dep in components:
|
||||
if dep == component:
|
||||
continue
|
||||
if ("k8s.io/" + dep + " v0.0.0") not in line:
|
||||
if ("k8s.io/" + dep + " =>") not in line:
|
||||
continue
|
||||
print("\t"+dep)
|
||||
if dep not in all_dependencies[component]:
|
||||
@ -80,10 +80,12 @@ def main():
|
||||
if rule["destination"] not in gomod_dependencies:
|
||||
raise Exception("missing go.mod for %s" % rule["destination"])
|
||||
processed_repos.append(rule["destination"])
|
||||
processed_deps = []
|
||||
for dep in set(gomod_dependencies[rule["destination"]]):
|
||||
found = False
|
||||
if "dependencies" in branch:
|
||||
for dep2 in branch["dependencies"]:
|
||||
processed_deps.append(dep2["repository"])
|
||||
if dep2["branch"] != "master":
|
||||
raise Exception("Looking for master branch and found : %s for destination", dep2,
|
||||
rule["destination"])
|
||||
@ -96,6 +98,9 @@ def main():
|
||||
raise Exception("Please add %s as a dependency under destination %s in %s" % (dep, rule["destination"], rules_file))
|
||||
else:
|
||||
print(" found dependency %s" % dep)
|
||||
extraDeps = set(processed_deps) - set(gomod_dependencies[rule["destination"]])
|
||||
if len(extraDeps) > 0:
|
||||
raise Exception("extra dependencies in rules for %s: %s" % (rule["destination"], ','.join(str(s) for s in extraDeps)))
|
||||
items = set(gomod_dependencies.keys()) - set(processed_repos)
|
||||
if len(items) > 0:
|
||||
raise Exception("missing rules for %s" % ','.join(str(s) for s in items))
|
||||
|
@ -216,8 +216,6 @@ rules:
|
||||
branch: master
|
||||
- repository: code-generator
|
||||
branch: master
|
||||
- repository: component-base
|
||||
branch: master
|
||||
required-packages:
|
||||
- k8s.io/code-generator
|
||||
- source:
|
||||
@ -234,8 +232,6 @@ rules:
|
||||
branch: release-12.0
|
||||
- repository: code-generator
|
||||
branch: release-1.15
|
||||
- repository: component-base
|
||||
branch: release-1.15
|
||||
required-packages:
|
||||
- k8s.io/code-generator
|
||||
smoke-test: |
|
||||
@ -354,8 +350,6 @@ rules:
|
||||
branch: master
|
||||
- repository: client-go
|
||||
branch: master
|
||||
- repository: component-base
|
||||
branch: master
|
||||
- source:
|
||||
branch: release-1.15
|
||||
dir: staging/src/k8s.io/sample-cli-plugin
|
||||
@ -370,8 +364,6 @@ rules:
|
||||
branch: release-1.15
|
||||
- repository: client-go
|
||||
branch: release-12.0
|
||||
- repository: component-base
|
||||
branch: release-1.15
|
||||
- destination: kube-proxy
|
||||
library: true
|
||||
branches:
|
||||
@ -406,8 +398,6 @@ rules:
|
||||
branch: master
|
||||
- repository: api
|
||||
branch: master
|
||||
- repository: component-base
|
||||
branch: master
|
||||
- source:
|
||||
branch: release-1.15
|
||||
dir: staging/src/k8s.io/kubelet
|
||||
@ -418,8 +408,6 @@ rules:
|
||||
branch: release-1.15
|
||||
- repository: api
|
||||
branch: release-1.15
|
||||
- repository: component-base
|
||||
branch: release-1.15
|
||||
- destination: kube-scheduler
|
||||
library: true
|
||||
branches:
|
||||
@ -430,8 +418,6 @@ rules:
|
||||
dependencies:
|
||||
- repository: apimachinery
|
||||
branch: master
|
||||
- repository: apiserver
|
||||
branch: master
|
||||
- repository: component-base
|
||||
branch: master
|
||||
- source:
|
||||
@ -442,8 +428,6 @@ rules:
|
||||
dependencies:
|
||||
- repository: apimachinery
|
||||
branch: release-1.15
|
||||
- repository: apiserver
|
||||
branch: release-1.15
|
||||
- repository: component-base
|
||||
branch: release-1.15
|
||||
- destination: kube-controller-manager
|
||||
@ -456,8 +440,6 @@ rules:
|
||||
dependencies:
|
||||
- repository: apimachinery
|
||||
branch: master
|
||||
- repository: apiserver
|
||||
branch: master
|
||||
- repository: component-base
|
||||
branch: master
|
||||
- source:
|
||||
@ -468,8 +450,6 @@ rules:
|
||||
dependencies:
|
||||
- repository: apimachinery
|
||||
branch: release-1.15
|
||||
- repository: apiserver
|
||||
branch: release-1.15
|
||||
- repository: component-base
|
||||
branch: release-1.15
|
||||
- destination: cluster-bootstrap
|
||||
@ -532,6 +512,8 @@ rules:
|
||||
branch: master
|
||||
- repository: apimachinery
|
||||
branch: master
|
||||
- repository: client-go
|
||||
branch: master
|
||||
- repository: cloud-provider
|
||||
branch: master
|
||||
- source:
|
||||
@ -544,6 +526,8 @@ rules:
|
||||
branch: release-1.15
|
||||
- repository: apimachinery
|
||||
branch: release-1.15
|
||||
- repository: client-go
|
||||
branch: release-12.0
|
||||
- repository: cloud-provider
|
||||
branch: release-1.15
|
||||
- destination: legacy-cloud-providers
|
||||
@ -630,6 +614,8 @@ rules:
|
||||
dir: staging/src/k8s.io/kubectl
|
||||
name: master
|
||||
dependencies:
|
||||
- repository: api
|
||||
branch: master
|
||||
- repository: apimachinery
|
||||
branch: master
|
||||
- repository: client-go
|
||||
@ -640,6 +626,8 @@ rules:
|
||||
name: release-1.15
|
||||
go: 1.12.5
|
||||
dependencies:
|
||||
- repository: api
|
||||
branch: release-1.15
|
||||
- repository: apimachinery
|
||||
branch: release-1.15
|
||||
- repository: client-go
|
||||
|
Loading…
Reference in New Issue
Block a user