Guide: How to Deploy Course Builder from Any OS

2,477 views
Skip to first unread message

Augustine C

unread,
Mar 7, 2017, 9:17:49 AM3/7/17
to Course Builder Forum

HOW TO DEPLOY GOOGLE OPEN ONLINE EDUCATION FROM ANY OPERATING SYSTEM

(March 2017) This is a guide on how to deploy Course Builder on any operating system taking advantage of Google Cloud's Compute Engine (Virtual Machines). Special thanks to Mike Gainer from the Course Builder Team for helping me put this together so users don't struggle and anyone can deploy with a consistent environment regardless of your local environment. In RED are the parts that you may need to change.

  • Create a Google Cloud account if you do not already have one.
  • Create a new project.
    • Your project ID will be present in your Google Open Online Education website's URL, for example: "<project_ID>.appspot.com".
    • Make sure to press the edit button while creating the project if you want to customize your ID.
  • Create a Linux Virtual Machine (often referred to as simply an "instance" AKA Virtual Machine).
    • The Virtual Machine OS used in this guide is the current default one: Debian GNU/Linux 8 (jessie) - this will probably change, so just try to find one that has Debian in the name as an alternative.
    • When creating the VM, select the option to: Allow full access to all Cloud APIs (this is under Identity and API access - doing this gives your VM special access/permissions to certain APIs offered by Google Cloud).
  • Once it is created, click on the SSH button to connect to that Virtual Machine.
  • Install prerequisites by running the following commands on the Virtual Machine (note that we did not have to install Python since it was already included in the OS):
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install unzip
sudo apt-get install python-dev
sudo apt-get install git
sudo apt-get install build-essential manpages-dev
unzip coursebuilder_1.11.001.zip\?raw\=true
  • Run common.sh to take care of dependencies:
bash coursebuilder/scripts/common.sh
  • Authorize gcloud to access your Google account:
gcloud auth login
    • After running the command, open your local computer's browser at the URL listed on your Virtual Machine's console to authorize gcloud, and then paste the code back into your instance.
  • Create an App Engine app within the current Google Cloud Project:
gcloud beta app create
  • Deploy the Course Builder application to Google App Engine (replace your_project_id with your project ID):
bash ./coursebuilder/scripts/deploy.sh your_project_id --noauth_local_webserver
    • After running the command, open your local computer's browser at the URL listed on your Virtual Machine's console to authorize App Engine, and then paste the code back into your instance.
  • Your app should now be running at https://your_project_id.appspot.com . You may now want to delete your Virtual Machine instance in Google Compute Engine so it does not consume any funds from your Google Cloud account.

Adam Feldman

unread,
Mar 7, 2017, 12:04:40 PM3/7/17
to course-bui...@googlegroups.com
Thanks for this great information!  Very helpful for the next person who runs into problems.

I'll pin this post so it says easy to find.

Thanks again!

Adam

--
You received this message because you are subscribed to the Google Groups "Course Builder Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-forum+unsub...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/course-builder-forum/165a72ba-f623-400c-8b5c-fd66394f05bf%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Shonna Etienne

unread,
May 26, 2017, 8:39:37 PM5/26/17
to Course Builder Forum
When I enter the following:

unzip coursebuilder_1.11.001.zip\?raw\=true

I get an error message which states the following:

unzip: command not found

Augustine C

unread,
May 26, 2017, 8:57:03 PM5/26/17
to Course Builder Forum
Dear Shonna,

The order you execute the commands listed above is important, so the guide should be followed in order. This is probably happening because you missed the unzip install command along the way:

sudo apt-get install unzip

If you are new at all of this, you may want to delete the Google Cloud project you made and start over following the video/guide in order.
I will post an additional reply here if I find that this guide is no longer valid. The point of this guide to allow teachers without computing experience to be able to deploy GOOE successfully regardless of your computer environment or computer experience.
Thanks.

אופיר גולדשטיין

unread,
Sep 24, 2017, 5:55:44 AM9/24/17
to Course Builder Forum
Hi
I'm trying to deploy and get this 
const Hoek = require('hoek');^^^^^SyntaxError: Use of const in strict mode. at exports.runInThisContext (vm.js:73:16) at Module._compile (module.js:443:25) at Object.Module._extensions..js (module.js:478:10) at Module.load (module.js:355:32) at Function.Module._load (module.js:310:12) at Module.require (module.js:365:17) at require (module.js:384:17) at Object.<anonymous> (/home/offirgoldstein/coursebuilder_resources_1_11_001/runtime/node/node_modules/phantomjs/node_modules/request/node_modules/hawk/lib/index.js:5:33) at Module._compile (module.js:460:26) at Object.Module._extensions..js (module.js:478:10)npm WARN deprecated tough-...@0.12.1: ReDoS vulnerability parsing Set-Cookie https://nodesecurity.io/advisories/130npm WARN deprecated grace...@2.0.3: gracefthe tree.raceful-fs' to find it in npm WARN deprecated node...@1.4.8: Use uuid module insteadnpm WARN deprecated npm...@2.1.2: this package has been reintegrated into npm and is now out of date with respect to npmnpm WARN engine puny...@2.1.0: wanted: {"node":">=6"} (current: {"node":"0.12.4","npm":"2.10.1"})npm WARN deprecated mini...@1.0.0: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issuenpm WARN engine esp...@4.0.0: wanted: {"node":">=4"} (current: {"node":"0.12.4","npm":"2.10.1"})npm WARN engine esp...@4.0.0: wanted: {"node":">=4"} (current: {"node":"0.12.4","npm":"2.10.1"})npm ERR! Linux 4.9.0-3-amd64npm ERR! argv "/home/offirgoldstein/coursebuilder_resources_1_11_001/runtime/node/bin/node" "/home/offirgoldstein/coursebuilder_resources_1_11_001/runtime/node/bin/npm" "--cache" "/home/offirgoldstein/coursebuilder_resources_1_11_001/runtime/node/cache" "install" "jasmin...@2.3.4" "phan...@1.9.8" "ka...@0.12.36" "karma-...@0.3.5" "karma-phantomjs-...@0.2.0" "karma-jasmine-jquery" "--save-dev"npm ERR! node v0.12.4npm ERR! npm v2.10.1npm ERR! code ELIFECYCLEnpm ERR! phan...@1.9.8 install: `node install.js`npm ERR! Exit status 1npm ERR! npm ERR! Failed at the phan...@1.9.8 install script 'node install.js'.npm ERR! This is most likely a problem with the phantomjs package,npm ERR! not with npm itself.npm ERR! Tell the author that this fails on your system:npm ERR! node install.jsnpm ERR! You can get their info via:npm ERR! npm owner ls phantomjsnpm ERR! There is likely additional logging output above.npm ERR! Please include the following file with any support request:npm ERR! /home/offirgoldstein/coursebuilder_resources_1_11_001/runtime/node/npm-debug.log
Do you have any idea what is going on here?

