Fix unattended package upgrades on FreeBSD (#181)
* Fix unattended package upgrades on FreeBSD * Fix unattended package upgrades on FreeBSD Co-authored-by: Thomas Schönauer <37108907+DottoDev@users.noreply.github.com>
This commit is contained in:
@@ -210,7 +210,7 @@ fn run() -> Result<()> {
|
|||||||
|
|
||||||
#[cfg(target_os = "freebsd")]
|
#[cfg(target_os = "freebsd")]
|
||||||
runner.execute(Step::Pkg, "FreeBSD Packages", || {
|
runner.execute(Step::Pkg, "FreeBSD Packages", || {
|
||||||
freebsd::upgrade_packages(sudo.as_ref(), run_type)
|
freebsd::upgrade_packages(&ctx, sudo.as_ref(), run_type)
|
||||||
})?;
|
})?;
|
||||||
|
|
||||||
#[cfg(target_os = "openbsd")]
|
#[cfg(target_os = "openbsd")]
|
||||||
|
|||||||
@@ -5,6 +5,8 @@ use crate::utils::require_option;
|
|||||||
use color_eyre::eyre::Result;
|
use color_eyre::eyre::Result;
|
||||||
use std::path::PathBuf;
|
use std::path::PathBuf;
|
||||||
use std::process::Command;
|
use std::process::Command;
|
||||||
|
use crate::config::{Step};
|
||||||
|
use crate::execution_context::ExecutionContext;
|
||||||
|
|
||||||
pub fn upgrade_freebsd(sudo: Option<&PathBuf>, run_type: RunType) -> Result<()> {
|
pub fn upgrade_freebsd(sudo: Option<&PathBuf>, run_type: RunType) -> Result<()> {
|
||||||
let sudo = require_option(sudo, String::from("No sudo detected"))?;
|
let sudo = require_option(sudo, String::from("No sudo detected"))?;
|
||||||
@@ -15,13 +17,18 @@ pub fn upgrade_freebsd(sudo: Option<&PathBuf>, run_type: RunType) -> Result<()>
|
|||||||
.status_checked()
|
.status_checked()
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn upgrade_packages(sudo: Option<&PathBuf>, run_type: RunType) -> Result<()> {
|
pub fn upgrade_packages(ctx: &ExecutionContext, sudo: Option<&PathBuf>, run_type: RunType) -> Result<()> {
|
||||||
let sudo = require_option(sudo, String::from("No sudo detected"))?;
|
let sudo = require_option(sudo, String::from("No sudo detected"))?;
|
||||||
print_separator("FreeBSD Packages");
|
print_separator("FreeBSD Packages");
|
||||||
run_type
|
let mut command = run_type.execute(sudo);
|
||||||
.execute(sudo)
|
|
||||||
.args(["/usr/sbin/pkg", "upgrade"])
|
command.args(&["/usr/sbin/pkg", "upgrade"]);
|
||||||
.status_checked()
|
|
||||||
|
if ctx.config().yes(Step::System) {
|
||||||
|
command.arg("-y");
|
||||||
|
}
|
||||||
|
|
||||||
|
command.check_run()
|
||||||
}
|
}
|
||||||
|
|
||||||
pub fn audit_packages(sudo: &Option<PathBuf>) -> Result<()> {
|
pub fn audit_packages(sudo: &Option<PathBuf>) -> Result<()> {
|
||||||
|
|||||||
Reference in New Issue
Block a user