Skip to content

Commit

Permalink
refactor: remove EdX-Api-Key usage
Browse files Browse the repository at this point in the history
  • Loading branch information
mudassir-hafeez committed May 14, 2024
1 parent d9435ac commit d2affc3
Show file tree
Hide file tree
Showing 6 changed files with 4 additions and 24 deletions.
2 changes: 0 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,6 @@ jobs:
MITXPRO_ADMIN_EMAIL: example@localhost
OPENEDX_API_CLIENT_ID: fake_client_id
OPENEDX_API_CLIENT_SECRET: fake_client_secret # pragma: allowlist secret
OPENEDX_API_KEY: test-openedx-api-key # pragma: allowlist secret

- name: Tests
run: |
Expand Down Expand Up @@ -120,7 +119,6 @@ jobs:
OPENEDX_API_BASE_URL: http://localhost:18000
OPENEDX_API_CLIENT_ID: fake_client_id
OPENEDX_API_CLIENT_SECRET: fake_client_secret # pragma: allowlist secret
OPENEDX_API_KEY: test-openedx-api-key # pragma: allowlist secret
SECRET_KEY: local_unsafe_key # pragma: allowlist secret

- name: Upload coverage to CodeCov
Expand Down
4 changes: 0 additions & 4 deletions app.json
Original file line number Diff line number Diff line change
Expand Up @@ -442,10 +442,6 @@
"description": "The OAuth2 client secret to connect to Open edX with",
"required": true
},
"OPENEDX_API_KEY": {
"description": "edX API key (EDX_API_KEY setting in Open edX)",
"required": true
},
"OPENEDX_BASE_REDIRECT_URL": {
"description": "The base redirect URL for an OAuth Application for the Open edX API",
"required": false
Expand Down
14 changes: 4 additions & 10 deletions courseware/api.py
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,6 @@

ACCESS_TOKEN_HEADER_NAME = "X-Access-Token" # noqa: S105
AUTH_TOKEN_HEADER_NAME = "Authorization" # noqa: S105
API_KEY_HEADER_NAME = "X-EdX-Api-Key" # pragma: allowlist secret


@dataclass(frozen=True)
Expand Down Expand Up @@ -127,10 +126,7 @@ def get_existing_openedx_user(user):
raise ImproperlyConfigured("OPENEDX_SERVICE_WORKER_API_TOKEN is not set") # noqa: EM101
req_session = requests.Session()
req_session.headers.update(
{
AUTH_TOKEN_HEADER_NAME: f"Bearer {settings.OPENEDX_SERVICE_WORKER_API_TOKEN}",
API_KEY_HEADER_NAME: settings.OPENEDX_API_KEY,
}
{AUTH_TOKEN_HEADER_NAME: f"Bearer {settings.OPENEDX_SERVICE_WORKER_API_TOKEN}"}
)
response = req_session.get(
edx_url(f"{OPENEDX_USER_ACCOUNT_DETAIL_PATH}"), params={"email": user.email}
Expand Down Expand Up @@ -515,7 +511,7 @@ def get_edx_api_client(user, ttl_in_seconds=OPENEDX_AUTH_DEFAULT_TTL_IN_SECONDS)
"{} does not have an associated OpenEdxApiAuth".format(str(user)) # noqa: EM103, UP032
)
return EdxApi(
{"access_token": auth.access_token, "api_key": settings.OPENEDX_API_KEY},
{"access_token": auth.access_token},
settings.OPENEDX_API_BASE_URL,
timeout=settings.EDX_API_CLIENT_TIMEOUT,
)
Expand All @@ -532,10 +528,7 @@ def get_edx_api_service_client():
raise ImproperlyConfigured("OPENEDX_SERVICE_WORKER_API_TOKEN is not set") # noqa: EM101

return EdxApi(
{
"access_token": settings.OPENEDX_SERVICE_WORKER_API_TOKEN,
"api_key": settings.OPENEDX_API_KEY,
},
{"access_token": settings.OPENEDX_SERVICE_WORKER_API_TOKEN},
settings.OPENEDX_API_BASE_URL,
timeout=settings.EDX_API_CLIENT_TIMEOUT,
)
Expand Down Expand Up @@ -630,6 +623,7 @@ def enroll_in_edx_course_runs(user, course_runs, force_enrollment=True): # noqa
UnknownEdxApiEnrollException: Raised if an unknown error was encountered during the edX API request
"""
edx_client = get_edx_api_service_client()

username = user.username
results = []
for course_run in course_runs:
Expand Down
1 change: 0 additions & 1 deletion docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ x-environment: &py-environment
REDIS_URL: redis://redis:6379/4
DOCKER_HOST: ${DOCKER_HOST:-missing}
WEBPACK_DEV_SERVER_HOST: ${WEBPACK_DEV_SERVER_HOST:-localhost}
OPENEDX_API_KEY: ${OPENEDX_API_KEY:-PUT_YOUR_API_KEY_HERE}

x-extra-hosts: &default-extra-hosts
- "edx.odl.local:${OPENEDX_IP:-172.22.0.1}"
Expand Down
6 changes: 0 additions & 6 deletions mitxpro/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -1045,12 +1045,6 @@
description="The OAuth2 client secret to connect to Open edX with",
required=True,
)
OPENEDX_API_KEY = get_string(
name="OPENEDX_API_KEY",
default=None,
description="edX API key (EDX_API_KEY setting in Open edX)",
required=True,
)

MITXPRO_REGISTRATION_ACCESS_TOKEN = get_string(
name="MITXPRO_REGISTRATION_ACCESS_TOKEN",
Expand Down
1 change: 0 additions & 1 deletion pytest.ini
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,6 @@ env =
OPENEDX_API_BASE_URL=http://localhost:18000
OPENEDX_API_CLIENT_ID=fake_client_id
OPENEDX_API_CLIENT_SECRET=fake_client_secret
OPENEDX_API_KEY=test-openedx-api-key
SENTRY_DSN=
WAGTAIL_CACHE_BACKEND=django.core.cache.backends.dummy.DummyCache
WAGTAIL_CACHE_URL=

0 comments on commit d2affc3

Please sign in to comment.