אופיר גולדשטיין

unread,
Sep 24, 2017, 6:21:56 AM9/24/17
to Course Builder Forum
never mind, got it
tnx :)


On Sunday, September 24, 2017 at 12:55:44 PM UTC+3, אופיר גולדשטיין wrote:
Hi
I'm trying to deploy and get this 
const Hoek = require('hoek');^^^^^SyntaxError: Use of const in strict mode. at exports.runInThisContext (vm.js:73:16) at Module._compile (module.js:443:25) at Object.Module._extensions..js (module.js:478:10) at Module.load (module.js:355:32) at Function.Module._load (module.js:310:12) at Module.require (module.js:365:17) at require (module.js:384:17) at Object.<anonymous> (/home/offirgoldstein/coursebuilder_resources_1_11_001/runtime/node/node_modules/phantomjs/node_modules/request/node_modules/hawk/lib/index.js:5:33) at Module._compile (module.js:460:26) at Object.Module._extensions..js (module.js:478:10)npm WARN deprecated tough-...@0.12.1: ReDoS vulnerability parsing Set-Cookie https://nodesecurity.io/advisories/130npm WARN deprecated grace...@2.0.3: gracefthe tree.raceful-fs' to find it in npm WARN deprecated node...@1.4.8: Use uuid module insteadnpm WARN deprecated npm...@2.1.2: this package has been reintegrated into npm and is now out of date with respect to npmnpm WARN engine puny...@2.1.0: wanted: {"node":">=6"} (current: {"node":"0.12.4","npm":"2.10.1"})npm WARN deprecated mini...@1.0.0: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issuenpm WARN engine esp...@4.0.0: wanted: {"node":">=4"} (current: {"node":"0.12.4","npm":"2.10.1"})npm WARN engine esp...@4.0.0: wanted: {"node":">=4"} (current: {"node":"0.12.4","npm":"2.10.1"})npm ERR! Linux 4.9.0-3-amd64npm ERR! argv "/home/offirgoldstein/coursebuilder_resources_1_11_001/runtime/node/bin/node" "/home/offirgoldstein/coursebuilder_resources_1_11_001/runtime/node/bin/npm" "--cache" "/home/offirgoldstein/coursebuilder_resources_1_11_001/runtime/node/cache" "install" "jasmin...@2.3.4" "phan...@1.9.8" "ka...@0.12.36" "karma-...@0.3.5" "karma-phantomjs-launcher@0.2.0" "karma-jasmine-jquery" "--save-dev"npm ERR! node v0.12.4npm ERR! npm v2.10.1npm ERR! code ELIFECYCLEnpm ERR! phan...@1.9.8 install: `node install.js`npm ERR! Exit status 1npm ERR! npm ERR! Failed at the phan...@1.9.8 install script 'node install.js'.npm ERR! This is most likely a problem with the phantomjs package,npm ERR! not with npm itself.npm ERR! Tell the author that this fails on your system:npm ERR! node install.jsnpm ERR! You can get their info via:npm ERR! npm owner ls phantomjsnpm ERR! There is likely additional logging output above.npm ERR! Please include the following file with any support request:npm ERR! /home/offirgoldstein/coursebuilder_resources_1_11_001/runtime/node/npm-debug.log

Annette

unread,
Oct 1, 2017, 1:15:04 PM10/1/17
to Course Builder Forum
Hi there  - I am so close to getting this deployed but I am stuck on the last step.  When I try to run the final script it tells me No such file or directory  I am putting my project ID in the correct place?  Any ideas?

Augustine C

unread,
Oct 1, 2017, 2:35:59 PM10/1/17
to Course Builder Forum
Dear Annette,

If I understand correctly, you are getting that message while trying to run:

bash ./coursebuilder/scripts/deploy.sh your_project_id --noauth_local_webserver

I want to help you understand what you are doing with this command so that you can figure it out.

This code executes the script "deploy.sh". However, it assumes that you are actively in a higher-level (parent) directory, so we have to include the full path of the script so that the command knows where it is found, in other words:  "./coursebuilder/scripts/deploy.sh".
You can check if it is in that location by navigating the UNIX directories using "cd" and "ls"
You can type "ls" to see the contents of the active directory.

There are two likely possibilities:
1. You may have missed either or both of the two commands that download or unzip the file, so the script cannot be found because it is not there:

2. You may be in the wrong directory. If you were in the same directory as the script (if you navigate to the script with "cd"), you would run:

bash deploy.sh your_project_id --noauth_local_webserver

Annette

unread,
Oct 1, 2017, 2:56:11 PM10/1/17
to Course Builder Forum

thank you so much for your reply and offer to help!  I feel like I am missing one little thing.  You are correct - the problem seems to be in the unzip stage  See script:

Annette

unread,
Oct 1, 2017, 2:56:28 PM10/1/17
to Course Builder Forum
any ideas?

Annette

unread,
Oct 1, 2017, 2:59:31 PM10/1/17
to Course Builder Forum
the problem seems to be with the command 'unzip'?



On Tuesday, March 7, 2017 at 7:17:49 AM UTC-7, Augustine C wrote:

Augustine C

unread,
Oct 1, 2017, 3:02:58 PM10/1/17
to Course Builder Forum
You're very welcome. Thank you for the additional information. This error is because "unzip" was not installed when you executed the previous commands. Can you try re-running this command again and then using unzip?

sudo apt-get install unzip

