Skip to content

Commit 59767da

Browse files
committed
I DID IT
1 parent 1529cf0 commit 59767da

17 files changed

+194
-148
lines changed

Dockerfile

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM docker.io/python:3.8-buster
1+
FROM docker.io/python:3.12-bookworm
22
MAINTAINER Computer Science House <webmaster@csh.rit.edu>
33

44
RUN mkdir /opt/conditional
@@ -8,7 +8,7 @@ ADD requirements.txt /opt/conditional
88
WORKDIR /opt/conditional
99

1010
RUN apt-get -yq update && \
11-
apt-get -yq install libsasl2-dev libldap2-dev libssl-dev gcc g++ make && \
11+
apt-get -yq install libsasl2-dev libldap2-dev libldap-common libssl-dev gcc g++ make && \
1212
pip install -r requirements.txt && \
1313
apt-get -yq clean all
1414

@@ -29,4 +29,5 @@ RUN rm -rf node_modules && \
2929

3030
RUN ln -sf /usr/share/zoneinfo/America/New_York /etc/localtime
3131

32-
CMD ["ddtrace-run", "gunicorn", "conditional:app", "--bind=0.0.0.0:8080", "--access-logfile=-", "--timeout=256"]
32+
#CMD ["ddtrace-run", "gunicorn", "conditional:app", "--bind=0.0.0.0:8080", "--access-logfile=-", "--timeout=256"]
33+
CMD ["gunicorn", "conditional:app", "--bind=0.0.0.0:8080", "--access-logfile=-", "--timeout=256"]

conditional/__init__.py

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
from flask_migrate import Migrate
88
from flask_gzip import Gzip
99
from flask_pyoidc.flask_pyoidc import OIDCAuthentication
10+
from flask_pyoidc.provider_configuration import ProviderConfiguration, ClientMetadata
1011
from flask_sqlalchemy import SQLAlchemy
1112

1213
import sentry_sdk
@@ -39,8 +40,12 @@
3940
app.config['LDAP_BIND_PW'],
4041
ro=app.config['LDAP_RO'])
4142

42-
auth = OIDCAuthentication(app, issuer=app.config["OIDC_ISSUER"],
43-
client_registration_info=app.config["OIDC_CLIENT_CONFIG"])
43+
#auth = OIDCAuthentication(app, issuer=app.config["OIDC_ISSUER"], client_registration_info=app.config["OIDC_CLIENT_CONFIG"])
44+
45+
client_metadata = ClientMetadata(app.config["OIDC_CLIENT_CONFIG"])
46+
provider_config = ProviderConfiguration(issuer=app.config["OIDC_ISSUER"], client_registration_info=client_metadata)
47+
48+
auth = OIDCAuthentication({'default': provider_config}, app)
4449

4550
app.secret_key = app.config["SECRET_KEY"]
4651

@@ -137,7 +142,7 @@ def static_proxy(path):
137142

138143

139144
@app.route('/')
140-
@auth.oidc_auth
145+
@auth.oidc_auth("default")
141146
def default_route():
142147
return redirect('/dashboard')
143148

@@ -158,7 +163,7 @@ def health():
158163

159164
@app.errorhandler(404)
160165
@app.errorhandler(500)
161-
@auth.oidc_auth
166+
@auth.oidc_auth("default")
162167
@get_user
163168
def route_errors(error, user_dict=None):
164169
data = dict()

conditional/blueprints/attendance.py

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929

3030

3131
@attendance_bp.route('/attendance/ts_members')
32-
@auth.oidc_auth
32+
@auth.oidc_auth("default")
3333
@get_user
3434
def get_all_members(user_dict=None):
3535
log = logger.new(request=request, auth_dict=user_dict)
@@ -57,7 +57,7 @@ def get_all_members(user_dict=None):
5757

5858

5959
@attendance_bp.route('/attendance/hm_members')
60-
@auth.oidc_auth
60+
@auth.oidc_auth("default")
6161
@get_user
6262
def get_non_alumni_non_coop(internal=False, user_dict=None):
6363
log = logger.new(request=request, auth_dict=user_dict)
@@ -102,7 +102,7 @@ def get_non_alumni_non_coop(internal=False, user_dict=None):
102102

103103

104104
@attendance_bp.route('/attendance/cm_members')
105-
@auth.oidc_auth
105+
@auth.oidc_auth("default")
106106
@get_user
107107
def get_non_alumni(user_dict=None):
108108
log = logger.new(request=request, auth_dict=user_dict)
@@ -130,7 +130,7 @@ def get_non_alumni(user_dict=None):
130130

