upload/koji: don't pass task_id to cg_init_build

Contrary to our assumption, we cannot initialize the build with the
link to the task. We can only update the link once the build has
completed.

This seems like a bug in koji, but we keep it like this for now.
This commit is contained in:
Tom Gundersen 2020-09-10 21:35:19 +01:00
parent 9a4c66db03
commit e52830f530
7 changed files with 15 additions and 8 deletions

View file

@ -29,6 +29,7 @@ type ImageBuildExtra struct {
type ImageBuild struct {
BuildID uint64 `json:"build_id"`
TaskID uint64 `json:"task_id"`
Name string `json:"name"`
Version string `json:"version"`
Release string `json:"release"`
@ -216,15 +217,13 @@ func (k *Koji) Logout() error {
}
// CGInitBuild reserves a build ID and initializes a build
func (k *Koji) CGInitBuild(taskID *int, name, version, release string) (*CGInitBuildResult, error) {
func (k *Koji) CGInitBuild(name, version, release string) (*CGInitBuildResult, error) {
var buildInfo struct {
TaskID *int `xmlrpc:"task_id,omitempty"`
Name string `xmlrpc:"name"`
Version string `xmlrpc:"version"`
Release string `xmlrpc:"release"`
}
buildInfo.TaskID = taskID
buildInfo.Name = name
buildInfo.Version = version
buildInfo.Release = release

View file

@ -56,7 +56,7 @@ func TestKojiRefund(t *testing.T) {
}
}()
initResult, err := k.CGInitBuild(nil, "name", "verison", "release")
initResult, err := k.CGInitBuild("name", "verison", "release")
require.NoError(t, err)
err = k.CGCancelBuild(initResult.BuildID, initResult.Token)
@ -65,7 +65,7 @@ func TestKojiRefund(t *testing.T) {
err = k.CGCancelBuild(initResult.BuildID, initResult.Token)
require.Error(t, err)
initResult, err = k.CGInitBuild(nil, "name", "verison", "release")
initResult, err = k.CGInitBuild("name", "verison", "release")
require.NoError(t, err)
err = k.CGFailBuild(initResult.BuildID, initResult.Token)
@ -135,6 +135,7 @@ func TestKojiImport(t *testing.T) {
// Import the build
build := koji.ImageBuild{
TaskID: 1,
Name: buildName,
Version: "1",
Release: "1",
@ -178,7 +179,7 @@ func TestKojiImport(t *testing.T) {
},
}
initResult, err := k.CGInitBuild(nil, build.Name, build.Version, build.Release)
initResult, err := k.CGInitBuild(build.Name, build.Version, build.Release)
require.NoError(t, err)
build.BuildID = uint64(initResult.BuildID)