apply changes after review
This commit is contained in:
@ -21,8 +21,8 @@ rvm:
|
|||||||
# - 2.3.1
|
# - 2.3.1
|
||||||
#script: bundle exec rspec --color --format documentation --require spec_helper --require rails_helper --tag ~docker
|
#script: bundle exec rspec --color --format documentation --require spec_helper --require rails_helper --tag ~docker
|
||||||
|
|
||||||
- 2.1.5
|
# - 2.1.5
|
||||||
- 2.2.1
|
# - 2.2.1
|
||||||
- 2.3.1
|
- 2.3.1
|
||||||
script: bundle exec rspec --require spec_helper --require rails_helper --tag ~docker
|
script: bundle exec rspec --color --format documentation --require spec_helper --require rails_helper
|
||||||
|
|
||||||
|
@ -271,7 +271,7 @@ class SubmissionsController < ApplicationController
|
|||||||
|
|
||||||
def stop
|
def stop
|
||||||
Rails.logger.debug('stopping submission ' + @submission.id.to_s)
|
Rails.logger.debug('stopping submission ' + @submission.id.to_s)
|
||||||
container = Docker::Container.get(params[:containtier_id])
|
container = Docker::Container.get(params[:container_id])
|
||||||
DockerClient.destroy_container(container)
|
DockerClient.destroy_container(container)
|
||||||
rescue Docker::Error::NotFoundError
|
rescue Docker::Error::NotFoundError
|
||||||
ensure
|
ensure
|
||||||
|
@ -25,10 +25,9 @@ class DockerClient
|
|||||||
#container.exec(['bash', '-c', 'rm -rf ' + CONTAINER_WORKSPACE_PATH + '/*'])
|
#container.exec(['bash', '-c', 'rm -rf ' + CONTAINER_WORKSPACE_PATH + '/*'])
|
||||||
|
|
||||||
local_workspace_path = local_workspace_path(container)
|
local_workspace_path = local_workspace_path(container)
|
||||||
path_to_delete = Pathname.new(local_workspace_path)
|
if local_workspace_path && Pathname.new(local_workspace_path).exist?
|
||||||
if local_workspace_path || Pathname.new(local_workspace_path).exist?
|
Pathname.new(local_workspace_path).children.each{ |p| p.rmtree}
|
||||||
path_to_delete.children.each{ |p| p.rmtree}
|
#FileUtils.rmdir(Pathname.new(local_workspace_path))
|
||||||
#FileUtils.rmdir(path_to_delete)
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
@ -193,8 +192,6 @@ class DockerClient
|
|||||||
if(container)
|
if(container)
|
||||||
container.delete(force: true, v: true)
|
container.delete(force: true, v: true)
|
||||||
end
|
end
|
||||||
local_workspace_path(container)
|
|
||||||
|
|
||||||
rescue Docker::Error::NotFoundError => error
|
rescue Docker::Error::NotFoundError => error
|
||||||
Rails.logger.error('destroy_container: Rescued from Docker::Error::NotFoundError: ' + error.to_s)
|
Rails.logger.error('destroy_container: Rescued from Docker::Error::NotFoundError: ' + error.to_s)
|
||||||
Rails.logger.error('No further actions are done concerning that.')
|
Rails.logger.error('No further actions are done concerning that.')
|
||||||
@ -332,11 +329,13 @@ class DockerClient
|
|||||||
Docker::Image.all.map { |image| image.info['RepoTags'] }.flatten.reject { |tag| tag.include?('<none>') }
|
Docker::Image.all.map { |image| image.info['RepoTags'] }.flatten.reject { |tag| tag.include?('<none>') }
|
||||||
end
|
end
|
||||||
|
|
||||||
# When @image commented test doesn't work
|
# When @image commented test doesn't work -> test set to pending
|
||||||
def initialize(options = {})
|
def initialize(options = {})
|
||||||
@execution_environment = options[:execution_environment]
|
@execution_environment = options[:execution_environment]
|
||||||
@image = self.class.find_image_by_tag(@execution_environment.docker_image)
|
# todo: eventually re-enable this if it is cached. But in the end, we do not need this.
|
||||||
fail(Error, "Cannot find image #{@execution_environment.docker_image}!") unless @image
|
# docker daemon got much too much load. all not 100% necessary calls to the daemon were removed.
|
||||||
|
#@image = self.class.find_image_by_tag(@execution_environment.docker_image)
|
||||||
|
#fail(Error, "Cannot find image #{@execution_environment.docker_image}!") unless @image
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.initialize_environment
|
def self.initialize_environment
|
||||||
|
@ -21,8 +21,7 @@ describe ExecutionEnvironmentPolicy do
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
[:destroy?, :edit?, :execute_command?, :shell?, :show?, :update?].each do |action|
|
||||||
[:execute_command?, :shell?, :statistics?].each do |action|
|
|
||||||
permissions(action) do
|
permissions(action) do
|
||||||
it 'grants access to admins' do
|
it 'grants access to admins' do
|
||||||
expect(subject).to permit(FactoryGirl.build(:admin), execution_environment)
|
expect(subject).to permit(FactoryGirl.build(:admin), execution_environment)
|
||||||
@ -39,22 +38,4 @@ describe ExecutionEnvironmentPolicy do
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
[:destroy?, :edit?, :show?, :update?].each do |action|
|
|
||||||
permissions(action) do
|
|
||||||
it 'grants access to admins' do
|
|
||||||
expect(subject).to permit(FactoryGirl.build(:admin), execution_environment)
|
|
||||||
end
|
|
||||||
|
|
||||||
it 'does not grant access to authors' do
|
|
||||||
expect(subject).not_to permit(execution_environment.author, execution_environment)
|
|
||||||
end
|
|
||||||
|
|
||||||
it 'does not grant access to all other users' do
|
|
||||||
[:external_user, :teacher].each do |factory_name|
|
|
||||||
expect(subject).not_to permit(FactoryGirl.build(factory_name), execution_environment)
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
@ -15,9 +15,6 @@
|
|||||||
#
|
#
|
||||||
# See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
|
# See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
|
||||||
|
|
||||||
require "codeclimate-test-reporter"
|
|
||||||
CodeClimate::TestReporter.start
|
|
||||||
|
|
||||||
unless RUBY_PLATFORM == 'java'
|
unless RUBY_PLATFORM == 'java'
|
||||||
if ENV['CODECLIMATE_REPO_TOKEN']
|
if ENV['CODECLIMATE_REPO_TOKEN']
|
||||||
require 'codeclimate-test-reporter'
|
require 'codeclimate-test-reporter'
|
||||||
@ -28,9 +25,6 @@ unless RUBY_PLATFORM == 'java'
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
require 'selenium-webdriver'
|
|
||||||
#Selenium::WebDriver::Firefox::Binary.path='/usr/bin/firefox'
|
|
||||||
|
|
||||||
RSpec.configure do |config|
|
RSpec.configure do |config|
|
||||||
# These two settings work together to allow you to limit a spec run
|
# These two settings work together to allow you to limit a spec run
|
||||||
# to individual examples or groups you care about by tagging them with
|
# to individual examples or groups you care about by tagging them with
|
||||||
@ -39,11 +33,6 @@ RSpec.configure do |config|
|
|||||||
config.filter_run :focus
|
config.filter_run :focus
|
||||||
config.run_all_when_everything_filtered = true
|
config.run_all_when_everything_filtered = true
|
||||||
|
|
||||||
|
|
||||||
#for --next-failure feature purpose
|
|
||||||
config.example_status_persistence_file_path = "examples.txt"
|
|
||||||
config.run_all_when_everything_filtered = true
|
|
||||||
|
|
||||||
# Many RSpec users commonly either run the entire suite or an individual
|
# Many RSpec users commonly either run the entire suite or an individual
|
||||||
# file, and it's useful to allow more verbose output when running an
|
# file, and it's useful to allow more verbose output when running an
|
||||||
# individual spec file.
|
# individual spec file.
|
||||||
|
Reference in New Issue
Block a user