131131

132132
@attendance_bp.route('/attendance_cm')
133-
@auth.oidc_auth
133+
@auth.oidc_auth("default")
134134
@get_user
135135
def display_attendance_cm(user_dict=None):
136136
log = logger.new(request=request, auth_dict=user_dict)
@@ -142,7 +142,7 @@ def display_attendance_cm(user_dict=None):
142142

143143

144144
@attendance_bp.route('/attendance_ts')
145-
@auth.oidc_auth
145+
@auth.oidc_auth("default")
146146
@get_user
147147
def display_attendance_ts(user_dict=None):
148148
log = logger.new(request=request, auth_dict=user_dict)
@@ -154,7 +154,7 @@ def display_attendance_ts(user_dict=None):
154154

155155

156156
@attendance_bp.route('/attendance_hm')
157-
@auth.oidc_auth
157+
@auth.oidc_auth("default")
158158
@get_user
159159
def display_attendance_hm(user_dict=None):
160160
log = logger.new(request=request, auth_dict=user_dict)
@@ -170,7 +170,7 @@ def display_attendance_hm(user_dict=None):
170170

171171

172172
@attendance_bp.route('/attendance/submit/cm', methods=['POST'])
173-
@auth.oidc_auth
173+
@auth.oidc_auth("default")
174174
@get_user
175175
def submit_committee_attendance(user_dict=None):
176176
log = logger.new(request=request, auth_dict=user_dict)
@@ -205,7 +205,7 @@ def submit_committee_attendance(user_dict=None):
205205

206206

207207
@attendance_bp.route('/attendance/submit/ts', methods=['POST'])
208-
@auth.oidc_auth
208+
@auth.oidc_auth("default")
209209
@get_user
210210
def submit_seminar_attendance(user_dict=None):
211211
log = logger.new(request=request, auth_dict=user_dict)
@@ -240,7 +240,7 @@ def submit_seminar_attendance(user_dict=None):
240240

241241

242242
@attendance_bp.route('/attendance/submit/hm', methods=['POST'])
243-
@auth.oidc_auth
243+
@auth.oidc_auth("default")
244244
@get_user
245245
def submit_house_attendance(user_dict=None):
246246
log = logger.new(request=request, auth_dict=user_dict)
@@ -290,7 +290,7 @@ def submit_house_attendance(user_dict=None):
290290

291291

292292
@attendance_bp.route('/attendance/alter/hm/<uid>/<hid>', methods=['GET'])
293-
@auth.oidc_auth
293+
@auth.oidc_auth("default")
294294
@get_user
295295
def alter_house_attendance(uid, hid, user_dict=None):
296296
log = logger.new(request=request, auth_dict=user_dict)
@@ -320,7 +320,7 @@ def alter_house_attendance(uid, hid, user_dict=None):
320320

321321

322322
@attendance_bp.route('/attendance/alter/hm/<uid>/<hid>', methods=['POST'])
323-
@auth.oidc_auth
323+
@auth.oidc_auth("default")
324324
@get_user
325325
def alter_house_excuse(uid, hid, user_dict=None):
326326
log = logger.new(request=request, auth_dict=user_dict)
@@ -357,7 +357,7 @@ def alter_house_excuse(uid, hid, user_dict=None):
357357

358358

359359
@attendance_bp.route('/attendance/history', methods=['GET'])
360-
@auth.oidc_auth
360+
@auth.oidc_auth("default")
361361
@get_user
362362
def attendance_history(user_dict=None):
363363

@@ -444,7 +444,7 @@ def get_seminar_attendees(meeting_id):
444444

445445

446446
@attendance_bp.route('/attendance/alter/cm/<cid>', methods=['POST'])
447-
@auth.oidc_auth
447+
@auth.oidc_auth("default")
448448
@get_user
449449
def alter_committee_attendance(cid, user_dict=None):
450450
log = logger.new(request=request, auth_dict=user_dict)
@@ -476,7 +476,7 @@ def alter_committee_attendance(cid, user_dict=None):
476476

477477

478478
@attendance_bp.route('/attendance/alter/ts/<sid>', methods=['POST'])
479-
@auth.oidc_auth
479+
@auth.oidc_auth("default")
480480
@get_user
481481
def alter_seminar_attendance(sid, user_dict=None):
482482
log = logger.new(request=request, auth_dict=user_dict)
@@ -508,7 +508,7 @@ def alter_seminar_attendance(sid, user_dict=None):
508508

