MCPcopy Create free account
hub / github.com/Qovery/engine / unlock_release

Method unlock_release

lib-engine/src/cmd/helm.rs:403–428  ·  view source on GitHub ↗
(&self, chart: &ChartInfo, envs: &[(&str, &str)])

Source from the content-addressed store, hash-verified

401 }
402
403 fn unlock_release(&self, chart: &ChartInfo, envs: &[(&str, &str)]) -> Result<(), HelmError> {
404 match self.check_release_exist(chart, envs) {
405 Ok(release) if release.is_locked() && release.version <= 1 => {
406 info!("Helm lock detected. Uninstalling it as it is the first version and rollback is not possible");
407 self.uninstall(chart, envs, &CommandKiller::never(), &mut |_| {}, &mut |_| {})?;
408 }
409 Ok(release) if release.is_locked() => {
410 info!("Helm lock detected. Forcing rollback to previous version");
411 // We want to rollback only to unlock the release.
412 // So we don't care to wait for its success or not
413 let chart = {
414 let mut chart = chart.clone();
415 chart.timeout_in_seconds = 10;
416 chart
417 };
418 self.rollback(&chart, envs)?;
419 }
420 Ok(release) => {
421 // Happy path nothing to do
422 debug!("Helm release status: {:?}", release)
423 }
424 Err(_) => {} // Happy path nothing to do
425 }
426
427 Ok(())
428 }
429
430 /// List deployed helm charts
431 ///

Callers 3

upgradeMethod · 0.80
upgrade_rawMethod · 0.80

Calls 5

check_release_existMethod · 0.80
is_lockedMethod · 0.80
uninstallMethod · 0.80
rollbackMethod · 0.80
cloneMethod · 0.45

Tested by

no test coverage detected