According to the docs https://next-auth.js.org/configuration/options#secret , adding a NEXTAUTH_SECRET as an environment variable, you don't have to define this option.
But in vercel production I still get,
2022-03-24T10:37:19.571Z 710a4b4b-24d3-4fb4-b991-9eb44179efc8 ERROR [next-auth][error][NO_SECRET]
https://next-auth.js.org/errors#no_secret Please define a `secret` in production. MissingSecret [MissingSecretError]: Please define a `secret` in production.
at assertConfig (/var/task/node_modules/next-auth/core/lib/assert.js:24:14)
at NextAuthHandler (/var/task/node_modules/next-auth/core/index.js:34:52)
at NextAuthNextHandler (/var/task/node_modules/next-auth/next/index.js:16:51)
at /var/task/node_modules/next-auth/next/index.js:52:38
at Object.apiResolver (/var/task/node_modules/next/dist/server/api-utils/node.js:182:15)
at processTicksAndRejections (internal/process/task_queues.js:95:5)
at async NextNodeServer.runApi (/var/task/node_modules/next/dist/server/next-server.js:386:9)
at async Object.fn (/var/task/node_modules/next/dist/server/base-server.js:488:37)
at async Router.execute (/var/task/node_modules/next/dist/server/router.js:228:32)
at async NextNodeServer.run (/var/task/node_modules/next/dist/server/base-server.js:600:29) {
code: 'NO_SECRET'
}
env is set as NEXTAUTH_SECRET=MYSECRETSNAPBOOK
Code:
export default NextAuth({
providers: [
GoogleProvider({
clientId: process.env.GOOGLE_CLIENT_ID,
clientSecret: process.env.GOOGLE_CLIENT_SECRET,
}),
],
pages: {
signIn: '/auth/signin',
},
callbacks: {
async session({ session, token, user }) {
session.user.username = session.user.name
.split(' ')
.join('')
.toLocaleLowerCase()
session.user.uid = token.sub
return session
},
},
})