Originally, Blockstore was an independent micro-service, accessed via a REST API. Then, we changed Blockstore so it could be installed as an in-process Django app. To support both modes, there existed a blockstore_api wrapper library in edx-platform, with toggles controlling whether the wrapper called out to the micro-service's REST API versus the Django app's Python API. Now that the micro-service Blockstore implementation is deprecated, though, this wrapper library and toggles are just unnecessary complexity. As a first step towards cleanup, we: * remove several toggles and settings (details below); * remove the blocokstore_api wrapper methods which called the REST API and marshalled them back into Python objects; and * remove all test cases which relied on the Blockstore micro-service (and were skippped in CI). In the future, we will remove the content libraries indexer, clean up the remaining bits of blockstore_api, and flatten out all the Blockstore-related test class hierarchies which are no longer nceessary. BREAKING CHANGE: * These Django settings are removed: * BLOCKSTORE_PUBLIC_URL_ROOT * BLOCKSTORE_API_URL * BLOCKSTORE_API_AUTH_TOKEN * BLOCKSTORE_USE_BLOCKSTORE_APP_API * The blockstore.use_blockstore_app_api Waffle switch is removed. * edx-platform will act as it did when the DJango setting BLOCKSTORE_USE_BLOCKSTORE_APP_API or the Waffle switch blockstore.use_blockstore_app_api were enabled. That is, any running Blockstore micro-service instance will be ignored, and the Blockstore package which is installed into edx-platform will be used instead. Ref: https://github.com/openedx/blockstore/issues/296
18 KiB
18 KiB