509509

510510
@attendance_bp.route('/attendance/ts/<sid>', methods=['GET', 'DELETE'])
511-
@auth.oidc_auth
511+
@auth.oidc_auth("default")
512512
@get_user
513513
def get_cm_attendees(sid, user_dict=None):
514514
if request.method == 'GET':
@@ -545,7 +545,7 @@ def get_cm_attendees(sid, user_dict=None):
545545

546546

547547
@attendance_bp.route('/attendance/cm/<cid>', methods=['GET', 'DELETE'])
548-
@auth.oidc_auth
548+
@auth.oidc_auth("default")
549549
@get_user
550550
def get_ts_attendees(cid, user_dict=None):
551551
if request.method == 'GET':
@@ -582,7 +582,7 @@ def get_ts_attendees(cid, user_dict=None):
582582

583583

584584
@attendance_bp.route('/attendance/cm/<cid>/approve', methods=['POST'])
585-
@auth.oidc_auth
585+
@auth.oidc_auth("default")
586586
@get_user
587587
def approve_cm(cid, user_dict=None):
588588
log = logger.new(request=request, auth_dict=user_dict)
@@ -600,7 +600,7 @@ def approve_cm(cid, user_dict=None):
600600

601601

602602
@attendance_bp.route('/attendance/ts/<sid>/approve', methods=['POST'])
603-
@auth.oidc_auth
603+
@auth.oidc_auth("default")
604604
@get_user
605605
def approve_ts(sid, user_dict=None):
606606
log = logger.new(request=request, auth_dict=user_dict)

conditional/blueprints/cache_management.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121

2222

2323
@cache_bp.route('/restart')
24-
@auth.oidc_auth
24+
@auth.oidc_auth("default")
2525
@get_user
2626
def restart_app(user_dict=None):
2727
if not ldap_is_rtp(user_dict['account']):
@@ -34,7 +34,7 @@ def restart_app(user_dict=None):
3434

3535

3636
@cache_bp.route('/clearcache')
37-
@auth.oidc_auth
37+
@auth.oidc_auth("default")
3838
@get_user
3939
def clear_cache(user_dict=None):
4040
if not ldap_is_eval_director(user_dict['account']) and not ldap_is_rtp(user_dict['account']):

conditional/blueprints/co_op.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717

1818

1919
@co_op_bp.route('/co_op/')
20-
@auth.oidc_auth
20+
@auth.oidc_auth("default")
2121
@get_user
2222
def display_co_op_form(user_dict=None):
2323
log = logger.new(request=request, auth_dict=user_dict)
@@ -33,7 +33,7 @@ def display_co_op_form(user_dict=None):
3333

3434

3535
@co_op_bp.route('/co_op/submit', methods=['POST'])
36-
@auth.oidc_auth
36+
@auth.oidc_auth("default")
3737
@get_user
3838
def submit_co_op_form(user_dict=None):
3939
log = logger.new(request=request, auth_dict=user_dict)
@@ -65,7 +65,7 @@ def submit_co_op_form(user_dict=None):
6565

6666

6767
@co_op_bp.route('/co_op/<uid>', methods=['DELETE'])
68-
@auth.oidc_auth
68+
@auth.oidc_auth("default")
6969
@get_user
7070
def delete_co_op(uid, user_dict=None):
7171
log = logger.new(request=request, auth_dict=user_dict)
@@ -91,7 +91,7 @@ def delete_co_op(uid, user_dict=None):
9191

9292

9393
@co_op_bp.route('/co_op/manage')
94-
@auth.oidc_auth
94+
@auth.oidc_auth("default")
9595
@get_user
9696
def display_co_op_management(user_dict=None):
9797
log = logger.new(request=request, auth_dict=user_dict)

conditional/blueprints/conditional.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515

1616

1717
@conditionals_bp.route('/conditionals/')
18-
@auth.oidc_auth
18+
@auth.oidc_auth("default")
1919
@get_user
2020
def display_conditionals(user_dict=None):
2121
log = logger.new(request=request, auth_dict=user_dict)
@@ -39,7 +39,7 @@ def display_conditionals(user_dict=None):
3939

4040