As I mentioned to Shonna, the commands must be executed in order.

Annette

unread,
Oct 1, 2017, 3:10:18 PM10/1/17
to Course Builder Forum
so helpful!!! thank you so much!  That worked!  The problem is now that I don't have  a compilation error.  The script it suggests is not working?
Any ideas?

Annette

unread,
Oct 1, 2017, 3:12:45 PM10/1/17
to Course Builder Forum

I am trying

Augustine C

unread,
Oct 1, 2017, 9:03:09 PM10/1/17
to Course Builder Forum
Dear Annette,

No problem. Thank you for this information. I have had this before, this issue occurs when one of the commands is missed or sometimes a command does not go through properly (although I cannot tell you offhand which one it is). I can tell you that I test the guide and it has been proven to work by many users since everyone gets an identical operating system so everyone faces the same problems; If something fails for you, it will most likely fail for everyone and in that case I can make revisions to the guide. It may help to delete the Google Cloud project entirely and start over following the guide very carefully. Let me know if it works.

Annette

unread,
Oct 2, 2017, 9:32:34 AM10/2/17
to Course Builder Forum
thank you so much!  I will try again :)

Jarvin Mutatiina

unread,
Oct 11, 2017, 5:00:45 AM10/11/17
to Course Builder Forum

I am getting a 502 Bad gateway error when I access my deployment on  <projectid>.appspot.com. Need some help!!

Mike Gainer

unread,
Oct 11, 2017, 10:28:47 AM10/11/17
to course-bui...@googlegroups.com
@Jarvin: If you could provide a little more information, I might be able to help a little more:
- What's your actual application ID?
- Are you accessing it via a URL like https://myappname.appspot.com or are you trying to configure a custom domain to point to your app?
- In the app engine logs, what are the error details?  appengine.google.com then three-bars icon in top left, then scroll down to Logging in the left menu, click on that.  
  - When you refresh your browser and get the 502, is that 502 also appearing in the logs?  If yes, good -- the request is at least getting to the right server.  If not, the problem is upstream... somewhere.

--
You received this message because you are subscribed to the Google Groups "Course Builder Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-forum+unsub...@googlegroups.com.

Siamak Sam Loni

unread,
Oct 25, 2017, 9:09:57 PM10/25/17
to Course Builder Forum
Hi there, when I use "gcloud app deploy"
I get the following message:
WARNING: Automatic app detection is currently in BetaDeployment to Google App Engine requires an app.yaml file. This command will run `gcloud beta app gen-config` to generate an app.yaml file for you in the current directory (if the current directory does not contain an App Engine service, please answer "no").
Can someone please help me on what I need to do next?

Mike Gainer

unread,
Oct 26, 2017, 12:14:17 PM10/26/17
to course-bui...@googlegroups.com
The short answer is, if it hurts, don't do that.

First, try using the script that came with Course Bulder:

cd ..../where/ever/you/downloaded/coursebuilder
./scripts/deploy.sh name-of-your-cloud-project


That _should_ get it, but it's not an ironclad guarantee - the App Engine folks do like changing auth mechanisms.  So, please try that.  If you've already tried that and it didn't work, it'd be very helpful to get the error message from that command.

Alternately, if you want to push ahead with trying to get 'gcloud app deploy' to work, my guess is that you'd need to run that from the same directory where the app.yaml file lives -- same directory where Course Builder unpacked to.  If you're going down that road, you should at least -attempt- the deploy.sh script once -- reason being, that the first time the scripts are ever run, they also download a _ton_ of 3rd-party libraries, and pre-generate a lot of static content that needs to get uploaded.

Please let us know how that goes...

--
You received this message because you are subscribed to the Google Groups "Course Builder Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-forum+unsub...@googlegroups.com.

Chackras Smith, ED.S.

unread,
Dec 25, 2017, 12:00:32 AM12/25/17
to Course Builder Forum
I though everything in the terminal went pretty smooth following y'alls directions; however, I am seeing this error:

I appreciate any help anyone could provide. Thank you.


404.
 That’s an error.

The requested URL was not found on this server. That’s all we know.

Here is the my log:

File "/home/chackras/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/tools/appcfg.py", line 3875, in Update basename=os.path.splitext(APP_YAML_FILENAME)[0]) File "/home/chackras/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/tools/appcfg.py", line 3425, in _ParseAppInfoFromYaml appyaml.application = self.options.app_id File "/home/chackras/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/api/validation.py", line 361, in __setattr__ value = self.GetValidator(key)(value, key) File "/home/???????/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/api/validation.py", line 599, in __call__ return self.Validate(value, key) File "/home/??????/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/api/validation.py", line 850, in Validate return self.validator(value, key) File "/home/????????/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/api/validation.py", line 599, in __call__ return self.Validate(value, key) File "/home/???????/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/api/validation.py", line 924, in Validate '\'%s\'' % (value, key, self.re.pattern))google.appengine.api.validation.ValidationError: Value '—noauth_local_webserver' for application does not match expression '^(?:(?:[a-z\d\-]{1,100}\~)?(?:(?!\-)[a-z\d\-\.]{1,100}:)?(?!-)[a-z\d\-]{0,99}[a-z\d])$'

Chackras Smith, ED.S.

unread,
Dec 25, 2017, 12:42:42 AM12/25/17
to Course Builder Forum
I deleted off the cloud reinstalled, all copy and paste.  Received these error messages during the process.  

bash coursebuilder/scripts/common.sh


