···19192020 // temporarily, to add users to default knot and spindle2121 AppPassword string `env:"APP_PASSWORD"`2222+2323+ // uhhhh this is because knot1 is under icy's did2424+ TmpAltAppPassword string `env:"ALT_APP_PASSWORD, required"`2225}23262427type OAuthConfig struct {
+20-18
appview/oauth/handler/handler.go
···354354}355355356356var (357357- tangledHandle = "tangled.sh"358358- tangledDid = "did:plc:wshs7t2adsemcrrd4snkeqli"357357+ tangledDid = "did:plc:wshs7t2adsemcrrd4snkeqli"358358+ icyDid = "did:plc:hwevmowznbiukdf6uk5dwrrq"359359+359360 defaultSpindle = "spindle.tangled.sh"360361 defaultKnot = "knot1.tangled.sh"361362)···380379 }381380382381 log.Printf("adding %s to default spindle", did)383383- session, err := o.createAppPasswordSession()382382+ session, err := o.createAppPasswordSession(o.config.Core.AppPassword, tangledDid)384383 if err != nil {385384 log.Printf("failed to create session: %s", err)386385 return···393392 CreatedAt: time.Now().Format(time.RFC3339),394393 }395394396396- if err := session.putRecord(record); err != nil {397397- log.Printf("failed to add member to default knot: %s", err)395395+ if err := session.putRecord(record, tangled.SpindleMemberNSID); err != nil {396396+ log.Printf("failed to add member to default spindle: %s", err)398397 return399398 }400399···417416 }418417419418 log.Printf("adding %s to default knot", did)420420- session, err := o.createAppPasswordSession()419419+ session, err := o.createAppPasswordSession(o.config.Core.TmpAltAppPassword, icyDid)421420 if err != nil {422421 log.Printf("failed to create session: %s", err)423422 return···430429 CreatedAt: time.Now().Format(time.RFC3339),431430 }432431433433- if err := session.putRecord(record); err != nil {432432+ if err := session.putRecord(record, tangled.KnotMemberNSID); err != nil {434433 log.Printf("failed to add member to default knot: %s", err)435434 return436435 }···442441type session struct {443442 AccessJwt string `json:"accessJwt"`444443 PdsEndpoint string444444+ Did string445445}446446447447-func (o *OAuthHandler) createAppPasswordSession() (*session, error) {448448- appPassword := o.config.Core.AppPassword447447+func (o *OAuthHandler) createAppPasswordSession(appPassword, did string) (*session, error) {449448 if appPassword == "" {450449 return nil, fmt.Errorf("no app password configured, skipping member addition")451450 }452451453453- resolved, err := o.idResolver.ResolveIdent(context.Background(), tangledDid)452452+ resolved, err := o.idResolver.ResolveIdent(context.Background(), did)454453 if err != nil {455455- return nil, fmt.Errorf("failed to resolve tangled.sh DID %s: %v", tangledDid, err)454454+ return nil, fmt.Errorf("failed to resolve tangled.sh DID %s: %v", did, err)456455 }457456458457 pdsEndpoint := resolved.PDSEndpoint()459458 if pdsEndpoint == "" {460460- return nil, fmt.Errorf("no PDS endpoint found for tangled.sh DID %s", tangledDid)459459+ return nil, fmt.Errorf("no PDS endpoint found for tangled.sh DID %s", did)461460 }462461463462 sessionPayload := map[string]string{464464- "identifier": tangledHandle,463463+ "identifier": did,465464 "password": appPassword,466465 }467466 sessionBytes, err := json.Marshal(sessionPayload)···493492 }494493495494 session.PdsEndpoint = pdsEndpoint495495+ session.Did = did496496497497 return &session, nil498498}499499500500-func (s *session) putRecord(record any) error {500500+func (s *session) putRecord(record any, collection string) error {501501 recordBytes, err := json.Marshal(record)502502 if err != nil {503503 return fmt.Errorf("failed to marshal knot member record: %w", err)504504 }505505506506 payload := map[string]any{507507- "repo": tangledDid,508508- "collection": tangled.KnotMemberNSID,507507+ "repo": s.Did,508508+ "collection": collection,509509 "rkey": tid.TID(),510510 "record": json.RawMessage(recordBytes),511511 }···528526 client := &http.Client{Timeout: 30 * time.Second}529527 resp, err := client.Do(req)530528 if err != nil {531531- return fmt.Errorf("failed to add user to default Knot: %w", err)529529+ return fmt.Errorf("failed to add user to default service: %w", err)532530 }533531 defer resp.Body.Close()534532535533 if resp.StatusCode != http.StatusOK {536536- return fmt.Errorf("failed to add user to default Knot: HTTP %d", resp.StatusCode)534534+ return fmt.Errorf("failed to add user to default service: HTTP %d", resp.StatusCode)537535 }538536539537 return nil