fix: Replace / in branch names with _ when generating tags

This commit is contained in:
Gerald Pinder 2025-06-01 14:31:10 -04:00
parent 6be68f6b2f
commit 85362c90e1
2 changed files with 16 additions and 11 deletions

View file

@ -44,7 +44,9 @@ impl CiDriver for GithubDriver {
.platform(opts.platform)
.call()
.inspect(|v| trace!("os_version={v}"))?;
let ref_name = get_env_var(GITHUB_REF_NAME).inspect(|v| trace!("{GITHUB_REF_NAME}={v}"))?;
let ref_name = get_env_var(GITHUB_REF_NAME)
.inspect(|v| trace!("{GITHUB_REF_NAME}={v}"))?
.replace('/', "_");
let short_sha = {
let mut short_sha = get_env_var(GITHUB_SHA).inspect(|v| trace!("{GITHUB_SHA}={v}"))?;
short_sha.truncate(7);
@ -160,7 +162,8 @@ mod test {
use super::GithubDriver;
const COMMIT_SHA: &str = "1234567";
const BR_REF_NAME: &str = "test";
const BR_REF_NAME: &str = "feature/test";
const BR_REF_NAME_CLEAN: &str = "feature_test";
fn setup_default_branch() {
setup();
@ -269,15 +272,15 @@ mod test {
#[case::branch(
setup_branch,
None,
string_vec![format!("{COMMIT_SHA}-41"), "br-test-41"],
string_vec![format!("{COMMIT_SHA}-41"), format!("br-{BR_REF_NAME_CLEAN}-41")],
)]
#[case::branch_alt_tags(
setup_branch,
Some(bon::vec![TEST_TAG_1, TEST_TAG_2]),
string_vec![
format!("br-{BR_REF_NAME}-{TEST_TAG_1}-41"),
format!("br-{BR_REF_NAME_CLEAN}-{TEST_TAG_1}-41"),
format!("{COMMIT_SHA}-{TEST_TAG_1}-41"),
format!("br-{BR_REF_NAME}-{TEST_TAG_2}-41"),
format!("br-{BR_REF_NAME_CLEAN}-{TEST_TAG_2}-41"),
format!("{COMMIT_SHA}-{TEST_TAG_2}-41"),
],
)]

View file

@ -54,8 +54,9 @@ impl CiDriver for GitlabDriver {
let timestamp = blue_build_utils::get_tag_timestamp();
let short_sha =
get_env_var(CI_COMMIT_SHORT_SHA).inspect(|v| trace!("{CI_COMMIT_SHORT_SHA}={v}"))?;
let ref_name =
get_env_var(CI_COMMIT_REF_NAME).inspect(|v| trace!("{CI_COMMIT_REF_NAME}={v}"))?;
let ref_name = get_env_var(CI_COMMIT_REF_NAME)
.inspect(|v| trace!("{CI_COMMIT_REF_NAME}={v}"))?
.replace('/', "_");
let tags = match (
Self::on_default_branch(),
@ -172,7 +173,8 @@ mod test {
use super::GitlabDriver;
const COMMIT_SHA: &str = "1234567";
const BR_REF_NAME: &str = "test";
const BR_REF_NAME: &str = "feature/test";
const BR_REF_NAME_CLEAN: &str = "feature_test";
fn setup_default_branch() {
setup();
@ -277,15 +279,15 @@ mod test {
#[case::branch(
setup_branch,
None,
string_vec![format!("{COMMIT_SHA}-41"), "br-test-41"],
string_vec![format!("{COMMIT_SHA}-41"), format!("br-{BR_REF_NAME_CLEAN}-41")],
)]
#[case::branch_alt_tags(
setup_branch,
Some(bon::vec![TEST_TAG_1, TEST_TAG_2]),
string_vec![
format!("br-{BR_REF_NAME}-{TEST_TAG_1}-41"),
format!("br-{BR_REF_NAME_CLEAN}-{TEST_TAG_1}-41"),
format!("{COMMIT_SHA}-{TEST_TAG_1}-41"),
format!("br-{BR_REF_NAME}-{TEST_TAG_2}-41"),
format!("br-{BR_REF_NAME_CLEAN}-{TEST_TAG_2}-41"),
format!("{COMMIT_SHA}-{TEST_TAG_2}-41"),
],
)]