at Function.Module._load (module.js:310:12) at Module.require (module.js:365:17) at require (module.js:384:17) at Object.<anonymous> (/home/?????????/coursebuilder_resources_1_11_001/runtime/node/node_modules/phantomjs/node_modules/request/node_modules/hawk/lib/index.js:5:33) at Module._compile (module.js:460:26) at Object.Module._extensions..js (module.js:478:10)npm WARN deprecated tough-...@0.12.1: ReDoS vulnerability parsing Set-Cookie https://nodesecurity.io/advisories/130npm WARN deprecated grace...@2.0.3: please upgrade to graceful-fs 4 for compatibility with current and future versions of Node.jsnpm WARN deprecated node...@1.4.8: Use uuid module insteadnpm WARN deprecated npm...@2.1.2: this package has been reintegrated into npm and is now out of date with respect to npmnpm WARN engine puny...@2.1.0: wanted: {"node":">=6"} (current: {"node":"0.12.4","npm":"2.10.1"})npm WARN engine esp...@4.0.0: wanted: {"node":">=4"} (current: {"node":"0.12.4","npm":"2.10.1"})npm WARN engine esp...@4.0.0: wanted: {"node":">=4"} (current: {"node":"0.12.4","npm":"2.10.1"})npm WARN deprecated mini...@1.0.0: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issuenpm ERR! Linux 3.16.0-4-amd64npm ERR! argv "/home/????????/coursebuilder_resources_1_11_001/runtime/node/bin/node" "/home/???????????/coursebuilder_resources_1_11_001/runtime/node/bin/npm" "--cache" "/home/????????? /coursebuilder_resources_1_11_001/runtime/node/cache" "install" "jasmin...@2.3.4" "phan...@1.9.8" "ka...@0.12.36" "karma-...@0.3.5" "karma-phanto...@0.2.0" "karma-jasmine-jquery" "--save-dev"npm ERR! node v0.12.4npm ERR! npm v2.10.1npm ERR! code ELIFECYCLEnpm ERR! phan...@1.9.8 install: `node install.js`npm ERR! Exit status 1npm ERR! npm ERR! Failed at the phan...@1.9.8 install script 'node install.js'.npm ERR! This is most likely a problem with the phantomjs package,npm ERR! not with npm itself.npm ERR! Tell the author that this fails on your system:npm ERR! node install.jsnpm ERR! You can get their info via:npm ERR! npm owner ls phantomjsnpm ERR! There is likely additional logging output above.npm ERR! Please include the following file with any support request:npm ERR! /home/chackras/coursebuilder_resources_1_11_001/runtime/node/npm-debug.log


gcloud beta app create


Your current project is [nodal-component-190102]. You can change this setting by running: $ gcloud config set project PROJECT_ID???????@course-builder-???????:~$ You are now logged in as [????????@gmail.com].-bash: You: command not found????????@course-builder-????????:~$ Your current project is [nodal-component-190102]. You can change this setting by running:-bash: Your: command not found?????????@course-builder-??????????:~$ $ gcloud config set project PROJECT_IDnodal-component-190102



Chackras Smith, ED.S.

unread,
Dec 25, 2017, 12:45:32 AM12/25/17
to Course Builder Forum

Your current project is [nodal-component-190102]. You can change this setting by running: $ gcloud config set project PROJECT_ID??????@course-builder-???????:~$ You are now logged in as [???????@gmail.com].-bash: You: command not found????????@course-builder-?????????:~$ Your current project is [nodal-component-190102]. You can change this setting by running:-bash: Your: command not found???????@course-builder-????????:~$ $ gcloud config set project PROJECT_IDnodal-component-190102

Mike Gainer

unread,
Dec 28, 2017, 12:20:34 PM12/28/17
to course-bui...@googlegroups.com
I see at least three problems:
  • It looks like a library version we depend on isn't being supported any longer, so the install is crashing.  However, it's just a library we use for testing, so you can proceed past that problem by editing coursebuilder/scripts/common.sh, and commenting out lines 280-283 and 287-304.  (See below for exactly which lines.)
  • Next problem is more significant.  This may or may not be affecting you, depending on the version of the html5lib you have.  Basically, do this if-and-only-if you see errors about "AttributeError: 'module' object has no attribute '_base'".   You will need to edit a file that got downloaded to your home directory -- it should be at $HOME//coursebuilder_resources_1_11_001/runtime/beautifulsoup4/bs4/builder/_html5lib.py
    On line 70, change "_base" to just "base".  Looks like that also needs to be done in a few other places in that file - search for "treebuilders._base" and change to "treebuilders.base"
    class TreeBuilderForHtml5lib(html5lib.treebuilders.base.TreeBuilder):
  • Lastly, it looks like your command for 'gcloud config set project..." needs a space between "PROJECT_ID" and the name of your app engine app.



Comment out the lines in purple below, by adding a '#' character at the beginning of each line.

  echo Installing Karma
  pushd "$RUNTIME_HOME/node" > /dev/null
  if [ ! -d node_modules ]; then
    mkdir node_modules
  fi
#  ./bin/npm --cache "$RUNTIME_HOME/node/cache" install \
#      jasmin...@2.3.4 phan...@1.9.8 ka...@0.12.36 \
#      karma-...@0.3.5 karma-phanto...@0.2.0 karma-jasmine-jquery \
#      --save-dev > /dev/null
  popd > /dev/null
fi

## NOTE: Yes, we are looking for 2.1.0, having installed 2.1.1.  Because
## PhantomJS' ChangeLog file only mentions 2.1.0, not 2.1.1.  Grr.
#if need_install phantomjs ChangeLog Version 2.1.0 test ; then
#  echo Installing PhantomJs
#  if [[ $OSTYPE == linux* ]] ; then
#    download_and_unpack \
#      $CB_ARCHIVE_LIB_URL/phantomjs-2.1.1-linux-x86_64.tar.bz2 "$RUNTIME_HOME"
#    rm -rf "$RUNTIME_HOME/phantomjs"
#    mv "$RUNTIME_HOME/phantomjs-2.1.1-linux-x86_64" "$RUNTIME_HOME/phantomjs"
#  elif [[ $OSTYPE == darwin* ]] ; then
#    download_and_unpack \
#      $CB_ARCHIVE_LIB_URL/phantomjs-2.1.1-macosx.zip \
#      "$RUNTIME_HOME/phantomjs"
#  else
#    echo "Target OS '$OSTYPE' must start with 'linux' or 'darwin'."
#    exit -1
#  fi
#fi




On Sun, Dec 24, 2017 at 9:45 PM Chackras Smith, ED.S. <chac...@gmail.com> wrote:

Your current project is [nodal-component-190102]. You can change this setting by running: $ gcloud config set project PROJECT_ID??????@course-builder-???????:~$ You are now logged in as [???????@gmail.com].-bash: You: command not found????????@course-builder-?????????:~$ Your current project is [nodal-component-190102]. You can change this setting by running:-bash: Your: command not found???????@course-builder-????????:~$ $ gcloud config set project PROJECT_IDnodal-component-190102

