Instantly Run An App in the Cloud 2

From Foss2Serve
Revision as of 00:42, 14 August 2015 by Nyeates (Talk | contribs)
Jump to: navigation, search
Title Instantly Run An App in the Cloud Using OpenShift Part 2
Overview A follow-on to traching students about creating apps in an online open source cloud environment - OpenShift. This time students focus on command-line driven tools, and the backends of building and deploying new application code via git.
Prerequisite Knowledge
Learning Objectives
  • Give instructor SSH access
  • Install and run "rhc" command-line client tool
  • Understand behind-the-scenes workflow of "git push"
  • Add custom build and deployment code
  • Synchronize Local and Live Environments (Test vs Prod)

Build phase.png




Background:

What is the rational for this activity? This second portion of the cloud app activity goes a little deeper and focuses on de-facto technologies like ssh / shell-access and git / github. Students will now take their new-found knowledge of the cloud paradigm and start to understand how it can link to a more technically flexible solution set. They can now customize their apps via editing and pushing code via a git publication process.

You will want to have already stepped through this preceding activity: Instantly_Run_An_App_in_the_Cloud


Directions:

Give Instructor SSH Access:

In order to fully inspect your work, the instructor will need access to your SSH shell that you created. You do not, however, want to give your same private key away. You could, but it is not the best industry practice. Instead, you will want to setup access for the instructors Username and his particular Public Key. Given a Public Key, the instructor can get in with their secret Private Key.

You are encouraged to look up instructions [the web].

OpenShift Tutorial 2

Priorly, we setup Wordpress blogging software and used it. Now we will dive into more usage of the command line, specifically the rhc command, and what occurs when new code is added via git push. Additionally we will learn how to run it all on your local laptop, so that you can test and develop in a safe environment before you push it live (into production).

Follow this tutorial:




Deliverables:

Create another blog post, with public URL, that tells:

  1. What troubles or more info you came across
    • This 2nd edition was much more technical and likely lead to some troubleshooting.
    • Tell a small story; 1-2 paragraphs.
  2. Your understanding of what steps OpenShift implements when you do a simple "git push"
    • This is the build and deploy process
    • Talk about what you added to customize the build process
  3. The pro's and con's of synchronizing to a Local / Test coding environment
    • Why might you want to do testing locally on your laptop, instead of out on the Live / Production cloud app?
    • Is the process given in the tutorial cumbersome? Could you find anything better?

Assessment:

How will the activity be graded?

How will learning will be measured?

Include sample assessment questions/rubrics.

Criteria Level 1 (fail) Level 2 (pass) Level 3 (exceptional)
Give instructor SSH access
Install and run "rhc" command-line client tool
Understand behind-the-scenes workflow of "git push"
Add custom build and deployment code
Synchronize Local and Live Environments (Test vs Prod)

Comments:

What should the instructor know before using this activity?

What are some likely difficulties that an instructor may encounter using this activity?


Additional Information:

Knowledge Area/Knowledge Unit What ACM Computing Curricula 2013 knowledge area and units does this activity cover? ACM_Body_of_Knowledge
Topic What specific topics are addressed? The Computing Curriucula 2013 provides a list of topics - https://www.acm.org/education/CS2013-final-report.pdf
Level of Difficulty Is this activity easy, medium or challenging?
Estimated Time to Completion How long should it take for the student to complete the activity?
Materials/Environment What does the student need? Internet access, IRC client, Git Hub account, LINUX machine, etc.?
Author Who wrote this activity?
Source Is there another activity on which this activity is based? If so, please provide a link to the original resource.
License Under which license is this material made available? (http://creativecommons.org/licenses/)


Suggestions to Open Source Mentors:

Suggestions for an open source community member who is working in conjunction with the instructor.



This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License

CC license.png

Personal tools
Namespaces
Variants
Actions
Events
Learning Resources
HFOSS Projects
Evaluation
Navigation
Toolbox