Skip to content

Commit

Permalink
Merge pull request #700 from NixOS/drop/stdenv-tagger
Browse files Browse the repository at this point in the history
Drop the stdenv tagger
  • Loading branch information
dasJ authored Dec 30, 2024
2 parents 6cab923 + 96e7d58 commit 1ef14d9
Show file tree
Hide file tree
Showing 4 changed files with 2 additions and 246 deletions.
60 changes: 0 additions & 60 deletions ofborg/src/tagger.rs
Original file line number Diff line number Diff line change
@@ -1,68 +1,8 @@
use crate::maintainers::{Maintainer, MaintainersByPackage};
use crate::outpathdiff::PackageArch;
use crate::tasks;

use tracing::info;

pub struct StdenvTagger {
possible: Vec<String>,
selected: Vec<String>,
}

impl Default for StdenvTagger {
fn default() -> StdenvTagger {
let mut t = StdenvTagger {
possible: vec![
String::from("10.rebuild-linux-stdenv"),
String::from("10.rebuild-darwin-stdenv"),
],
selected: vec![],
};
t.possible.sort();

t
}
}

impl StdenvTagger {
pub fn new() -> StdenvTagger {
Default::default()
}

pub fn changed(&mut self, systems: Vec<tasks::eval::stdenvs::System>) {
for system in systems {
match system {
tasks::eval::stdenvs::System::X8664Darwin => {
self.selected.push(String::from("10.rebuild-darwin-stdenv"));
}
tasks::eval::stdenvs::System::X8664Linux => {
self.selected.push(String::from("10.rebuild-linux-stdenv"));
}
}
}

for tag in &self.selected {
if !self.possible.contains(tag) {
panic!("Tried to add label {tag} but it isn't in the possible list!");
}
}
}

pub fn tags_to_add(&self) -> Vec<String> {
self.selected.clone()
}

pub fn tags_to_remove(&self) -> Vec<String> {
let mut remove = self.possible.clone();
for tag in &self.selected {
let pos = remove.binary_search(tag).unwrap();
remove.remove(pos);
}

remove
}
}

pub struct PkgsAddedRemovedTagger {
possible: Vec<String>,
selected: Vec<String>,
Expand Down
2 changes: 0 additions & 2 deletions ofborg/src/tasks/eval/mod.rs
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
mod generic;
mod nixpkgs;
pub mod stdenvs;

pub use self::generic::GenericStrategy;
pub use self::nixpkgs::NixpkgsStrategy;
pub use self::stdenvs::Stdenvs;
use crate::checkout::CachedProjectCo;
use crate::commitstatus::{CommitStatus, CommitStatusError};
use crate::evalchecker::EvalChecker;
Expand Down
42 changes: 2 additions & 40 deletions ofborg/src/tasks/eval/nixpkgs.rs
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@ use crate::message::evaluationjob::EvaluationJob;
use crate::nix::{self, Nix};
use crate::nixenv::HydraNixEnv;
use crate::outpathdiff::{OutPathDiff, PackageArch};
use crate::tagger::{MaintainerPrTagger, PkgsAddedRemovedTagger, RebuildTagger, StdenvTagger};
use crate::tagger::{MaintainerPrTagger, PkgsAddedRemovedTagger, RebuildTagger};
use crate::tasks::eval::{
stdenvs::Stdenvs, Error, EvaluationComplete, EvaluationStrategy, StepResult,
Error, EvaluationComplete, EvaluationStrategy, StepResult,
};
use crate::tasks::evaluate::{get_prefix, make_gist, update_labels};

Expand Down Expand Up @@ -55,7 +55,6 @@ pub struct NixpkgsStrategy<'a> {
repo: &'a Repository,
gists: &'a Gists,
nix: Nix,
stdenv_diff: Option<Stdenvs>,
outpath_diff: Option<OutPathDiff>,
changed_paths: Option<Vec<String>>,
touched_packages: Option<Vec<String>>,
Expand All @@ -80,7 +79,6 @@ impl<'a> NixpkgsStrategy<'a> {
repo,
gists,
nix,
stdenv_diff: None,
outpath_diff: None,
changed_paths: None,
touched_packages: None,
Expand All @@ -102,32 +100,6 @@ impl<'a> NixpkgsStrategy<'a> {
update_labels(self.issue_ref, &labels, &[]);
}

fn check_stdenvs_before(&mut self, dir: &Path) {
let mut stdenvs = Stdenvs::new(self.nix.clone(), dir.to_path_buf());
stdenvs.identify_before();
self.stdenv_diff = Some(stdenvs);
}

fn check_stdenvs_after(&mut self) {
if let Some(ref mut stdenvs) = self.stdenv_diff {
stdenvs.identify_after();
}
}

fn update_stdenv_labels(&self) {
if let Some(ref stdenvs) = self.stdenv_diff {
let mut stdenvtagger = StdenvTagger::new();
if !stdenvs.are_same() {
stdenvtagger.changed(stdenvs.changed());
}
update_labels(
self.issue_ref,
&stdenvtagger.tags_to_add(),
&stdenvtagger.tags_to_remove(),
);
}
}

fn check_outpaths_before(&mut self, dir: &Path) -> StepResult<()> {
let mut rebuildsniff = OutPathDiff::new(self.nix.clone(), dir.to_path_buf());

Expand Down Expand Up @@ -379,12 +351,6 @@ impl<'a> EvaluationStrategy for NixpkgsStrategy<'a> {
}

fn on_target_branch(&mut self, dir: &Path, status: &mut CommitStatus) -> StepResult<()> {
status.set_with_description(
"Checking original stdenvs",
hubcaps::statuses::State::Pending,
)?;
self.check_stdenvs_before(dir);

status.set_with_description(
"Checking original out paths",
hubcaps::statuses::State::Pending,
Expand Down Expand Up @@ -423,9 +389,6 @@ impl<'a> EvaluationStrategy for NixpkgsStrategy<'a> {
&["2.status: merge conflict".to_owned()],
);

status.set_with_description("Checking new stdenvs", hubcaps::statuses::State::Pending)?;
self.check_stdenvs_after();

status.set_with_description("Checking new out paths", hubcaps::statuses::State::Pending)?;
self.check_outpaths_after()?;

Expand Down Expand Up @@ -568,7 +531,6 @@ impl<'a> EvaluationStrategy for NixpkgsStrategy<'a> {
dir: &Path,
status: &mut CommitStatus,
) -> StepResult<EvaluationComplete> {
self.update_stdenv_labels();

status.set_with_description(
"Calculating Changed Outputs",
Expand Down
144 changes: 0 additions & 144 deletions ofborg/src/tasks/eval/stdenvs.rs

This file was deleted.

0 comments on commit 1ef14d9

Please sign in to comment.