-
Notifications
You must be signed in to change notification settings - Fork 3.9k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: Be able to login to bare-metal studio easily. (#35172)
* feat: Be able to login to bare-metal studio easily. Updating the documentation and the devstack.py files so that if you're running bare-metal you can easily setup studio login via the LMS. I also added the Ports that the various MFEs expect to the runserver scripts so that it's easier to run those locally as well. Co-authored-by: Kyle McCormick <[email protected]>
- Loading branch information
1 parent
4677761
commit 0f975ad
Showing
3 changed files
with
36 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -124,18 +124,47 @@ sites):: | |
./manage.py lms collectstatic | ||
./manage.py cms collectstatic | ||
|
||
Set up CMS SSO (for Development):: | ||
|
||
./manage.py lms manage_user studio_worker [email protected] --unusable-password | ||
# DO NOT DO THIS IN PRODUCTION. It will make your auth insecure. | ||
./manage.py lms create_dot_application studio-sso-id studio_worker \ | ||
--grant-type authorization-code \ | ||
--skip-authorization \ | ||
--redirect-uris 'http://localhost:18010/complete/edx-oauth2/' \ | ||
--scopes user_id \ | ||
--client-id 'studio-sso-id' \ | ||
--client-secret 'studio-sso-secret' | ||
|
||
Set up CMS SSO (for Production): | ||
|
||
* Create the CMS user and the OAuth application:: | ||
|
||
./manage.py lms manage_user studio_worker <[email protected]> --unusable-password | ||
./manage.py lms create_dot_application studio-sso-id studio_worker \ | ||
--grant-type authorization-code \ | ||
--skip-authorization \ | ||
--redirect-uris 'http://localhost:18010/complete/edx-oauth2/' \ | ||
--scopes user_id | ||
|
||
* Log into Django admin (eg. http://localhost:18000/admin/oauth2_provider/application/), | ||
click into the application you created above (``studio-sso-id``), and copy its "Client secret". | ||
* In your private LMS_CFG yaml file or your private Django settings module: | ||
|
||
* Set ``SOCIAL_AUTH_EDX_OAUTH2_KEY`` to the client ID (``studio-sso-id``). | ||
* Set ``SOCIAL_AUTH_EDX_OAUTH2_SECRET`` to the client secret (which you copied). | ||
Run the Platform | ||
---------------- | ||
|
||
First, ensure MySQL, Mongo, and Memcached are running. | ||
|
||
Start the LMS:: | ||
|
||
./manage.py lms runserver | ||
./manage.py lms runserver 18000 | ||
|
||
Start the CMS:: | ||
|
||
./manage.py cms runserver | ||
./manage.py cms runserver 18010 | ||
|
||
This will give you a mostly-headless Open edX platform. Most frontends have | ||
been migrated to "Micro-Frontends (MFEs)" which need to be installed and run | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -36,3 +36,6 @@ LMS_INTERNAL_ROOT_URL: "http://localhost" | |
|
||
# So that Swagger config code doesn't complain | ||
API_ACCESS_MANAGER_EMAIL: "[email protected]" | ||
|
||
# So that you can login to studio on bare-metal | ||
SOCIAL_AUTH_EDX_OAUTH2_URL_ROOT: 'http://localhost:18000' |