-
Notifications
You must be signed in to change notification settings - Fork 227
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature/GitHub personal access token set #2060
base: master
Are you sure you want to change the base?
Changes from all commits
b1f363c
addba54
7b65aa7
571c6a9
d42912d
2d28973
c2cda35
53376ac
afbe07e
ca25142
bb625a9
b6dac47
84af79c
5afeabc
4ff6111
c6ae983
1fe0ad8
6c20331
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -9,10 +9,8 @@ | |
# | ||
FROM phusion/passenger-ruby32:2.6.1 | ||
|
||
MAINTAINER Autolab Development Team "[email protected]" | ||
|
||
# Change to your time zone here | ||
RUN ln -fs /usr/share/zoneinfo/America/New_York /etc/localtime | ||
RUN ln -fs /usr/share/zoneinfo/America/Los_Angeles /etc/localtime | ||
|
||
# Install dependencies | ||
ENV DEBIAN_FRONTEND=noninteractive | ||
|
@@ -55,11 +53,14 @@ RUN mkdir -p /home/app/webapp/log && \ | |
chmod 0664 /home/app/webapp/log/production.log && \ | ||
chown -R app:app . | ||
|
||
USER app | ||
USER root | ||
RUN chown -R app:app . | ||
|
||
#WORKDIR /home/app/webapp | ||
|
||
# precompile the Rails assets | ||
ENV SECRET_KEY_BASE=dummy_secret_key_base | ||
RUN RAILS_ENV=production bundle exec rails assets:precompile | ||
ENV SECRET_KEY_BASE="ekz0nrn_DPG6ucv5ukw" | ||
#RUN RAILS_ENV=production bundle exec rails assets:precompile | ||
|
||
# Clean up APT when done. | ||
USER root | ||
|
Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
@@ -5,8 +5,9 @@ class UsersController < ApplicationController | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
skip_before_action :update_persistent_announcements | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
before_action :set_gh_oauth_client, only: [:github_oauth, :github_oauth_callback] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
before_action :set_user, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
only: [:github_oauth, :github_revoke, :lti_launch_initialize, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
:lti_launch_link_course] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
only: [:github_oauth, :github_revoke, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
:show_github_update_form, :submit_github_update_form, | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
:lti_launch_initialize, :lti_launch_link_course] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
# GET /users | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
action_auth_level :index, :student | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
@@ -249,6 +250,22 @@ def lti_launch_link_course | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
flash[:success] = "#{course.name} successfully linked." | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
redirect_to(course) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
end | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
action_auth_level :github_update, :student | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
def show_github_update_form | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
@github_integration = GithubIntegration.find_by(user_id: @user.id) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
render('github_update') | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
end | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
action_auth_level :github_update_form, :student | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
def submit_github_update_form | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
github_integration = GithubIntegration.find_by(user_id: @user.id) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
access_token = params[:access_token] | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
github_integration.update!(access_token:) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
flash[:success] = "Updated Github Token" | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
redirect_to(user_path) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
end | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Comment on lines
+254
to
+268
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The new actions - github_integration.update!(access_token:)
+ if github_integration
+ github_integration.update!(access_token:)
+ flash[:success] = "Updated Github Token"
+ else
+ flash[:error] = "GitHub integration not found."
+ end Committable suggestion
Suggested change
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
action_auth_level :github_oauth, :student | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
def github_oauth | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -569,4 +569,4 @@ def extend_config_module(assessment, submission, cud) | |
raise error | ||
end | ||
|
||
end | ||
end |
Original file line number | Diff line number | Diff line change | ||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
@@ -0,0 +1,13 @@ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
<% @title = "Github Access Token" %> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
<h2>Github Update Access Token</h2> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
<% if @github_integration %> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
<%= form_with url: github_update_user_path do |form| %> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
<div class="input-field"> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
<%= form.text_field :access_token, required: true %> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
<%= form.label :access_token, "Access Token" %> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
<span class="helper-text">Helpful description here</span> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
</div> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
<%= form.submit "Update Token", { class: "btn primary" } %> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
<% end %> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
<% end %> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||
Comment on lines
+1
to
+13
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The view template for updating the GitHub access token is straightforward and seems to follow Rails conventions. However, there is a placeholder text "Helpful description here" which should be replaced with an actual description to guide the user. - <span class="helper-text">Helpful description here</span>
+ <span class="helper-text">Enter your GitHub personal access token.</span> Committable suggestion
Suggested change
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The
SECRET_KEY_BASE
environment variable has been hardcoded into the Dockerfile. This is a security risk as it exposes the secret key in the Docker image and thus to anyone who can access the image.And ensure that the
SECRET_KEY_BASE
is passed as a build argument or environment variable at runtime.Committable suggestion