feat: add personal access tokens for service users (#2974)

* feat: add machine tokens

* fix test

* rename to pat

* fix merge and tests

* fix scopes

* fix migration version

* fix test

* Update internal/repository/user/personal_access_token.go

Co-authored-by: Fabi <38692350+fgerschwiler@users.noreply.github.com>

Co-authored-by: Fabi <38692350+fgerschwiler@users.noreply.github.com>
This commit is contained in:
Livio Amstutz
2022-02-08 09:37:28 +01:00
committed by GitHub
parent 3bf9adece5
commit 699fdaf68e
32 changed files with 1838 additions and 30 deletions

View File

@@ -82,7 +82,8 @@ func (t *Token) EventQuery() (*es_models.SearchQuery, error) {
func (t *Token) Reduce(event *es_models.Event) (err error) {
switch event.Type {
case user_es_model.UserTokenAdded:
case user_es_model.UserTokenAdded,
es_models.EventType(user_repo.PersonalAccessTokenAddedType):
token := new(view_model.TokenView)
err := token.AppendEvent(event)
if err != nil {
@@ -112,7 +113,8 @@ func (t *Token) Reduce(event *es_models.Event) (err error) {
user_es_model.UserDeactivated,
user_es_model.UserRemoved:
return t.view.DeleteUserTokens(event.AggregateID, event)
case es_models.EventType(user_repo.UserTokenRemovedType):
case es_models.EventType(user_repo.UserTokenRemovedType),
es_models.EventType(user_repo.PersonalAccessTokenRemovedType):
id, err := tokenIDFromRemovedEvent(event)
if err != nil {
return err