--
You received this message because you are subscribed to the Google Groups "Course Builder Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-f...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/course-builder-forum/f0895b5a-d7d4-4db7-ae8a-a6974edfdc88%40googlegroups.com.

Chackras Smith, ED.S.

unread,
Dec 30, 2017, 12:18:45 AM12/30/17
to Course Builder Forum
Mike, Thank you for taking the time to help me install this program; it's running like a charm!

Okay, here is what I did:

Deleted everything, and reinstalled.

then after failure; which, I expected:  

cd coursebuilder/scripts

nano scripts/common.sh

placed the #'s in the proper locations, saved the file, and kept file name the same. 

bash coursebuilder/scripts/common.sh 

Received these 2 warnings. 
WARNING: `gcloud auth login` no longer writes application default credentials.If you need to use ADC, see: gcloud auth application-default --helpWARNING: Creating an App Engine application for a project is irreversible and the regioncannot be changed. More information about regions is at<https://cloud.google.com/appengine/docs/locations>.

However, I proceeded after seeing. 
Success! The app is now created. Please use `gcloud app deploy` to deploy your first app.

bash ./coursebuilder/scripts/deploy.sh  project_id  --noauth_local_webserver

-bash: bash ./coursebuilder/scripts/deploy.sh project_id --noauth_local_webserver: No such file or directory

Took out extra spaces in front, and behind of the project_id. 
bash ./coursebuilder/scripts/deploy.sh project_id --noauth_local_webserver

Checked it here.

https://project_id.appspot.com


It's now up and running. 


I hope this helps someone good luck. 


To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-forum+unsub...@googlegroups.com.

Gilad Sevitt

unread,
Jan 1, 2018, 7:34:36 AM1/1/18
to Course Builder Forum
Hey,
I'm stuck in this stage:


unzip coursebuilder_1.11.001.zip\?raw\=true
I downloaded the file, and it's on my desktop. the answer I get is:
-bash: coursebuilder_1.11.001.zip?raw=true: command not found

Some help?

Thanks a lot!

Mike Gainer

unread,
Jan 2, 2018, 10:59:21 AM1/2/18
to course-bui...@googlegroups.com
Looks like your browser is not stripping out URL parameters from the filename when it saves.  Change the filename to just coursebuilder_1.11.001.zip and then try unzip coursebuilder_1.11.001.zip 


--
You received this message because you are subscribed to the Google Groups "Course Builder Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-f...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/course-builder-forum/e41b388e-231b-4d65-bf85-0533e45b928e%40googlegroups.com.

Jon Dicks

unread,
Jan 3, 2018, 4:51:50 PM1/3/18
to Course Builder Forum
In command prompt, when installing App Engine developer toolkit, the installation halts with this message:

./scripts/common.sh: line 112: unzip: command not found

What should I do?

Mike Gainer

unread,
Jan 3, 2018, 4:55:09 PM1/3/18
to course-bui...@googlegroups.com
Download and install the 'unzip' command appropriate to whatever OS you are using.


--
You received this message because you are subscribed to the Google Groups "Course Builder Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-f...@googlegroups.com.

Jon Dicks

unread,
Jan 3, 2018, 5:14:19 PM1/3/18
to course-bui...@googlegroups.com
I am using windows 10. One would have thought the unzip command  would come with the OS. Do you know of a site I can obtain this?

To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-forum+unsub...@googlegroups.com.

--
You received this message because you are subscribed to a topic in the Google Groups "Course Builder Forum" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/course-builder-forum/CAN84QThKyc/unsubscribe.
To unsubscribe from this group and all its topics, send an email to course-builder-forum+unsub...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/course-builder-forum/CAExSL7pHYuAEgJ098PhvfBeZzTNrdJTUQ7wmevvLB8_VL_WgfQ%40mail.gmail.com.

Mike Gainer

unread,
Jan 3, 2018, 5:47:06 PM1/3/18
to course-bui...@googlegroups.com
Hm.  That's pretty weird; IIRC, the Windows setup should have asked Cygwin to grab 'unzip' for you.

But apparently not.  Easiest thing to do would be to launch the cygwin installer, and install 'unzip' manually.  The installer should be in your Downloads/ directory, named setup-x86-64.exe.  Launch that, and click through until you get to the screen that lets you pick what to install.  Search for 'unzip', and so on.

I'm looking at coursebuilder/scripts/cygwin_setup.bat, and it is asking for unzip to be installed.  If you haven't already, maybe just try re-running the setup script?


To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-f...@googlegroups.com.

--
You received this message because you are subscribed to a topic in the Google Groups "Course Builder Forum" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/course-builder-forum/CAN84QThKyc/unsubscribe.
To unsubscribe from this group and all its topics, send an email to course-builder-f...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "Course Builder Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-f...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/course-builder-forum/CAGi0DLksD3N7gPhFv%3DAXPDaXHV6AWRMcM70M6RZUn1w%3D-qsQeA%40mail.gmail.com.

Jon Dicks

unread,
Jan 4, 2018, 12:11:31 PM1/4/18
to Course Builder Forum
Thank you Mike for your help. I reinstalled cygwin and the unzip worked (it may be because I needed to restart). I am now hung up on the last step:

  • Deploy the Course Builder application to Google App Engine (replace your_project_id with your project ID):
bash ./coursebuilder/scripts/deploy.sh your_project_id --noauth_local_webserver
  • After running the command, open your local computer's browser at the URL listed on your Virtual Machine's console to authorize App Engine, and then paste the code back into your instance.
The URL listed on the virtual machine console to authorize App Engine is where exactly?

Sorry for the newbie questions, I was not expecting to have to do so much work when I started this.

On Wednesday, 3 January 2018 20:47:06 UTC-2, Mike Gainer - Course Builder Team wrote:
Hm.  That's pretty weird; IIRC, the Windows setup should have asked Cygwin to grab 'unzip' for you.

But apparently not.  Easiest thing to do would be to launch the cygwin installer, and install 'unzip' manually.  The installer should be in your Downloads/ directory, named setup-x86-64.exe.  Launch that, and click through until you get to the screen that lets you pick what to install.  Search for 'unzip', and so on.

