Make the list of resources to delete configurable
This commit is contained in:
parent
0e54444ab7
commit
839816978d
4 changed files with 9 additions and 5 deletions
|
|
@ -182,7 +182,7 @@ class Controller:
|
|||
f"but the corresponding deployment {build_name} is gone. "
|
||||
f"Deleting all build resources."
|
||||
)
|
||||
await k8s.delete_resources(build_name)
|
||||
await k8s.delete_deployment_resources(build_name)
|
||||
continue
|
||||
if job_kind == "initialize":
|
||||
if job.status.active:
|
||||
|
|
|
|||
|
|
@ -243,14 +243,13 @@ async def deploy(kubefiles_path: Path | None, deployment_vars: DeploymentVars) -
|
|||
)
|
||||
|
||||
|
||||
async def delete_resources(build_name: str) -> None:
|
||||
# TODO delete all resources with runboat/build label
|
||||
async def delete_deployment_resources(build_name: str) -> None:
|
||||
await _kubectl(
|
||||
[
|
||||
"-n",
|
||||
settings.build_namespace,
|
||||
"delete",
|
||||
"configmap,deployment,ingress,job,secret,service,pvc",
|
||||
settings.deployment_resource_types,
|
||||
"-l",
|
||||
f"runboat/build={build_name}",
|
||||
"--wait=false",
|
||||
|
|
|
|||
|
|
@ -319,7 +319,7 @@ class Build(BaseModel):
|
|||
|
||||
async def on_cleanup_succeeded(self) -> None:
|
||||
_logger.info(f"Cleanup job succeeded for {self}, deleting resources.")
|
||||
await k8s.delete_resources(self.name)
|
||||
await k8s.delete_deployment_resources(self.name)
|
||||
_logger.debug("Removing finalizer for %s.", self)
|
||||
await self._patch(remove_finalizers=True, not_found_ok=True)
|
||||
|
||||
|
|
|
|||
|
|
@ -84,6 +84,11 @@ class Settings(BaseSettings):
|
|||
additional_footer_html: str = ""
|
||||
# Disable posting of statuses to GitHub commits
|
||||
disable_commit_statuses: bool = False
|
||||
# Resources generated by the kubefiles templates in 'deployment' mode. These
|
||||
# are used when undeploying a build to delete all resources.
|
||||
deployment_resource_types: str = (
|
||||
"deployment,service,ingress,configmap,secret,pvc,job"
|
||||
)
|
||||
|
||||
def get_build_settings(self, repo: str, target_branch: str) -> list[BuildSettings]:
|
||||
for repo_settings in self.repos:
|
||||
|
|
|
|||
Loading…
Reference in a new issue