I was running into the same issue and it turned out the database was already owned by the msf user. Changing the msf database ownership to user msfgit (like in the metasploitminute video) resulted in the permission error for relation workspaces that you are getting. I wanted to avoid trying to change ownership for everything and missing something but I was able to fix it two different ways: use the msf user with the existing msf database or create a new database for user msfgit.
Option 1 - Use Existing Database With User msf
1. Change the msf database ownership back to the msf user if needed and optionally set the msf user password if you don't know it:
su - postgres
psql
ALTER DATABASE msf OWNER TO msf;
ALTER USER msf WITH PASSWORD 'msf';
\q
exit
Update database.yml:
production
adapter: postgresql
database: msf
username: msf
password: msf
host: 127.0.0.1
port: 5432
pool: 75
timeout: 5
Option 2 - Use New Database With New User
Create msfgit database for user msfgit:
su - postgres
createuser msfgit -P -S -R -D
createdb -O msfgit msfgit
Update database.yml:
production
adapter: postgresql
database: msfgit
username: msfgit
password: msf
host: 127.0.0.1
port: 5432
pool: 75
timeout: 5
Maybe you are having a different issue but hopefully that helps.