I'm looking at coursebuilder/scripts/cygwin_setup.bat, and it is asking for unzip to be installed.  If you haven't already, maybe just try re-running the setup script?


To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-forum+unsub...@googlegroups.com.

--
You received this message because you are subscribed to a topic in the Google Groups "Course Builder Forum" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/course-builder-forum/CAN84QThKyc/unsubscribe.
To unsubscribe from this group and all its topics, send an email to course-builder-forum+unsub...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "Course Builder Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-forum+unsub...@googlegroups.com.

Mike Gainer

unread,
Jan 4, 2018, 12:52:50 PM1/4/18
to course-bui...@googlegroups.com
On Thu, Jan 4, 2018 at 9:11 AM Jon Dicks <jon.d...@gmail.com> wrote:
Thank you Mike for your help. I reinstalled cygwin and the unzip worked (it may be because I needed to restart). I am now hung up on the last step:

  • Deploy the Course Builder application to Google App Engine (replace your_project_id with your project ID):
bash ./coursebuilder/scripts/deploy.sh your_project_id --noauth_local_webserver
  • After running the command, open your local computer's browser at the URL listed on your Virtual Machine's console to authorize App Engine, and then paste the code back into your instance.
The URL listed on the virtual machine console to authorize App Engine is where exactly?

Running the deploy.sh command with the --noauth_local_webserver should put some output into the terminal window where you're running that command.  IIRC, it prints out a URL.  You're supposed to copy/paste that into your browser, log in with your Google account, and authorize the access level.  After authorizing, that web page will show a long string of text, which is the authentication token.  You then copy that token back into the terminal window, which _should_ be waiting for input.

If that's not what's going on, it'd be very helpful if you could copy/paste everything from the terminal window so I can see what's going sideways.
 
Sorry for the newbie questions, I was not expecting to have to do so much work when I started this.

Yep.  On behalf of the CB team, I apologize for the awfulness.  The upside is that once you get it installed, that should be the end of it, and all the rest of the management, care, and feeding can be done from the web UI.

Jon Dicks

unread,
Jan 4, 2018, 3:23:17 PM1/4/18
to Course Builder Forum
Hi Mike

I assume I should be running this command on my PC in command prompt? I get this, no mention of a URL:

C:\>bash ./coursebuilder/scripts/deploy.sh curly-arrow-chemistry --noauth_local_webserver
Removing GCB_ALLOW_STATIC_SERV set to ''
Sourced as: './coursebuilder/scripts/common.sh'
Ensuring runtime folder /home/jondicks/coursebuilder_resources_1_11_001/runtime
Installing App Engine developer toolkit.  This may take a few minutes.

C:\>

Mike Gainer

unread,
Jan 4, 2018, 3:37:52 PM1/4/18
to course-bui...@googlegroups.com
OK, Dumb Question of the Day:  I see a backslash in that C:\> prompt, which suggests you're running that from a Windows terminal?

_In principle_, I'd kind of expect the script to work as you're using it, but I'm guessing it's not doing _something_ due to not having environment variables set up that Cygwin would provide?  Maybe?  Anyhow, it's likely to be faster to just throw some spaghetti and see what sticks rather than walking you through adding debugging print statements to the deployment script to diagnose the specific issue you're seeing.

Try either:
- Running the .../coursebuilder/scripts/windows_deploy.bat file (by double clicking from a folder browser window), or
- Starting a Cygwin shell, and running the 
  bash ./coursebuilder/scripts/deploy.sh your_project_id --noauth_local_webserver
 script from that.

Or, heck, just start the Cygwin window and run deploy.sh withoutthe --noauth_local_webserver and ... see what happens.






--
You received this message because you are subscribed to the Google Groups "Course Builder Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-f...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/course-builder-forum/9bb9e587-cc06-43f1-b68f-0642ae1a52ea%40googlegroups.com.
Message has been deleted

Jon Dicks

unread,
Jan 4, 2018, 4:06:44 PM1/4/18
to Course Builder Forum
It finally worked! I have now deployed the project. I started doing the setup locally in the command prompt and got stuck. Then I saw this other option using the virtual machine, but got confused. I have followed all the steps again doing everything on the virtual machine and it went smoothly. Thanks for you patience and help Mike. Now to get down to the business of making the project!

Mike Gainer

unread,
Jan 4, 2018, 4:08:28 PM1/4/18
to course-bui...@googlegroups.com
Good?  In your message with the huge long error output, it looks like you encountered a bug that (should have?) blocked you...  but if it's up and serving pages, then success!


--
You received this message because you are subscribed to the Google Groups "Course Builder Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-f...@googlegroups.com.

Jon Dicks

unread,
Jan 4, 2018, 4:25:14 PM1/4/18
to Course Builder Forum
Yes, success. Ignore the post with the long output, it was a mistake on my part. I am now reading the documentation for creating my course.

Thanks again for your help Mike.


On Thursday, 4 January 2018 19:08:28 UTC-2, Mike Gainer - Course Builder Team wrote:
Good?  In your message with the huge long error output, it looks like you encountered a bug that (should have?) blocked you...  but if it's up and serving pages, then success!


On Thu, Jan 4, 2018 at 1:06 PM Jon Dicks <jon.d...@gmail.com> wrote:
It finally worked! I have now deployed the project. I started doing the setup locally in the command prompt and got stuck. Then I saw this other option using the virtual machine, but got confused. I have followed all the steps again doing everything on the virtual machine and it went smoothly. Thanks for you patience and help Mike. Now to get down to the business of making the project!

On Thursday, 4 January 2018 18:37:52 UTC-2, Mike Gainer - Course Builder Team wrote:
OK, Dumb Question of the Day:  I see a backslash in that C:\> prompt, which suggests you're running that from a Windows terminal?

_In principle_, I'd kind of expect the script to work as you're using it, but I'm guessing it's not doing _something_ due to not having environment variables set up that Cygwin would provide?  Maybe?  Anyhow, it's likely to be faster to just throw some spaghetti and see what sticks rather than walking you through adding debugging print statements to the deployment script to diagnose the specific issue you're seeing.

