{"action":"created","comment":{"url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/pulls/comments/31480121","id":31480121,"diff_hunk":"@@ -0,0 +1,141 @@\n+Continuous Integration Challenge Guide\n+======================================\n+Now that you have (hopefully) completed the Testing review challenges we can\n+move on to Continuious integration.\n+\n+\n+Activity 0: Create a Travis CI Account (with your GH account)\n+-------------------------------------------------------------\n+Before we can do *anything* with Travis CI (and continuious integration as a\n+whole) you need to sign up for a Travis CI account. This is really easy if you\n+already have a GitHub account, just go to https://travis-ci.org/ and click the\n+`Sign Up` button in the middle of the page.\n+\n+\n+Activity 1: Setup Travis CI integration testing with your simple python script+tests\n+------------------------------------------------------------------------------------\n+First we are going to write a really simple python app and push it to a GitHub\n+repository and set it up for Travis CI to automatically test.\n+\n+**Steps:**\n+\n+1. Create the repository\n+#. Setup TravisCI with your application\n+#. Create your python application\n+#. Test your python application\n+#. Integration Testing\n+\n+**Create the Repository:**\n+\n+Begin by going to GitHub, creating a repository, and naming it\n+'dobc-travis-test'. Feel free to include a README and a LICENSE, but they\n+aren't strictly necessary for our purposes.\n+\n+Once you have the repo follow these steps to turn on Travis CI integration: 1.\n+Click on `Settings` on the bottom right above the git clone link\n+#. Navigate to `Webhooks & Service` \n+#. Under `Services` click `Add a Service` and add `Travis CI`.\n+\n+Now navigate to tps://travis-ci.org/profile and click the `sync` button. Under\n+the list of repositories toggle `<username>/dobc-travis-test` from ✗ to ✓.\n+\n+You now have Travis CI setup with your (empty) repository. Beware, Travis is\n+only triggered by Pushes to the repository, so there won't be any Travis builds\n+until we make our first push to master.\n+\n+**The Python Application Part:**\n+\n+After you clone the repo into your VM, create a directory in your git repo\n+called 'adder'. This is the name of our super simple python app. If you were\n+able to make it to the testing demo you might have seen a lot of this code\n+before.\n+\n+Before getting started, cd into the `adder` directory and run the following\n+commands to create and enter a virtual environment.\n+\n+.. code::\n+\n+    $ virtualenv venv\n+    $ source venv/bin/activate\n+    $ pip install pytest\n+\n+**NOTE:** If you do not yet have virtualenv installed, run the following\n+commands to get it installed. You will need to run the previous commands once\n+the correct programs have been installed.\n+\n+.. code::\n+\n+    $ wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm","path":"final-review/continuous-integration.rst","position":68,"original_position":68,"commit_id":"e670b0ac3e75b127d8011f7d756461e36a23790e","original_commit_id":"e670b0ac3e75b127d8011f7d756461e36a23790e","user":{"login":"jordane","id":342364,"avatar_url":"https://avatars.githubusercontent.com/u/342364?v=3","gravatar_id":"","url":"https://api.github.com/users/jordane","html_url":"https://github.com/jordane","followers_url":"https://api.github.com/users/jordane/followers","following_url":"https://api.github.com/users/jordane/following{/other_user}","gists_url":"https://api.github.com/users/jordane/gists{/gist_id}","starred_url":"https://api.github.com/users/jordane/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jordane/subscriptions","organizations_url":"https://api.github.com/users/jordane/orgs","repos_url":"https://api.github.com/users/jordane/repos","events_url":"https://api.github.com/users/jordane/events{/privacy}","received_events_url":"https://api.github.com/users/jordane/received_events","type":"User","site_admin":false},"body":"`sudo yum install epel-release`\r\n\r\nThe `epel-release` package is included in the default centos repos :)","created_at":"2015-06-01T23:07:18Z","updated_at":"2015-06-01T23:07:18Z","html_url":"https://github.com/DevOpsBootcamp/Bootcamp-Exercises/pull/8#discussion_r31480121","pull_request_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/pulls/8","_links":{"self":{"href":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/pulls/comments/31480121"},"html":{"href":"https://github.com/DevOpsBootcamp/Bootcamp-Exercises/pull/8#discussion_r31480121"},"pull_request":{"href":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/pulls/8"}}},"pull_request":{"url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/pulls/8","id":36677357,"html_url":"https://github.com/DevOpsBootcamp/Bootcamp-Exercises/pull/8","diff_url":"https://github.com/DevOpsBootcamp/Bootcamp-Exercises/pull/8.diff","patch_url":"https://github.com/DevOpsBootcamp/Bootcamp-Exercises/pull/8.patch","issue_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/issues/8","number":8,"state":"open","locked":false,"title":"Final review","user":{"login":"ElijahCaine","id":1897147,"avatar_url":"https://avatars.githubusercontent.com/u/1897147?v=3","gravatar_id":"","url":"https://api.github.com/users/ElijahCaine","html_url":"https://github.com/ElijahCaine","followers_url":"https://api.github.com/users/ElijahCaine/followers","following_url":"https://api.github.com/users/ElijahCaine/following{/other_user}","gists_url":"https://api.github.com/users/ElijahCaine/gists{/gist_id}","starred_url":"https://api.github.com/users/ElijahCaine/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ElijahCaine/subscriptions","organizations_url":"https://api.github.com/users/ElijahCaine/orgs","repos_url":"https://api.github.com/users/ElijahCaine/repos","events_url":"https://api.github.com/users/ElijahCaine/events{/privacy}","received_events_url":"https://api.github.com/users/ElijahCaine/received_events","type":"User","site_admin":false},"body":"I think these docs are ready for a PR. close if you disagree. @lucywyman @iankronquist @jordane ","created_at":"2015-06-01T22:22:10Z","updated_at":"2015-06-01T23:07:18Z","closed_at":null,"merged_at":null,"merge_commit_sha":"a7c7395b519c19015d561c0b4b30711d6327e4b7","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/pulls/8/commits","review_comments_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/pulls/8/comments","review_comment_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/pulls/comments{/number}","comments_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/issues/8/comments","statuses_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/statuses/e670b0ac3e75b127d8011f7d756461e36a23790e","head":{"label":"DevOpsBootcamp:final-review","ref":"final-review","sha":"e670b0ac3e75b127d8011f7d756461e36a23790e","user":{"login":"DevOpsBootcamp","id":5694191,"avatar_url":"https://avatars.githubusercontent.com/u/5694191?v=3","gravatar_id":"","url":"https://api.github.com/users/DevOpsBootcamp","html_url":"https://github.com/DevOpsBootcamp","followers_url":"https://api.github.com/users/DevOpsBootcamp/followers","following_url":"https://api.github.com/users/DevOpsBootcamp/following{/other_user}","gists_url":"https://api.github.com/users/DevOpsBootcamp/gists{/gist_id}","starred_url":"https://api.github.com/users/DevOpsBootcamp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DevOpsBootcamp/subscriptions","organizations_url":"https://api.github.com/users/DevOpsBootcamp/orgs","repos_url":"https://api.github.com/users/DevOpsBootcamp/repos","events_url":"https://api.github.com/users/DevOpsBootcamp/events{/privacy}","received_events_url":"https://api.github.com/users/DevOpsBootcamp/received_events","type":"Organization","site_admin":false},"repo":{"id":25660026,"name":"Bootcamp-Exercises","full_name":"DevOpsBootcamp/Bootcamp-Exercises","owner":{"login":"DevOpsBootcamp","id":5694191,"avatar_url":"https://avatars.githubusercontent.com/u/5694191?v=3","gravatar_id":"","url":"https://api.github.com/users/DevOpsBootcamp","html_url":"https://github.com/DevOpsBootcamp","followers_url":"https://api.github.com/users/DevOpsBootcamp/followers","following_url":"https://api.github.com/users/DevOpsBootcamp/following{/other_user}","gists_url":"https://api.github.com/users/DevOpsBootcamp/gists{/gist_id}","starred_url":"https://api.github.com/users/DevOpsBootcamp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DevOpsBootcamp/subscriptions","organizations_url":"https://api.github.com/users/DevOpsBootcamp/orgs","repos_url":"https://api.github.com/users/DevOpsBootcamp/repos","events_url":"https://api.github.com/users/DevOpsBootcamp/events{/privacy}","received_events_url":"https://api.github.com/users/DevOpsBootcamp/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/DevOpsBootcamp/Bootcamp-Exercises","description":"Exercises for DevOps Bootcamp","fork":false,"url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises","forks_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/forks","keys_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/keys{/key_id}","collaborators_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/teams","hooks_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/hooks","issue_events_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/issues/events{/number}","events_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/events","assignees_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/assignees{/user}","branches_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/branches{/branch}","tags_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/tags","blobs_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/git/refs{/sha}","trees_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/git/trees{/sha}","statuses_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/statuses/{sha}","languages_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/languages","stargazers_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/stargazers","contributors_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/contributors","subscribers_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/subscribers","subscription_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/subscription","commits_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/commits{/sha}","git_commits_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/git/commits{/sha}","comments_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/comments{/number}","issue_comment_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/issues/comments{/number}","contents_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/contents/{+path}","compare_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/compare/{base}...{head}","merges_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/merges","archive_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/downloads","issues_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/issues{/number}","pulls_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/pulls{/number}","milestones_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/milestones{/number}","notifications_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/labels{/name}","releases_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/releases{/id}","created_at":"2014-10-23T22:07:50Z","updated_at":"2015-05-04T19:10:35Z","pushed_at":"2015-06-01T22:29:45Z","git_url":"git://github.com/DevOpsBootcamp/Bootcamp-Exercises.git","ssh_url":"git@github.com:DevOpsBootcamp/Bootcamp-Exercises.git","clone_url":"https://github.com/DevOpsBootcamp/Bootcamp-Exercises.git","svn_url":"https://github.com/DevOpsBootcamp/Bootcamp-Exercises","homepage":"","size":394,"stargazers_count":0,"watchers_count":0,"language":"C","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":4,"mirror_url":null,"open_issues_count":1,"forks":4,"open_issues":1,"watchers":0,"default_branch":"master"}},"base":{"label":"DevOpsBootcamp:master","ref":"master","sha":"4f4141718aec18d2b764b17a691c41fffa735e67","user":{"login":"DevOpsBootcamp","id":5694191,"avatar_url":"https://avatars.githubusercontent.com/u/5694191?v=3","gravatar_id":"","url":"https://api.github.com/users/DevOpsBootcamp","html_url":"https://github.com/DevOpsBootcamp","followers_url":"https://api.github.com/users/DevOpsBootcamp/followers","following_url":"https://api.github.com/users/DevOpsBootcamp/following{/other_user}","gists_url":"https://api.github.com/users/DevOpsBootcamp/gists{/gist_id}","starred_url":"https://api.github.com/users/DevOpsBootcamp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DevOpsBootcamp/subscriptions","organizations_url":"https://api.github.com/users/DevOpsBootcamp/orgs","repos_url":"https://api.github.com/users/DevOpsBootcamp/repos","events_url":"https://api.github.com/users/DevOpsBootcamp/events{/privacy}","received_events_url":"https://api.github.com/users/DevOpsBootcamp/received_events","type":"Organization","site_admin":false},"repo":{"id":25660026,"name":"Bootcamp-Exercises","full_name":"DevOpsBootcamp/Bootcamp-Exercises","owner":{"login":"DevOpsBootcamp","id":5694191,"avatar_url":"https://avatars.githubusercontent.com/u/5694191?v=3","gravatar_id":"","url":"https://api.github.com/users/DevOpsBootcamp","html_url":"https://github.com/DevOpsBootcamp","followers_url":"https://api.github.com/users/DevOpsBootcamp/followers","following_url":"https://api.github.com/users/DevOpsBootcamp/following{/other_user}","gists_url":"https://api.github.com/users/DevOpsBootcamp/gists{/gist_id}","starred_url":"https://api.github.com/users/DevOpsBootcamp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/DevOpsBootcamp/subscriptions","organizations_url":"https://api.github.com/users/DevOpsBootcamp/orgs","repos_url":"https://api.github.com/users/DevOpsBootcamp/repos","events_url":"https://api.github.com/users/DevOpsBootcamp/events{/privacy}","received_events_url":"https://api.github.com/users/DevOpsBootcamp/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/DevOpsBootcamp/Bootcamp-Exercises","description":"Exercises for DevOps Bootcamp","fork":false,"url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises","forks_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/forks","keys_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/keys{/key_id}","collaborators_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/teams","hooks_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/hooks","issue_events_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/issues/events{/number}","events_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/events","assignees_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/assignees{/user}","branches_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/branches{/branch}","tags_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/tags","blobs_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/git/refs{/sha}","trees_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/git/trees{/sha}","statuses_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/statuses/{sha}","languages_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/languages","stargazers_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/stargazers","contributors_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/contributors","subscribers_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/subscribers","subscription_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/subscription","commits_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/commits{/sha}","git_commits_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/git/commits{/sha}","comments_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/comments{/number}","issue_comment_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/issues/comments{/number}","contents_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/contents/{+path}","compare_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/compare/{base}...{head}","merges_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/merges","archive_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/downloads","issues_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/issues{/number}","pulls_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/pulls{/number}","milestones_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/milestones{/number}","notifications_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/labels{/name}","releases_url":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/releases{/id}","created_at":"2014-10-23T22:07:50Z","updated_at":"2015-05-04T19:10:35Z","pushed_at":"2015-06-01T22:29:45Z","git_url":"git://github.com/DevOpsBootcamp/Bootcamp-Exercises.git","ssh_url":"git@github.com:DevOpsBootcamp/Bootcamp-Exercises.git","clone_url":"https://github.com/DevOpsBootcamp/Bootcamp-Exercises.git","svn_url":"https://github.com/DevOpsBootcamp/Bootcamp-Exercises","homepage":"","size":394,"stargazers_count":0,"watchers_count":0,"language":"C","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":4,"mirror_url":null,"open_issues_count":1,"forks":4,"open_issues":1,"watchers":0,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/pulls/8"},"html":{"href":"https://github.com/DevOpsBootcamp/Bootcamp-Exercises/pull/8"},"issue":{"href":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/issues/8"},"comments":{"href":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/issues/8/comments"},"review_comments":{"href":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/pulls/8/comments"},"review_comment":{"href":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/pulls/8/commits"},"statuses":{"href":"https://api.github.com/repos/DevOpsBootcamp/Bootcamp-Exercises/statuses/e670b0ac3e75b127d8011f7d756461e36a23790e"}}}}