Add RubyGems update (#217)

This commit is contained in:
Julien ITARD
2022-11-24 20:21:03 +01:00
committed by GitHub
parent 25c5057171
commit 3c1dda0c39
3 changed files with 22 additions and 1 deletions

View File

@@ -130,6 +130,7 @@ pub enum Step {
Remotes, Remotes,
Restarts, Restarts,
Rtcl, Rtcl,
RubyGems,
Rustup, Rustup,
Scoop, Scoop,
Sdkman, Sdkman,

View File

@@ -360,6 +360,9 @@ fn run() -> Result<()> {
runner.execute(Step::Composer, "composer", || generic::run_composer_update(&ctx))?; runner.execute(Step::Composer, "composer", || generic::run_composer_update(&ctx))?;
runner.execute(Step::Krew, "krew", || generic::run_krew_upgrade(run_type))?; runner.execute(Step::Krew, "krew", || generic::run_krew_upgrade(run_type))?;
runner.execute(Step::Gem, "gem", || generic::run_gem(&base_dirs, run_type))?; runner.execute(Step::Gem, "gem", || generic::run_gem(&base_dirs, run_type))?;
runner.execute(Step::RubyGems, "rubygems", || {
generic::run_rubygems(&base_dirs, run_type)
})?;
runner.execute(Step::Julia, "julia", || generic::update_julia_packages(&ctx))?; runner.execute(Step::Julia, "julia", || generic::update_julia_packages(&ctx))?;
runner.execute(Step::Haxelib, "haxelib", || generic::run_haxelib_update(&ctx))?; runner.execute(Step::Haxelib, "haxelib", || generic::run_haxelib_update(&ctx))?;
runner.execute(Step::Sheldon, "sheldon", || generic::run_sheldon(&ctx))?; runner.execute(Step::Sheldon, "sheldon", || generic::run_sheldon(&ctx))?;

View File

@@ -70,7 +70,7 @@ pub fn run_gem(base_dirs: &BaseDirs, run_type: RunType) -> Result<()> {
let gem = utils::require("gem")?; let gem = utils::require("gem")?;
base_dirs.home_dir().join(".gem").require()?; base_dirs.home_dir().join(".gem").require()?;
print_separator("RubyGems"); print_separator("Gems");
let mut command = run_type.execute(gem); let mut command = run_type.execute(gem);
command.arg("update"); command.arg("update");
@@ -83,6 +83,23 @@ pub fn run_gem(base_dirs: &BaseDirs, run_type: RunType) -> Result<()> {
command.status_checked() command.status_checked()
} }
pub fn run_rubygems(base_dirs: &BaseDirs, run_type: RunType) -> Result<()> {
let gem = utils::require("gem")?;
base_dirs.home_dir().join(".gem").require()?;
print_separator("RubyGems");
let mut command = run_type.execute(gem);
command.arg("update --system");
if env::var_os("RBENV_SHELL").is_none() {
debug!("Detected rbenv. Avoiding --user-install");
command.arg("--user-install");
}
command.status_checked()
}
pub fn run_haxelib_update(ctx: &ExecutionContext) -> Result<()> { pub fn run_haxelib_update(ctx: &ExecutionContext) -> Result<()> {
let haxelib = utils::require("haxelib")?; let haxelib = utils::require("haxelib")?;