Try either:
- Running the .../coursebuilder/scripts/windows_deploy.bat file (by double clicking from a folder browser window), or
- Starting a Cygwin shell, and running the 
  bash ./coursebuilder/scripts/deploy.sh your_project_id --noauth_local_webserver
 script from that.

Or, heck, just start the Cygwin window and run deploy.sh withoutthe --noauth_local_webserver and ... see what happens.

--
You received this message because you are subscribed to the Google Groups "Course Builder Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-forum+unsub...@googlegroups.com.

Dina Kupchanka

unread,
Mar 11, 2018, 7:43:32 AM3/11/18
to Course Builder Forum
Hello there Mike, 

I tried to deploy my project a few times but this is where I am stuck now:

Enter verification code: 4/AABw3gaPFiknryIzch8jdz1GWV_GJtY7yRa1I0LzZhlAHpWvxLtOJzcWARNING: `gcloud auth login` no longer writes application default credentials.If you need to use ADC, see: gcloud auth application-default --helpYou are now logged in as [kupc...@gmail.com].Your current project is [nextlevelrussian]. You can change this setting by running: $ gcloud config set project PROJECT_IDkupchanka@instance-1:~$ gcloud beta app createERROR: (gcloud.beta.app.create) The project [nextlevelrussian] already contains an App Engine application in region [us-east1]. You can deploy your application using `gcloud app deploy`.kupchanka@instance-1:~$ gcloud app deployWARNING: Automatic app detection is currently in BetaDeployment to Google App Engine requires an app.yaml file. This command will run `gcloud beta app gen-config` to generate an app.yaml file for you in the current directory (if the current directory does not contain an App Engine service, please answer "no").Do you want to continue (Y/n)? yThis looks like a Python app. If so, please enter the command to run the app in production (enter nothing if it's not a python app): :bash ./coursebuilder/scripts/deploy.sh_nextlevelrussian--noauth_local_webserverWriting [app.yaml] to [/home/kupchanka].ERROR: (gcloud.app.deploy) An error occurred while parsing file: [/home/kupchanka/app.yaml]Unable to assign value '<unknown>' to attribute 'entrypoint':Value u'bash\xa0./coursebuilder/scripts/deploy.sh_nextlevelrussian--noauth_local_webserver' for entrypoint could not be converted to type str. in "/home/kupchanka/app.yaml", line 1, column 13kupchanka@instance-1:~$

Is there a solution? Apologies for troubling you!
Dina



To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-forum+unsub...@googlegroups.com.

Mike Gainer

unread,
Mar 12, 2018, 9:53:59 AM3/12/18
to course-bui...@googlegroups.com
From the error message, it kind of looks like you might have already had some success deploying _something_ (be it Course Builder or something else) to your Cloud project.  To save a bit on the back-and-forth, I'm going to ask a bunch of questions that are not necessarily going to look like they're all related, but they do reflect the list of common issues I've seen in the past.

Below, replace your-appengine-project-id with the actual ID (not the title!) of your project.  I'm guessing it's "nextlevelrussian"?


First of all, what OS are you using?

If you're on Mac or Linux (Ubuntu, etc.), what happens if you do:
cd where/ever/you/unpacked/coursebuilder
./deploy.sh your-appengine-project-id

If you go to https://appengine.google.com and then click the "hamburger" menu - three lines in a circle, top left, then scroll down to App Engine, and then within that, click Versions, what do you see?  (A screenshot would be very helpful here)

If you go to https://your-appengine-project-id.appspot.com/modules/admin  what happens?





To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-f...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "Course Builder Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-f...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/course-builder-forum/036f237b-dd53-4b66-b6a1-f8030083148f%40googlegroups.com.

Megan Sudak

unread,
May 16, 2018, 2:32:32 PM5/16/18
to Course Builder Forum
Ok So I have followed all the instructions I can find, and the very last step is where it goes awry. Something about an SSL Handshake Failed? Any tips. Its when I go back to my VM and enter the verification code:

astersudaktrains@coursedrive1:~$ bash ./coursebuilder/scripts/deploy.sh strategic-goods-204317 --noauth_local_webserverRemoving GCB_ALLOW_STATIC_SERV set to ''Sourced as: './coursebuilder/scripts/common.sh'Ensuring runtime folder /home/mastersudaktrains/coursebuilder_resources_1_11_001/runtimeUsing GAE SDK 1.9.40 from /home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengineUsing webtest-2.0.14 from /home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/webtestUsing six-1.5.2 from /home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/sixUsing beautifulsoup4-4.4.1 from /home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/beautifulsoup4Using selenium-2.53.1 from /home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/seleniumUsing node-0.12.4 from /home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/nodeUsing phantomjs-2.1.0 from /home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/phantomjsUsing logilab/pylint-1.4.0 from /home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/logilab/pylintUsing logilab/astroid-1.3.2 from /home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/logilab/astroidUsing logilab/logilab/common-0.62.0 from /home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/logilab/logilab/commonUsing third party Python packages from /home/mastersudaktrains/coursebuilder/libUsing yui-3.6.0 from /home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/yuiStatic serving enabledUsing current /home/mastersudaktrains/coursebuilder/static.yaml06:22 PM Application: strategic-goods-204317 (was: mycourse); version: 106:22 PM Host: appengine.google.com06:22 PM Starting update of app: strategic-goods-204317, version: 106:22 PM Getting current resource limits.Go to the following link in your browser: https://accounts.google.com/o/oauth2/auth?scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fappengine.admin+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fcloud-platform+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&response_type=code&client_id=550516889912.apps.googleusercontent.com&access_type=offlineEnter verification code: 4/AADHxAaeRw0wUKkId5zN2fBfI0kRWV_OlUtZmIXHLCChL_R_m2gjRgETraceback (most recent call last): File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/appcfg.py", line 133, in <module> run_file(__file__, globals()) File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/appcfg.py", line 129, in run_fileitional_wrapper execfile(_PATHS.script_file(script_name), globals_) File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/tools/appcfg.py", line 5497, in <module> main(sys.argv) File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/tools/appcfg.py", line 5488, in main result = AppCfgApp(argv).Run() File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/tools/appcfg.py", line 2966, in Run self.action(self) File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/tools/appcfg.py", line 5144, in __call__ return method() File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/tools/appcfg.py", line 3876, in Update self._UpdateWithParsedAppYaml(appyaml, self.basepath) File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/tools/appcfg.py", line 3929, in _UpdateWithParsedAppYaml self.UpdateVersion(rpcserver, basepath, appyaml, APP_YAML_FILENAME) File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/tools/appcfg.py", line 3814, in UpdateVersion return appversion.DoUpload(paths, openfunc) File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/tools/appcfg.py", line 2401, in DoUpload self.error_fh) File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/tools/appcfg.py", line 497, in GetResourceLimits resource_limits.update(_GetRemoteResourceLimits(logging_context)) File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/tools/appcfg.py", line 467, in _GetRemoteResourceLimits yaml_data = logging_context.Send('/api/appversion/getresourcelimits') File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/tools/appcfg.py", line 1709, in Send result = self.rpcserver.Send(url, payload=payload, **kwargs) File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/tools/appengine_rpc_httplib2.py", line 240, in Send self._Authenticate(self.http, auth_errors[0] > 0) File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/google/appengine/tools/appengine_rpc_httplib2.py", line 465, in _Authenticate self.credentials = tools.run_flow(flow, self.storage, self.flags) File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/lib/oauth2client/oauth2client/util.py", line 137, in positional_wrapper return wrapped(*args, **kwargs) File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/lib/oauth2client/oauth2client/tools.py", line 225, in run_flow credential = flow.step2_exchange(code, http=http) File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/lib/oauth2client/oauth2client/util.py", line 137, in positional_wrapper return wrapped(*args, **kwargs) File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/lib/oauth2client/oauth2client/client.py", line 2000, in step2_exchange headers=headers) File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/lib/httplib2/httplib2/__init__.py", line 1584, in request (response, content) = self._request(conn, authority, uri, request_uri, method, body, headers, redirections, cachekey) File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/lib/httplib2/httplib2/__init__.py", line 1332, in _request (response, content) = self._conn_request(conn, request_uri, method, body, headers) File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/lib/httplib2/httplib2/__init__.py", line 1268, in _conn_request conn.connect() File "/home/mastersudaktrains/coursebuilder_resources_1_11_001/runtime/google_appengine/lib/httplib2/httplib2/__init__.py", line 1037, in connect raise SSLHandshakeError(e)httplib2.SSLHandshakeError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:661)

To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-forum+unsub...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "Course Builder Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-forum+unsub...@googlegroups.com.

neth

unread,
May 17, 2018, 5:32:03 AM5/17/18
to Course Builder Forum
I'm having this issue too. Followed this guide word for word.

ecosmo...@gmail.com

unread,
May 18, 2018, 12:33:54 PM5/18/18
to Course Builder Forum

I am also having this 'ssl handshake failed' issue. Pls help.

Mike Gainer - Course Builder Team

unread,
May 21, 2018, 2:23:38 PM5/21/18
to Course Builder Forum
OK, found, I think.

In your $HOME directory on whatever box you're doing the deployments from, we download the App Engine runtime helper scripts.  We use a specific version of those tools/scripts, because that's what we tested with.  However, that version is getting pretty long in the tooth, and as such, some security certificates in one of the files have expired.

Find the file that we want to replace:
cd $HOME
find coursebuilder_resources* -name urlfetch_cacerts.txt

This will result in some path to a file, probably:
coursebuilder_resources_1_11_001/runtime/google_appengine/lib/cacerts/urlfetch_cacerts.txt

To simplify the next command, let's go into that directory:
cd coursebuilder_resources_1_11_001/runtime/google_appengine/lib/cacerts

Download a replacement file over the top of it:
wget https://curl.haxx.se/ca/cacert.pem -O urlfetch_cacerts.txt

And then re-try whatever-it-was you were trying to do with CB.

etho...@oregonfoodbank.org

unread,
May 21, 2018, 4:25:21 PM5/21/18
to Course Builder Forum
Mike,

There is a cacert.txt file that contains all the root CA certs as well. Replacing the coursebuilder_resources_1_11_001/runtime/google_appengine/lib/httplib2/httplib2/cacert.txt file with https://curl.haxx.se/ca/cacert.pem did the trick for getting ./deploy.sh to run correctly.

Thanks for this, much appreciated.

Mrs. Patricia Thomas-Evans

unread,
May 21, 2018, 11:48:58 PM5/21/18
to course-bui...@googlegroups.com
Thanks.


From: course-bui...@googlegroups.com <course-bui...@googlegroups.com> on behalf of etho...@oregonfoodbank.org <etho...@oregonfoodbank.org>
Sent: Monday, May 21, 2018 3:25:21 PM
To: Course Builder Forum
Subject: Re: Guide: How to Deploy Course Builder from Any OS
 
Mike,

There is a cacert.txt file that contains all the root CA certs as well. Replacing the coursebuilder_resources_1_11_001/runtime/google_appengine/lib/httplib2/httplib2/cacert.txt file with https://curl.haxx.se/ca/cacert.pem did the trick for getting ./deploy.sh to run correctly.

Thanks for this, much appreciated.

--
You received this message because you are subscribed to the Google Groups "Course Builder Forum" group.
To unsubscribe from this group and stop receiving emails from it, send an email to course-builder-f...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/course-builder-forum/823d943b-cf2c-4018-8668-efa37a32e769%40googlegroups.com.

Augustine C

unread,
May 25, 2018, 7:02:50 PM5/25/18
to Course Builder Forum
This March 2017 guide is outdated and no longer works without Mike Gainer's fix. For anyone looking to deploy CourseBuilder and still having trouble, I posted an updated guide here:


Thank you,
Augustine
  • Deploy the Course Builder application to Google App Engine (replace your_project_id with your project ID):
bash ./coursebuilder/scripts/deploy.sh your_project_id --noauth_local_webserver
    • After running the command, open your local computer's browser at the URL listed on your Virtual Machine's console to authorize App Engine, and then paste the code back into your instance.
Reply all
Reply to author
Forward
Message has been deleted
0 new messages