Commit Graph

67 Commits

Author SHA1 Message Date
rng-dynamics
247e1a865d
feature: Github bridge mutation rate limit (#694)
Unified handling of rate limiting of github graphql api
2021-09-14 22:22:28 +02:00
Sascha
1939949fcd
CLI: Add non-interactive option to interactive commands (#651)
* Add option to skip the AvatarURL input request

Using an empty string for the avatar cli flag e.g. `git-bug user create
-a ""` will still result in a prompt. As the avatar URL is an optional
option, it should be possible to skip asking for it entirely.
Otherwise automated user creation via a script must make use of pipe hacks.

* Add global --non-interactive cmdline option

* Replace --skipAvatar for --non-interactive option

* Cmd BugAdd: respect non-interactive option

* Cmd bridge configure: respect non-interactive opt

* Cmd CommentAdd: respect non-interactive option

* Cmd CommentEdit: respect non-interactive option

* Cmd TermUI: respect non-interactive option

* Cmd TitleEdit: respect non-interactive option

* Remove global non-interactive option

* Cmd UserCreate: Use local non-interactive option

* Cmd BugAdd: Use local non-interactive option

* Cmd BridgeConfigure: Use local non-interactive option

* Cmd CommentAdd: Use local non-interactive option

* Cmd CommentEdit: Use local non-interactive option

* Cmd TermUI: Drop non-interactive option

It should be obviouse that the termui is an interactive command.

* Cmd TitleEdit: Use local non-interactive option

* Update docs

* Bridge GitHub: respect non-interactive option

* Bridge GitLab: respect non-interactive option

* Bridge Jira: respect non-interactive and token opt

* Fix failing compilation

* Bridge launchpad: respect non-interactive option

* bridge: isNonInteractive --> interactive

Co-authored-by: Michael Muré <batolettre@gmail.com>
2021-05-09 11:14:45 +02:00
Ellis Clayton
a80152890c
Support new GitHub token formats
GitHub have introduced a new format for their access tokens, which does
not fit within the rules of the previous regex. For the time being, the
previous token format is still being supported by GitHub, so it makes
sense to continue allowing legacy tokens.

https://github.blog/changelog/2021-03-04-authentication-token-format-updates/
2021-04-19 10:21:11 +10:00
Michael Muré
10a80f1888
github: minor cleanups 2021-04-09 13:07:45 +02:00
Michael Muré
9daa8ad04d
github: minor cleanups 2020-11-22 14:04:47 +01:00
Alexander Scharinger
eded1f10c4 Change return type from map to struct 2020-11-18 09:18:32 +01:00
rng-dynamics
09a845855f Apply suggestions from code review
Co-authored-by: Michael Muré <batolettre@gmail.com>
2020-11-18 09:18:32 +01:00
Alexander Scharinger
1b889a9198 Revision of Github bridge device authorization grant 2020-11-18 09:18:32 +01:00
Alexander Scharinger
dfa3a6d849 Replace Github authorization endpoint by device authorization grant
Fix issue #484
2020-11-18 09:18:32 +01:00
Michael Muré
3ecbf8db28 bridge: store credentials in the Keyring instead of the git config 2020-09-29 20:42:21 +02:00
Michael Muré
fe38af05a8
github: correct casing for user provided login 2020-02-29 15:04:48 +01:00
Michael Muré
8ef6438fb4
Merge pull request #341 from MichaelMure/bridges-default-login
bridge: record the login used during the configure and use it as default credential
2020-02-23 19:20:45 +01:00
Michael Muré
dc21ad0892
use regex.MustCompile instead of dealing with the error 2020-02-23 14:23:34 +01:00
Michael Muré
0cebe1e57e
bridge: record the login used during the configure and use it as default credential
fix #338
2020-02-23 14:20:54 +01:00
Michael Muré
87b97ca4b2
bridges: more refactor and cleanup 2020-02-15 13:45:14 +01:00
Michael Muré
fe3d5c95e4
bridges: massive refactor
- automatic flag validation and warning
- generalized prompt
- cleanups
2020-02-15 02:55:19 +01:00
Michael Muré
34083de0df auth: refactor and introduce Login and LoginPassword, salt IDs 2020-02-12 23:37:57 +01:00
Michael Muré
bd7b50bc86
github/gitlab: many fixes and improvments at the config step 2020-02-10 01:22:01 +01:00
Michael Muré
646fd681ff
it compiles \o/ 2020-02-08 17:19:57 +01:00
Michael Muré
f515b9a129
gitlab also compile 2020-02-08 17:19:57 +01:00
Michael Muré
74e9114410
more more wip 2020-02-08 17:19:57 +01:00
Michael Muré
8da522d97a
wip 2020-02-08 17:18:30 +01:00
Michael Muré
b950c2580d
more wip 2020-02-08 17:18:30 +01:00
Michael Muré
ae2f942ef9
more wip 2020-02-08 17:18:28 +01:00
Michael Muré
26f0152384
WIP 2020-02-08 17:18:28 +01:00
Michael Muré
db893494bb
input: better reusable prompt functions 2020-02-08 17:18:27 +01:00
Michael Muré
864d3ed335 bridge: allow to configure and pull without having set a user first
- init() only the importer or exporter as required
- assign a "default user" user Id to credentials at creation if no user has been set
- "bridge auth": also display the user
- "bridge auth show": adapt to a potential "default user" user Id
- "bridge configure": allow to run without a user set
- "bridge pull": allow to run without a user set
- "user adopt": replace "default user" by the actual user id when run
2019-12-25 23:25:39 +01:00
amine
f6b4830c0b bridge/gitlab: support self-hosted GitLab instance 2019-12-10 21:05:55 +01:00
Michael Muré
b92adfcb5f
bridge: huge refactor to accept multiple kind of credentials 2019-12-08 21:28:27 +01:00
Michael Muré
4f856d6f78 gitlab: configurator cleanup 2019-11-26 20:45:32 +01:00
Michael Muré
afe69d0c93 github: tiny cleanups of the configurator 2019-11-26 19:46:50 +01:00
amine
7cb772095e bridge: trim inputs during bridge configuration 2019-11-25 15:08:48 +01:00
amine
da2d7970cd bridge/core: add LoadTokensWithTarget and LoadOrCreateToken functions
bridge/github: global fixes
2019-11-24 14:38:44 +01:00
amine
09db1cda71 commands: add bridge configure --token-id flag 2019-11-23 19:26:27 +01:00
amine
b1d0f48f67 bridge/github: configuration with global configs 2019-11-23 19:20:32 +01:00
Michael Muré
5054b8dbdc github: sort project candidate in the interactive wizard 2019-11-19 21:12:10 +01:00
amine
8ffe2a9b03 bridge/launchpad: add missing metadata
bridge: use a specific key for origin metadata
2019-11-19 19:16:16 +01:00
Amine Hilaly
f3d8da1075
bridge/core: add tokenStdin field to bridgeParams
commands: move tokenStdin handling logic to bridge.Configure
2019-09-02 09:44:00 +02:00
Amine Hilaly
46f9573444
bridge/github: move cleaners to where is called 2019-09-01 00:04:01 +02:00
Amine Hilaly
be94780315
bridge/github: recover terminal state in password prompts
commands: error if a token is provide but not the bridge name and target
2019-08-31 23:02:20 +02:00
Amine
65d7ce7c05
commands: enhance flag description
bridge/github: improve configuration logic

Co-Authored-By: Michael Muré <batolettre@gmail.com>
2019-08-31 23:02:20 +02:00
Amine Hilaly
0381400bfd
commands: read token from stdin in bridge configuration
bridge: improve bridge config validation
2019-08-31 23:02:20 +02:00
Amine Hilaly
b82ef04452
fix index out of range panic in github configuration 2019-07-23 17:20:42 +02:00
Amine Hilaly
c805142f00
bridge/github: fix project visibility prompt 2019-07-22 18:14:40 +02:00
Michael Muré
5b1a8cdefa
bridge: use a single KeyTarget constant for all bridges 2019-07-07 11:10:58 +02:00
Amine Hilaly
319b648d0f
Naming fixes 2019-06-16 23:02:59 +02:00
Amine Hilaly
f70e775dbd
Store bridge type alongside the other params in the config 2019-06-15 02:33:06 +02:00
Amine Hilaly
a6c8b6b78d
make token visible in configuration process
validate token
global fixes
2019-06-07 01:17:59 +02:00
Amine
c52a467302
Allow cancelling configuration
correct error message

Co-Authored-By: Michael Muré <batolettre@gmail.com>
2019-06-05 01:40:37 +02:00
Amine Hilaly
ebebdfdf35
add unit tests for launchpad bridge configuration
add tests for validateUsername in Github bridge
panic when compile regex fail
2019-05-30 12:50:21 +02:00