Commit Graph

918 Commits

Author SHA256 Message Date
Andrii Nikitin
430dfc7296 t: refactor dedicated container for pytest
Some checks failed
go-generate-check / go-generate-check (pull_request) Successful in 8s
Integration tests / t (pull_request) Has been cancelled
- remove test-obs service
- mock OBS calls using pytest-httpserver
- dedicated container for pytest to make sure it is in the same network as the services
- remove restart of obs-staging-bot and use new poll interval for it
- rework Makefile targets
2026-03-05 15:23:22 +01:00
Andrii Nikitin
0464324ea7 staging: Add config for poll interval
Some checks failed
go-generate-check / go-generate-check (pull_request) Successful in 44s
Integration tests / t (pull_request) Has been cancelled
Needed for testing
2026-03-05 12:56:03 +01:00
Frank Schreiner
f5a32792e0 t: implemented test_003_refuse_manual_merge
All checks were successful
Integration tests / t (pull_request) Successful in 8m13s
Integration tests / t (push) Successful in 8m18s
Fixes: git-workflow/tests #19
2026-03-05 09:20:25 +01:00
b4945a8ae4 pr(docs): remove ReviewPending and ReviewDone label
All checks were successful
Integration tests / t (push) Successful in 7m35s
Not yet implemented. Will re-add when implemented
2026-03-04 21:57:02 +01:00
1451266ddc README: add missing MergeMode project config option
All checks were successful
Integration tests / t (push) Successful in 9m2s
2026-03-04 16:00:04 +01:00
bd618983e9 obs-staging-bot: Temporary hack for current factory setup
All checks were successful
go-generate-check / go-generate-check (push) Successful in 26s
Integration tests / t (push) Successful in 7m44s
We accept currently the temporary openSUSE:Factory:git not being the
master of openSUSE:Factory:PullRequest. We want to have it at the final
place. Once factory switches to git, content of openSUSE:Factory:git
will move to openSUSE:Factory and we can drop this exception again
2026-03-04 00:06:42 +01:00
c7840ddd47 obs: Adding new linkedbuild mode
All checks were successful
go-generate-check / go-generate-check (push) Successful in 13s
Integration tests / t (push) Successful in 8m8s
2026-03-03 19:58:08 +01:00
3f110ce5f6 Always handle build results as building when dirty flag is set 2026-03-03 19:57:03 +01:00
3a2c87b4af pr: adjusts test expectations.
All checks were successful
go-generate-check / go-generate-check (push) Successful in 14s
Integration tests / t (push) Successful in 8m32s
2026-03-03 18:11:09 +01:00
d0056ed461 tests: fix tests 2026-03-03 18:03:20 +01:00
e5e1b5d9a5 Merge remote-tracking branch 'gitea/t-mergemodes'
Some checks failed
go-generate-check / go-generate-check (push) Successful in 8s
Integration tests / t (push) Failing after 17m21s
2026-03-03 17:29:07 +01:00
Andrii Nikitin
96a908d0be t: Simplify create_gitea_pr using new_branch param
All checks were successful
go-generate-check / go-generate-check (pull_request) Successful in 8s
Integration tests / t (pull_request) Successful in 8m31s
Refactor create_gitea_pr() in common_test_utils.py to leverage the
'new_branch' parameter in the Gitea 'diffpatch' API call. This allows
for automatic creation of the target branch while applying the diff,
eliminating the need for explicit branch creation using the branches
endpoint. This also fixed strange behavior when diffpatch damaged
history of precreated branch
2026-03-03 13:03:32 +01:00
Andrii Nikitin
6aaff89179 t: test MergeMode of workflow-pr
- Add TC-MERGE-008 to 013 for testing MergeMode of workflow-pr
- Synchronize integration/test-plan.md with the actual test implementations
2026-03-03 13:03:00 +01:00
7ec663db27 rabbitmq: dial with timeout
Some checks failed
go-generate-check / go-generate-check (pull_request) Successful in 22s
Integration tests / t (pull_request) Failing after 5m50s
go-generate-check / go-generate-check (push) Successful in 14s
Integration tests / t (push) Successful in 4m26s
Hardcoded 10 second timeout on no connection instead of waiting
forever.
2026-03-03 09:28:44 +01:00
3b83ba96e4 pr: fix spam
Some checks failed
go-generate-check / go-generate-check (push) Successful in 12s
Integration tests / t (push) Failing after 7m46s
2026-03-02 16:55:57 +01:00
3a0445e857 rabbitmq: dial with timeout
Hardcoded 10 second timeout on no connection instead of waiting
forever.
2026-03-02 11:56:35 +01:00
ef5db8ca28 pr: No need to try to merge changes
We can reset current worktree and clobber it with the merged changes.
We want to emulate `git merge -s theirs` strategy while
`git merge -Xtheirs` only picks `theirs` in case of conflicts.
So, resetting the changes and reading exact is sufficient

