sts-sponsors team mailing list archive
-
sts-sponsors team
-
Mailing list archive
-
Message #05466
Re: [Merge] ~alexsander-souza/maas/+git/maas-release-tools:final_version_checks into ~maas-committers/maas/+git/maas-release-tools:main
Diff comments:
> diff --git a/maas_release_tools/scripts/release_status.py b/maas_release_tools/scripts/release_status.py
> index b1835ce..1d580c8 100644
> --- a/maas_release_tools/scripts/release_status.py
> +++ b/maas_release_tools/scripts/release_status.py
> @@ -1120,6 +1186,114 @@ class SystemIntegrationTests(ReleaseStep):
> return True, [f"check {self._url}"]
>
>
> +class UsnBuilderUpdated(ReleaseStep):
> + def __init__(self, preparer: ReleasePreparer, cwd: str | None = None):
> + super().__init__(preparer, cwd)
> + self.builder_name = f"maas-{self.preparer.version.major}-candidate"
> + self.ref_path = f"refs/tags/{self.preparer.version.version}"
> + self.builder = None
> +
> + @property
> + def title(self) -> str:
> + return "Check if SNAP USN builder is updated"
> +
> + def check(self) -> tuple[bool, str]:
> + self.builder = self.launchpad.get_snap_builder(self.builder_name)
> + if self.builder is None:
> + return False, f"SNAP USN {self.builder_name} builder not found"
> + if self.builder.git_path != self.ref_path:
> + return (
> + False,
> + f"Builder source is {self.builder.git_path}, expected {self.ref_path}",
> + )
> + return True, None
> +
> + def fix(self, doit: bool = False) -> tuple[bool, list[str]]:
> + if self.builder is None:
> + return False, [
> + f" go to https://code.launchpad.net/~{MAAS_USER}/maas/+git/maas/+ref/{self.preparer.version.major}/+new-snap",
> + f" * snap recipe name: maas-{self.preparer.version.major}-candidate",
> + f" * owner: {MAAS_USER}",
> + f" * processors: {', '.join(BUILD_ARCHS)}",
> + " * Source:",
> + f" * Repository: '~{MAAS_USER}/maas/+git/maas' Branch: {self.ref_path}",
> + " * Automatically build when branch changes",
> + f" * Source archive for automatic builds: ~maas/ubuntu/{self.preparer.version.major}",
> + " * Automatically upload to store",
> + f" * Track: {self.preparer.version.major} Risk: Candidate",
> + ]
> + return False, [
> + f" go to https://launchpad.net/~{MAAS_USER}/maas/+snap/{self.builder_name}/+edit",
> + " update source definition:",
> + f" * Repository: '~{MAAS_USER}/maas/+git/maas' Branch: {self.ref_path}",
> + ]
> +
> +
> +class LaunchpadSeriesUpdated(ReleaseStep):
> + def __init__(self, preparer: ReleasePreparer, cwd: str | None = None):
> + super().__init__(preparer, cwd)
> + self._series = None
> +
> + @property
> + def title(self) -> str:
> + return "Lauchpad series status updated"
typo - Launchpad
> +
> + def skip(self) -> bool:
> + return self.preparer.version.grade != "final"
> +
> + def check(self) -> tuple[bool, str | None]:
> + self._series = self.launchpad.get_series_status()
> + for n, (name, status) in enumerate(self._series):
> + match n:
> + case 0:
> + if status != "Active Development":
> + self._series = name
> + return False, "Missing 'Active Development' series"
> + if (
> + self.preparer.version.new_series
> + and self.preparer.version.major == name
> + ):
> + self._series = name
> + return (
> + False,
> + f"{self.preparer.version.major} should be promoted to 'Current Stable Release'",
> + )
> + case 1:
> + if status != "Current Stable Release":
> + self._series = name
> + return False, "Missing 'Current Stable Release' series"
> + if (
> + self.preparer.version.new_series
> + and self.preparer.version.major != name
> + ):
> + self._series = name
> + return (
> + False,
> + f"{self.preparer.version.major} should be promoted to 'Current Stable Release'",
> + )
> + case 2:
> + if status != "Supported":
> + self._series = name
> + return (
> + False,
> + f"{name} series should have 'Supported' status, has '{status}'",
> + )
> + case _:
> + if status != "Obsolete":
> + self._series = name
> + return (
> + False,
> + f"{name} series should have 'Obsolete' status, has '{status}'",
> + )
> + return True, None
> +
> + def fix(self, doit: bool = False) -> tuple[bool, list[str]]:
> + return False, [
> + f"go to https://launchpad.net/maas/{self._series}/+edit",
> + "set correct 'Status'",
> + ]
> +
> +
> def parse_args():
> parser = ArgumentParser(description=__doc__)
> parser.add_argument("version", help="The version of MAAS to be released")
--
https://code.launchpad.net/~alexsander-souza/maas/+git/maas-release-tools/+merge/437920
Your team MAAS Committers is requested to review the proposed merge of ~alexsander-souza/maas/+git/maas-release-tools:final_version_checks into ~maas-committers/maas/+git/maas-release-tools:main.
Follow ups
References