Antonello Tartamo
cbf98966b7
feat(gitea): Add support for SSH agent authentication
...
This change introduces support for authenticating against the Gitea API using an SSH agent. This provides a more secure and convenient alternative to storing private keys or API tokens directly in the configuration file.
Key changes include:
- A new HttpSigner class that can sign HTTP requests using either a local private key or a key from an SSH agent.
- The osc git-obs login add and login update commands now accept --ssh-agent and --ssh-key-agent-pub arguments to configure SSH agent-based authentication.
- The paramiko library is now used for SSH agent communication. It is an optional dependency and only required when using the SSH agent feature.
- The Gitea API connection logic is updated to use the HttpSigner when SSH authentication is configured.
This improves user experience by allowing them to leverage their existing SSH agent setup for Gitea authentication, avoiding the need to handle sensitive credentials manually.
2026-02-08 09:49:54 +01:00
Antonello Tartamo
492c19f307
added --self parameter to fix 'no matching parent repo' error message
2026-01-29 15:34:24 +01:00
Marco Strigl
c7e2920fbc
fix string formatting for id in obs-request.xml
2025-12-23 11:41:28 +01:00
e1e046853f
Merge pull request #2013 from dmach/fix-git-obs-pr-create-no-fork
...
Fix 'git-obs pr create' when the source repo is not a fork
2025-12-18 10:17:36 +01:00
78b85d3a27
Properly error out on invalid 'PR:' references in 'git-obs pr dump'
2025-12-15 19:13:13 +01:00
0bd635fcd6
Add '--target-owner' option to 'git-obs pr create' to specify the target owner explicitly
2025-12-09 13:46:51 +01:00
77f0d94817
Merge pull request #1998 from dmach/git-obs-pr-dump-status
...
Change 'git-obs pr dump' to write STATUS file
2025-12-08 09:27:57 +01:00
411b1c5a8f
Fix 'git-obs pr create' when the source repo is not a fork
2025-12-08 09:24:31 +01:00
611f1a3b96
Change 'git-obs pr dump' to write STATUS file
...
The dump now contains info whether it's complete and safe to use
2025-12-08 09:13:37 +01:00
69a4411588
Add '--target-branch' option to 'git-obs staging search' command
2025-12-02 12:28:11 +01:00
Antonello Tartamo
e9e8dcff70
- Moved get_label_ids to Repo class
...
- Added staging search command to find project PRs with referenced package PRs that have all been approved
2025-12-02 12:28:10 +01:00
414bcccbbb
Change 'git-obs pr dump' to produce directories that match the specified pull request IDs
2025-11-10 17:12:04 +01:00
2b908e04fb
Add '--close-removed' option to 'git-obs staging remove' command
2025-11-10 15:10:21 +01:00
650a1849c9
Fix 'git-obs staging remove' to check if the specified pull requests are part of the project pull request
2025-11-10 15:10:21 +01:00
48fc21911e
Use GitDiffGenerator in 'git-obs staging group' to speed it up
2025-11-10 15:10:21 +01:00
44af44e8d3
Fix 'git-obs staging' commands to be case insensitive as Gitea
2025-11-10 15:06:02 +01:00
a151711c03
Add '--remove-pr-references' to 'git-obs staging group' command
2025-11-10 15:06:02 +01:00
99d2633b09
Add '--cache-dir' option to 'git-obs staging group' command
2025-11-10 15:06:02 +01:00
Antonello Tartamo
e15c0c0f49
Add 'git-obs staging' command for staging multiple package pull requests into a single project pull request
2025-11-10 15:06:02 +01:00
089ad90fae
Move clone_or_update() from 'git-obs pr dump' command to gitea_api.Repo
2025-11-10 14:45:37 +01:00
08ad0319c6
Fix after PullRequestReview cleanup - submitted_at property wasn't renamed to created_at
2025-11-04 18:14:45 +01:00
fb8d1f4c72
Fix 'git-obs pr dump' to skip the dump if the target has the same updated_at timestamp as the pull request in Gitea
2025-10-29 14:33:45 +01:00
4d4bdc1f71
Fix 'git-obs pr dump' to do case insensitive check on owner and repo
2025-10-27 07:57:43 +01:00
e91c904284
Add 'DELETE' to 'git-obs api' allowed methods
2025-10-15 12:19:06 +02:00
Antonello Tartamo
7954b9d11a
Add filtering by label to 'git-obs pr list'
2025-10-15 12:19:06 +02:00
67a711c577
Add commit messages as commented lines to the template in 'git-obs pr create'
2025-10-13 13:24:00 +02:00
fc83822d79
Automatially pull meta after 'git-obs repo clone'
2025-10-10 14:19:14 +02:00
da592aac93
Add 'git-obs meta info' command for printing resolved metadata about the current checkout
2025-10-10 14:19:14 +02:00
87de410542
Move code from 'git-obs meta pull' command to GitStore.pull()
2025-10-10 14:03:29 +02:00
a5afc88561
Add -b/--branch option to 'git-obs repo clone' command
2025-10-10 14:03:29 +02:00
1488f3b873
Introduce GitObsRuntimeError exception and use it where appropriate
2025-10-09 09:54:18 +02:00
2ead4cb313
Mute stderr when creating a worktree in 'git-obs pr review interactive
2025-10-08 16:20:09 +02:00
6672d1a88c
Change 'git-obs pr review interactive' to run pager process as a context manager
...
This avoids problems with broken terminal if an exception occurs in git-obs while the pager is active
2025-10-08 16:20:09 +02:00
ce99ac5e83
Add 'quiet' option to gitea_api.Git.switch()
2025-10-08 16:19:52 +02:00
1c8d5383f2
Fix 'git-obs pr dump' by calling 'git reset' prior fetching the pull request
2025-10-03 09:55:22 +02:00
a139c8d581
Fix checking if a directory contains a git repo in 'git-obs pr dump'
2025-10-02 13:46:08 +02:00
6bad43ad7e
Fix traceback in 'git-obs pr dump' while printing a warning about invalid submodule path
2025-10-02 13:10:58 +02:00
ef3c488d79
Update 'git-obs pr dump' to remove 'metadata' directory with old data before an update
2025-10-02 10:28:44 +02:00
5926857a1d
Change 'git-obs pr review interactive' to write 'merge ok' comment instead of scheduling a merge
2025-10-02 08:48:42 +02:00
fa1832e081
Change 'git-obs pr dump' to skip requests that are not open and then exit with 11
2025-10-02 08:48:42 +02:00
6d88e807bf
Fix 'git-obs pr dump' to support adding more keys to the submodule metadata
2025-10-02 08:48:42 +02:00
e786a634dd
Change 'git-obs pr dump' to show empty timeline entries instead just printing warnings to stderr
2025-10-02 08:48:42 +02:00
fe9c535596
Another take on parsing pull request references
...
Parse only references that start with 'PR:'.
Parse both owner/repo#number and gitea_url/owner/repo/pulls/number
2025-10-02 08:48:42 +02:00
Andrii Nikitin
999c1a716f
Work around submodules without commit
...
Apparently there is some discrepancy between .submodules and git submodules status
> ./git-obs.py repo clone products/SLFO -G ibs
❯ cd SLFO
❯ git submodule status | grep '\bxli\b'
❯ grep -A 1 '\bxli\b' .gitmodules
[submodule "xli"]
path = xli
url = ../../SLFO-pool/xli
[submodule "xmessage"]
2025-10-02 08:48:42 +02:00
Andrii Nikitin
0108e8e70f
pr_dump: Show warning on incorrect submodule url
2025-10-02 08:48:42 +02:00
Andrii Nikitin
85e00ec85e
pr dump: support for short pr references
...
Also work around empty IssueTimelineEntries
2025-10-02 08:48:42 +02:00
Andrii Nikitin
a208031331
Dump referenced PRs to metadata/referenced-pull-requests.json
2025-10-02 08:48:42 +02:00
7ff0cdc6b4
Extend 'git-obs pr dump' to create metadata about submodules and their diff
2025-10-02 08:48:42 +02:00
a1b05a739b
Include timeline in 'git-obs pr dump' results
2025-10-02 08:48:42 +02:00
0e4a7df482
Add '--subdir-fmt' to 'git-obs pr dump' for tweaking the output subdir
2025-10-02 08:48:42 +02:00