action #164937
Updated by livdywan 5 months ago
## Observation
We got these warnings on o3:
```
[2024-08-05T08:35:30.423569Z] [warn] [pid:24853] warning: refname '1b53ef6634d0d8e838c9726d42877bfd4dd13541' is ambiguous.
Git normally never creates a ref that ends with 40 hex characters
because it will be ignored when you just specify 40-hex. These refs
may be created by mistake. For example,
git switch -c $br $(git rev-parse ...)
where "$br" is somehow empty and a 40-hex ref is created. Please
examine these refs and maybe delete them. Turn this message off by
running "git config advice.objectNameWarning false"
fatal: Invalid revision range 1b53ef6634d0d8e838c9726d42877bfd4dd13541..6f8ff6e139e08ebeca34a51aa51143921653b586
[2024-08-05T08:35:30.435643Z] [warn] [pid:24853] warning: refname '1b53ef6634d0d8e838c9726d42877bfd4dd13541' is ambiguous.
Git normally never creates a ref that ends with 40 hex characters
because it will be ignored when you just specify 40-hex. These refs
may be created by mistake. For example,
git switch -c $br $(git rev-parse ...)
where "$br" is somehow empty and a 40-hex ref is created. Please
examine these refs and maybe delete them. Turn this message off by
running "git config advice.objectNameWarning false"
fatal: Invalid revision range 1b53ef6634d0d8e838c9726d42877bfd4dd13541..6f8ff6e139e08ebeca34a51aa51143921653b586
```
Here is a corresponding section of /var/log/openqa with the actual command:
```
[2024-08-05T10:26:20.652021Z] [info] [pid:30689] cmd returned 0
[2024-08-05T10:26:20.652173Z] [info] [pid:30689] Running cmd: timeout 20 git -C /var/lib/openqa/share/tests/opensuse diff --stat 7b4632e65cada83af24014845739c035866cd936..15f409df25ea44bd977dd619ad5e9d882fb8089
f
[2024-08-05T10:26:20.677917Z] [debug] [pid:30689] warning: refname '7b4632e65cada83af24014845739c035866cd936' is ambiguous.
Git normally never creates a ref that ends with 40 hex characters
because it will be ignored when you just specify 40-hex. These refs
may be created by mistake. For example,
git switch -c $br $(git rev-parse ...)
where "$br" is somehow empty and a 40-hex ref is created. Please
examine these refs and maybe delete them. Turn this message off by
running "git config advice.objectNameWarning false"
```
Running that command
```
timeout 20 git -C /var/lib/openqa/share/tests/opensuse diff --stat 7b4632e65cada83af24014845739c035866cd936..15f409df25ea44bd977dd619ad5e9d882fb8089
```
reproduces the warning.
I quickly looked up which job has that git ref:
https://openqa.opensuse.org/tests/4380936
But there are many more with `CASEDIR: https://github.com/os-autoinst/os-autoinst-distri-opensuse.git#1b53ef6634d0d8e838c9726d42877bfd4dd13541`
## Acceptance criteria
* *AC1:** No more git warnings
## Suggestions
* Check if there's a real problem, if not just turn it off as git suggests
* on o3: /var/lib/openqa/share/tests/opensuse do `git branch -a` and you will see a lot of git shas
* This happens when the `git_auto_clone` feature is on and a job runs with `CASEDIR=https://github.com/os-autoinst/os-autoinst-distri-opensuse.git#abcdef
* Lookup if we can use/generate refs according to what git considers valid
* Check how the cloning was implemented by @dheidler and if there is a bug
* https://github.com/os-autoinst/openQA/blob/master/lib/OpenQA/Task/Git/Clone.pm#L91