MT#61223 build: fix release parameter for trunk-next on builds

Change-Id: I38d860d968f38d1175f46fbeb4db90127524ab1b
master
Victor Seva 6 months ago
parent d6d11a67db
commit 222a9ede9b

@ -2,14 +2,9 @@
pk: 1
fields:
branch: master
built_projects: release-copy-debs-yml
distribution: bookworm
failed_projects: ''
pool_size: 0
projects: 'asterisk-voicemail,backup-tools,bulk-processor,bulk-processor-projects,bootenv,cdr-exporter,cfg-schema,check-tools,cleanup-tools,cloudpbx-sources,codec-chain,csta-testsuite,data-hal,db-schema,deployment-iso,dhtest,documentation,faxserver,installer,kamailio,kamailio-config-tests,keyring,libswrate,libtcap,license-client,lnpd,lua-ngcp-kamailio,mediator,metapackages,monitoring-tools,ngcp-admin-ui,ngcp-api-tools,ngcp-csc-ui,ngcp-cudecs,ngcp-exporter,ngcp-fauditd,ngcp-freeswitch-appserv,ngcp-inventory,ngcp-js-api-client,ngcp-logfs,ngcp-panel,ngcp-prompts,ngcp-rest-api,ngcp-schema,ngcp-status,ngcp-sudo-plugin,ngcp-support,ngcp-task-agent,ngcp-user-framework,ngcp-web-tests-e2e,ngcpcfg,ngcpcfg-api,ngcpcfg-ha,ngrep-sip,prosody,pushd,rate-o-mat,reminder,rtpengine,sems,sems-pbx,sipwise-base,snmp-agent,system-tests,system-tools,templates,upgrade,vmnotify,voisniff-ng,websocket'
release: trunk-next
start_date: '2024-10-14T10:28:01.000Z'
tag: ''
triggered_jobs: ''
triggered_projects: ''
uuid: 53f9e166-4271-4581-ae3d-b3c1bb0bb081

@ -1,4 +1,4 @@
# Copyright (C) 2017-2023 The Sipwise Team - http://sipwise.com
# Copyright (C) 2017-2024 The Sipwise Team - http://sipwise.com
#
# This program is free software: you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the Free
@ -356,6 +356,12 @@ class BuildRelease(models.Model):
return None
return prj
@property
def build_release(self) -> str:
if self.release in ["trunk", "trunk-next"]:
return "trunk"
return self.release
@property
def build_deps(self) -> list:
return self.config.levels_build_deps

@ -1,4 +1,4 @@
# Copyright (C) 2017-2022 The Sipwise Team - http://sipwise.com
# Copyright (C) 2017-2024 The Sipwise Team - http://sipwise.com
#
# This program is free software: you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by the Free
@ -56,7 +56,7 @@ def build_project(pk, project):
url = trigger_build(
"{}-get-code".format(project),
br.uuid,
br.release,
br.build_release,
trigger_branch_or_tag=br.branch_or_tag,
trigger_distribution=br.distribution,
)
@ -74,7 +74,7 @@ def build_resume(pk):
return
params = {
"release_uuid": br.uuid,
"trigger_release": br.release,
"trigger_release": br.build_release,
"trigger_branch_or_tag": br.branch_or_tag,
"trigger_distribution": br.distribution,
}
@ -88,7 +88,7 @@ def build_resume(pk):
prj = br.next
if prj:
params["project"] = "{}-get-code".format(prj)
logger.debug("trigger project", project=params["project"])
logger.debug("trigger project", params=params)
trigger_build(**params)
br.append_triggered(prj)
else:

@ -161,6 +161,13 @@ class BuildReleaseTestCase(BaseTest):
self.assertIsNotNone(config)
self.assertIs(config, build.config)
def test_build_release(self):
br = BuildRelease.objects.get(uuid=self.release_uuid)
self.assertEqual(br.build_release, "release-mr8.1")
br = BuildRelease.objects.create_build_release("AAA", "trunk")
self.assertEqual(br.build_release, "trunk")
def test_branch_or_tag_trunk(self):
build = BuildRelease.objects.create_build_release("AAA", "trunk")
self.assertEqual(build.branch_or_tag, "branch/master")

@ -22,6 +22,7 @@ from build.models import BuildRelease
from build.models import ReleaseConfig
from build.utils import get_simple_release
from build.utils import guess_trunk_filename
from repoapi.models import JenkinsBuildInfo
from repoapi.test.base import BaseTest
FIXTURES_PATH = settings.BASE_DIR.joinpath("build", "fixtures")
@ -36,9 +37,48 @@ class BuildReleaseTestCase(BaseTest):
def test_distribution(self):
br = BuildRelease.objects.get(uuid=self.release_uuid)
self.assertEqual(br.release, "trunk-next")
self.assertEqual(br.distribution, "bookworm")
def test_build_release(self):
br = BuildRelease.objects.get(uuid=self.release_uuid)
self.assertEqual(br.release, "trunk-next")
self.assertEqual(br.build_release, "trunk")
@override_settings(
BUILD_REPOS_SCRIPTS_CONFIG_DIR=FIXTURES_PATH.joinpath("config.next"),
JBI_ALLOWED_HOSTS=["fake.local"],
)
@patch("repoapi.utils.dlfile")
@patch("build.tasks.trigger_build")
class BuildReleaseBuilds(BaseTest):
fixtures = ["test_trunk_next"]
release = "trunk"
release_uuid = "53f9e166-4271-4581-ae3d-b3c1bb0bb081"
project = "ngcpcfg"
def test_jbi_manage_ok_release_job(self, tb, _):
br = BuildRelease.objects.get(uuid=self.release_uuid)
self.assertEqual(br.pool_size, 0)
JenkinsBuildInfo.objects.create(
job_url="http://fake.local/job/release-copy-debs-yml/",
projectname="release-copy-debs-yml",
jobname="release-copy-debs-yml",
tag="UUIDA",
param_release=self.release,
param_release_uuid=self.release_uuid,
buildnumber=1,
result="SUCCESS",
)
params = {
"project": f"{self.project}-get-code",
"release_uuid": self.release_uuid,
"trigger_release": self.release,
"trigger_branch_or_tag": "branch/master",
"trigger_distribution": "bookworm",
}
tb.assert_called_once_with(**params)
@override_settings(
BUILD_REPOS_SCRIPTS_CONFIG_DIR=FIXTURES_PATH.joinpath("config.next")

Loading…
Cancel
Save