`git read-tree -u` updates the current work tree so we do not have
unstaged changes.
2026-03-02 11:04:22 +01:00
10f74f681d pr: add function that checks and prepares PRs 2026-03-02 11:04:22 +01:00
b514f9784c pr: add merge modes documentation and config parsing 2026-03-02 11:04:22 +01:00
18435a8820 pr: unit tests for remote PrjGit changes
All checks were successful
go-generate-check / go-generate-check (push) Successful in 26s
Integration tests / t (push) Successful in 5m8s
Added unit tests when remote projectgit changes are allowed or
not allowed.
2026-02-27 16:30:30 +01:00
5f646f4520 Disable temporary comment adding in case of lacking permissions 2026-02-27 16:28:21 +01:00
88aa8c32fd Merge commit 'refs/pull/149/head' of src.opensuse.org:git-workflow/autogits
Some checks failed
go-generate-check / go-generate-check (push) Successful in 11s
Integration tests / t (push) Failing after 7m32s
2026-02-27 15:51:34 +01:00
99d27a48ff Support remote source in pull requests
This requires write permission by maintainer there
2026-02-27 15:50:31 +01:00
Andrii Nikitin
7832ef90c0 t: rename Gitea objects to avoid accidental collision with real repos
All checks were successful
go-generate-check / go-generate-check (pull_request) Successful in 8s
Integration tests / t (pull_request) Successful in 4m38s
Also address potential race condition between requested reviews and sending approvals in TC-MERGE-002
2026-02-27 13:22:26 +01:00
Andrii Nikitin
4691747038 t: add manual merge test and improve robustness
All checks were successful
go-generate-check / go-generate-check (pull_request) Successful in 26s
Integration tests / t (pull_request) Successful in 4m35s
- Add TC-MERGE-002: new end-to-end test for ManualMergeOnly functionality.
- Implement global object tracking in conftest.py to prevent redundant setup.
- Update test-plan.md to reflect current test implementation and skip statuses.
- Improve review tests robustness by using unique filenames and better assertions.
- Configure SLFO staging-main and manual-merge branches for monitored tests.
- Move flaky NoProjectGitPR tests from xfail to skip.
2026-02-27 02:30:47 +01:00
af2ff0bdd2 common: check for old pending request reviews
Timeline events will contain Reviews and ReviewRequests and
ReviewDismissed events. We need to handle this at event parsing
time and not to punt this to the query functions later on.

If the last event is an actual review, we use this.
If no review, check if last event associated with the reviewer
is Dismissed or Requested Review but not if a dismissed Review
preceeds it.
2026-02-27 01:03:26 +01:00
5669083388 pr: handle case of nil user in reviews
All checks were successful
go-generate-check / go-generate-check (push) Successful in 21s
Integration tests / t (push) Successful in 6m29s
This can happen when a review request is assigned automatically via
CODEOWNERS or perhaps the requesting user has account removed.
2026-02-26 13:15:58 +01:00
Andrii Nikitin
cb9131a5dd t: add init process to all services
Some checks failed
Integration tests / t (pull_request) Successful in 7m0s
Integration tests / t (push) Failing after 6m58s
Enable init: true for all services in podman-compose.yml to ensure
proper signal handling and zombie process reaping within containers.
2026-02-26 12:17:29 +01:00
582df2555b Merge branch 'staging-updates'
Some checks failed
go-generate-check / go-generate-check (push) Successful in 29s
Integration tests / t (push) Has been cancelled
2026-02-25 14:48:56 +01:00
4179fb4c7b Merge branch 'new-packages'
Some checks failed
go-generate-check / go-generate-check (push) Successful in 18s
Integration tests / t (push) Failing after 2m13s
PR: #108
2026-02-25 12:51:32 +01:00
7f6bd4bc32 pr: Always allow maintainer edits in new packages
Some checks failed
Integration tests / t (pull_request) Failing after 9m50s
2026-02-25 12:50:26 +01:00
f1b807fbf6 common: replace legacy logger with standard impl 2026-02-25 12:50:26 +01:00
e5441bf489 test: refactor loggin in unit tests
Use test logger when running under a test.
2026-02-25 12:50:21 +01:00
8078ca7d4d pr: small refactor 2026-02-25 12:48:48 +01:00
8721aa2c14 pr: test coverage 2026-02-25 12:48:48 +01:00
18cb2d7135 pr: test coverage 2026-02-25 12:48:48 +01:00
40317bf527 pr: small refactor 2026-02-25 12:48:48 +01:00
dc78b352b3 pr: close associated PR if issue closed. 2026-02-25 12:48:48 +01:00
b8740047c9 common: test fixes after rebase 2026-02-25 12:48:48 +01:00
788028a426 pr: no need to create PR if already exists. 2026-02-25 12:48:48 +01:00
bb86f377b6 pr: Only update issues if they are actually open 2026-02-25 12:48:48 +01:00
b30c393ec0 pr: fix tests 2026-02-25 12:48:48 +01:00
defe379e62 pr: use top 20 commits as base, if available 2026-02-25 12:48:48 +01:00
9f405c2022 common: add test for cloning hashes 2026-02-25 12:48:48 +01:00
75760efbc1 common: add test for directory listing 2026-02-25 12:48:48 +01:00
dd4098cdc6 pr: test updated issue ref
If issue is a SHA ref, and then it's updated, we need to make
sure that the branch is also updated.
2026-02-25 12:48:48 +01:00
31299b2d61 pr: move functions around 2026-02-25 12:48:48 +01:00
0915e6c35f pr: fix tests 2026-02-25 12:48:48 +01:00
85927ad76d pr: new package handling 2026-02-25 12:48:48 +01:00
711c2d677a pr: make sure new repos have fork/parent relationship
If new target repo is "reparented", it will have correct relationship
here. Otherwise PR creation will fail
2026-02-25 12:48:47 +01:00