hcengineering / hcengineering/huly-selfhost

Github OAuth App Error - CR DB expects "last_name" field

Open
#295 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Shell
Stars
3.5k
Forks
469
PR merge metrics
No merged PRs in 30d

Description

Hi all,

Having some issues with the Github Integration. I cleared my entire setup to try again from scratch, beginning with the Github OAuth setup.

Reproduction steps:

Start with a clean setup, clone the huly-selfhost repo, and run `./install.sh`. Using caddy as a reverse-proxy in front of the nginx container but shouldn't make a difference here.

I created a personal OAUTH app in github, and added the two environment variables (`GITHUB_CLIENT_ID` and `GITHUB_CLIENT_SECRET`) to the `account` service. I left the ACCOUNTS_URL in the front container unchanged since it seemed correct.

However, when I try logging in, I get this issue:

```
{"email":"","err":{"code":"23502","file":"errors.go","line":"68","message":"null value in column \"last_name\" violates not-null constraint","name":"PostgresError","routine":"NewNonNullViolationError","severity":"ERROR","severity_local":"ERROR","stack":"PostgresError: null value in column \"last_name\" violates not-null constraint\n at ErrorResponse (/usr/src/app/bundle.js:65657:31)\n at handle (/usr/src/app/bundle.js:65414:11)\n at Socket.data (/usr/src/app/bundle.js:65223:13)\n at Socket.emit (node:events:519:28)\n at addChunk (node:internal/streams/readable:561:12)\n at readableAddChunkPushByteMode (node:internal/streams/readable:512:3)\n at Readable.push (node:internal/streams/readable:392:5)\n at TCP.onStreamRead (node:internal/stream_base_commons:189:23)"},"level":"error","message":"Provider login failed","timestamp":"2026-04-30T12:53:15.573Z"}
{"err":{"code":"23502","file":"errors.go","line":"68","message":"null value in column \"last_name\" violates not-null constraint","name":"PostgresError","routine":"NewNonNullViolationError","severity":"ERROR","severity_local":"ERROR","stack":"PostgresError: null value in column \"last_name\" violates not-null constraint\n at ErrorResponse (/usr/src/app/bundle.js:65657:31)\n at handle (/usr/src/app/bundle.js:65414:11)\n at Socket.data (/usr/src/app/bundle.js:65223:13)\n at Socket.emit (node:events:519:28)\n at addChunk (node:internal/streams/readable:561:12)\n at readableAddChunkPushByteMode (node:internal/streams/readable:512:3)\n at Readable.push (node:internal/streams/readable:392:5)\n at TCP.onStreamRead (node:internal/stream_base_commons:189:23)"},"level":"error","message":"failed to auth","timestamp":"2026-04-30T12:53:15.575Z","type":"github","user":{"_json":{"avatar_url":"https://avatars.githubusercontent.com/u/13244295?v=4","bio":"\r\n Constantly engineering.\r\n","blog":"","company":null,"created_at":"2015-07-08T21:06:48Z","email":"","events_url":"https://api.github.com/users/Franchovy/events{/privacy}","followers":19,"followers_url":"https://api.github.com/users/Franchovy/followers","following":20,"following_url":"https://api.github.com/users/Franchovy/following{/other_user}","gists_url":"https://api.github.com/users/Franchovy/gists{/gist_id}","gravatar_id":"","hireable":null,"html_url":"https://github.com/Franchovy","id":13244295,"location":"Frankfurt","login":"Franchovy","name":"Franchovy","node_id":"MDQ6VXNlcjEzMjQ0Mjk1","notification_email":"","organizations_url":"https://api.github.com/users/Franchovy/orgs","public_gists":1,"public_repos":38,"received_events_url":"https://api.github.com/users/Franchovy/received_events","repos_url":"https://api.github.com/users/Franchovy/repos","site_admin":false,"starred_url":"https://api.github.com/users/Franchovy/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Franchovy/subscriptions","twitter_username":null,"type":"User","updated_at":"2026-04-18T13:19:31Z","url":"https://api.github.com/users/Franchovy","user_view_type":"public"},"_raw":"{\"login\":\"Franchovy\",\"id\":13244295,\"node_id\":\"MDQ6VXNlcjEzMjQ0Mjk1\",\"avatar_url\":\"https://avatars.githubusercontent.com/u/13244295?v=4\",\"gravatar_id\":\"\",\"url\":\"https://api.github.com/users/Franchovy\",\"html_url\":\"https://github.com/Franchovy\",\"followers_url\":\"https://api.github.com/users/Franchovy/followers\",\"following_url\":\"https://api.github.com/users/Franchovy/following{/other_user}\",\"gists_url\":\"https://api.github.com/users/Franchovy/gists{/gist_id}\",\"starred_url\":\"https://api.github.com/users/Franchovy/starred{/owner}{/repo}\",\"subscriptions_url\":\"https://api.github.com/users/Franchovy/subscriptions\",\"organizations_url\":\"https://api.github.com/users/Franchovy/orgs\",\"repos_url\":\"https://api.github.com/users/Franchovy/repos\",\"events_url\":\"https://api.github.com/users/Franchovy/events{/privacy}\",\"received_events_url\":\"https://api.github.com/users/Franchovy/received_events\",\"type\":\"User\",\"user_view_type\":\"public\",\"site_admin\":false,\"name\":\"Franchovy\",\"company\":null,\"blog\":\"\",\"location\":\"Frankfurt\",\"email\":\"\",\"hireable\":null,\"bio\":\"\\r\\n Constantly engineering.\\r\\n\",\"twitter_username\":null,\"notification_email\":\"\",\"public_repos\":38,\"public_gists\":1,\"followers\":19,\"following\":20,\"created_at\":\"2015-07-08T21:06:48Z\",\"updated_at\":\"2026-04-18T13:19:31Z\"}","displayName":"Franchovy","emails":[{"value":""}],"id":"13244295","nodeId":"MDQ6VXNlcjEzMjQ0Mjk1","photos":[{"value":"https://avatars.githubusercontent.com/u/13244295?v=4"}],"profileUrl":"https://github.com/Franchovy","provider":"github","username":"Franchovy"}}
```

Which, my LLM analyzed and saw that there was an unfulfilled requirement for "last_name" coming from the DB.

**Workaround:**

Signing into the database using:

`docker exec -it huly_v7-cockroach-1 ./cockroach sql --insecure --user=selfhost`

and entering the DB password (found in .env file).

Then, run:

```
selfhost@localhost:26257/defaultdb> ALTER TABLE global_account.person ALTER COLUMN last_name DROP NOT NULL;
ALTER TABLE
```

This effectively drops the requirement for a "Last Name". I'm now able to log in with Github.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.