4141
@conditionals_bp.route('/conditionals/create', methods=['POST'])
42-
@auth.oidc_auth
42+
@auth.oidc_auth("default")
4343
@get_user
4444
def create_conditional(user_dict=None):
4545
log = logger.new(request=request, auth_dict=user_dict)
@@ -76,7 +76,7 @@ def create_conditional(user_dict=None):
7676

7777

7878
@conditionals_bp.route('/conditionals/review', methods=['POST'])
79-
@auth.oidc_auth
79+
@auth.oidc_auth("default")
8080
@get_user
8181
def conditional_review(user_dict=None):
8282
log = logger.new(request=request, auth_dict=user_dict)
@@ -113,7 +113,7 @@ def conditional_review(user_dict=None):
113113

114114

115115
@conditionals_bp.route('/conditionals/delete/<cid>', methods=['DELETE'])
116-
@auth.oidc_auth
116+
@auth.oidc_auth("default")
117117
@get_user
118118
def conditional_delete(cid, user_dict=None):
119119
log = logger.new(request=request, auth_dict=user_dict)

conditional/blueprints/dashboard.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ def is_seminar_attendance_valid(attendance):
2929

3030
# pylint: disable=too-many-statements
3131
@dashboard_bp.route('/dashboard/')
32-
@auth.oidc_auth
32+
@auth.oidc_auth("default")
3333
@get_user
3434
def display_dashboard(user_dict=None):
3535
log = logger.new(request=request, auth_dict=user_dict)

conditional/blueprints/housing.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@
2020

2121

2222
@housing_bp.route('/housing')
23-
@auth.oidc_auth
23+
@auth.oidc_auth("default")
2424
@get_user
2525
def display_housing(user_dict=None):
2626
log = logger.new(request=request, auth_dict=user_dict)
@@ -62,7 +62,7 @@ def display_housing(user_dict=None):
6262

6363

6464
@housing_bp.route('/housing/in_queue', methods=['PUT'])
65-
@auth.oidc_auth
65+
@auth.oidc_auth("default")
6666
@get_user
6767
def change_queue_state(user_dict=None):
6868
log = logger.new(request=request, auth_dict=user_dict)
@@ -88,7 +88,7 @@ def change_queue_state(user_dict=None):
8888

8989

9090
@housing_bp.route('/housing/update/<rmnumber>', methods=['POST'])
91-
@auth.oidc_auth
91+
@auth.oidc_auth("default")
9292
@get_user
9393
def change_room_numbers(rmnumber, user_dict=None):
9494
log = logger.new(request=request, auth_dict=user_dict)
@@ -121,7 +121,7 @@ def change_room_numbers(rmnumber, user_dict=None):
121121

122122

123123
@housing_bp.route('/housing/room/<rmnumber>', methods=['GET'])
124-
@auth.oidc_auth
124+
@auth.oidc_auth("default")
125125
def get_occupants(rmnumber):
126126

127127
# Get the current list of people living on-floor.
@@ -134,7 +134,7 @@ def get_occupants(rmnumber):
134134

135135

136136
@housing_bp.route('/housing', methods=['DELETE'])
137-
@auth.oidc_auth
137+
@auth.oidc_auth("default")
138138
@get_user
139139
def clear_all_rooms(user_dict=None):
140140
log = logger.new(request=request, auth_dict=user_dict)

conditional/blueprints/intro_evals.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525

2626

2727
@intro_evals_bp.route('/intro_evals/')
28-
@auth.oidc_auth
28+
@auth.oidc_auth("default")
2929
@get_user
3030
def display_intro_evals(internal=False, user_dict=None):
3131
log = logger.new(request=request, auth_dict=user_dict)

conditional/blueprints/intro_evals_form.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515

1616

1717
@intro_evals_form_bp.route('/intro_evals_form/')
18-
@auth.oidc_auth
18+
@auth.oidc_auth("default")
1919
@get_user
2020
def display_intro_evals_form(user_dict=None):
2121
log = logger.new(request=request, auth_dict=user_dict)
@@ -36,7 +36,7 @@ def display_intro_evals_form(user_dict=None):
3636

3737

3838
@intro_evals_form_bp.route('/intro_evals/submit', methods=['POST'])
39-
@auth.oidc_auth
39+
@auth.oidc_auth("default")
4040
@get_user
4141
def submit_intro_evals(user_dict=None):
4242
log = logger.new(request=request, auth_dict=user_dict)

0 commit comments

Comments
 (0)