class Canvas::Workflow::CLI::Deploy
Public Instance Methods
deploy()
click to toggle source
# File lib/canvas/workflow/cli/deploy.rb, line 11 def deploy # upload syllabus # FIXME this only compacts one level Dir.glob('README.md').select do |md_file| upload?(md_file) end.each do |md_file| html_file = File.join('_site', File.basename(md_file, '.md') + '.html') puts "=> uploading #{html_file}" content = YAML.load_file(html_file) content.each { |k,v| v.compact! }.compact! Workflow.client.update_course(course, content) end # upload pages # FIXME see upload syllabus Dir.glob('pages/*.md').select do |md_file| upload?(md_file) end.each do |md_file| url = File.basename(md_file, '.md') html_file = File.join('_site', 'pages', url + '.html') puts "=> uploading #{html_file}" content = YAML.load_file(html_file) content.each { |k,v| v.compact! }.compact! Workflow.client.update_create_page_courses(course, url, content) end # upload assignments # FIXME see upload syllabus Dir.glob('assignments/*.md').select do |md_file| upload?(md_file) end.each do |md_file| html_file = File.join('_site', 'assignments', File.basename(md_file, '.md') + '.html') puts "=> uploading #{html_file}" content = YAML.load_file(html_file) content.each { |k,v| v.compact! }.compact! Workflow.client.edit_assignment(course, content['assignment']['id'], content) end end
Private Instance Methods
course()
click to toggle source
# File lib/canvas/workflow/cli/deploy.rb, line 66 def course @course ||= Workflow.config['course'] end
upload?(file)
click to toggle source
# File lib/canvas/workflow/cli/deploy.rb, line 70 def upload?(file) Travis.created?(file) || Travis.modified?(file) end