openshift-evangelists / workshopper

Workshop content rendering tool
63 stars 40 forks source link

workshopper not rendering certain variables #64

Open thoraxe opened 6 years ago

thoraxe commented 6 years ago

When using the latest master commits, workshopper is not rendering some variables. I don't think it's actually the variables (I tried different variable names, locations, etc). But I think something on my adoc is causing WorkShopper to get angry and stop processing variables.

I frequently get this error:

⌂77% [thoraxe:~/Red_Hat/openshift/workshopper] master(5) ± bundle exec rackup -p 8080 -E development
Puma starting in single mode...
* Version 3.12.0 (ruby 2.4.4-p296), codename: Llamas in Pajamas
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://localhost:8080
Use Ctrl-C to stop
::1 - - [18/Sep/2018:08:01:03 -0400] "GET /workshop/ocp-admin-testdrive/lab/environment HTTP/1.1" 200 - 0.7298                                                                                                    
::1 - - [18/Sep/2018:08:01:03 -0400] "GET /workshop/ocp-admin-testdrive/asset/images/webssh_login.png HTTP/1.1" 304 - 0.0491                                                                                      
Rack::Lint::LintError: Status must be >=100 seen as integer
        /home/thoraxe/.gem/ruby/gems/rack-2.0.5/lib/rack/lint.rb:20:in `assert'
        /home/thoraxe/.gem/ruby/gems/rack-2.0.5/lib/rack/lint.rb:620:in `check_status'
        /home/thoraxe/.gem/ruby/gems/rack-2.0.5/lib/rack/lint.rb:51:in `_call'
        /home/thoraxe/.gem/ruby/gems/rack-2.0.5/lib/rack/lint.rb:37:in `call'
        /home/thoraxe/.gem/ruby/gems/rack-2.0.5/lib/rack/show_exceptions.rb:23:in `call'
        /home/thoraxe/.gem/ruby/gems/rack-2.0.5/lib/rack/common_logger.rb:33:in `call'
        /home/thoraxe/.gem/ruby/gems/rack-2.0.5/lib/rack/chunked.rb:54:in `call'
        /home/thoraxe/.gem/ruby/gems/rack-2.0.5/lib/rack/content_length.rb:15:in `call'
        /home/thoraxe/.gem/ruby/gems/puma-3.12.0/lib/puma/configuration.rb:225:in `call'
        /home/thoraxe/.gem/ruby/gems/puma-3.12.0/lib/puma/server.rb:658:in `handle_request'
        /home/thoraxe/.gem/ruby/gems/puma-3.12.0/lib/puma/server.rb:472:in `process_client'
        /home/thoraxe/.gem/ruby/gems/puma-3.12.0/lib/puma/server.rb:332:in `block in run'
        /home/thoraxe/.gem/ruby/gems/puma-3.12.0/lib/puma/thread_pool.rb:133:in `block in spawn_thread'
::1 - - [18/Sep/2018:08:01:03 -0400] "GET / HTTP/1.1" 500 1104 0.1138
::1 - - [18/Sep/2018:08:01:04 -0400] "GET /favicon.ico HTTP/1.1" 304 - 0.0496

On pages where things are failing to get substituted.

When I load the same pages with the 0.3 tag, no errors and variables are rendered just fine.

here's an example set of variables to export before running workshopper:

export WORKSHOPS_URLS=https://raw.githubusercontent.com/thoraxe/openshift-cns-testdrive/310-infra-fixes/labguide/_ocp_admin_testdrive.yaml
export CONTENT_URL_PREFIX=https://raw.githubusercontent.com/thoraxe/openshift-cns-testdrive/310-infra-fixes/labguide                                                                                             
export KEYNAME=qwikLABS-L117-23233
export OCP_ROUTING_SUFFIX=apps.248053005789.aws.testdrive.openshift.com
export MASTER_HOSTNAME=master
export MASTER_EXTERNAL_FQDN=master.248053005789.aws.testdrive.openshift.com
export MASTER_EXTERNAL_IP=34.237.220.127
export MASTER_INTERNAL_FQDN=master.internal.aws.testdrive.openshift.com
export INFRA_INTERNAL_FQDN=infra.internal.aws.testdrive.openshift.com
export INFRA_INTERNAL_IP=10.0.1.26
export NODE1_HOSTNAME=node01
export NODE1_EXTERNAL_FQDN=node01.248053005789.aws.testdrive.openshift.com
export NODE1_INTERNAL_FQDN=node01.internal.aws.testdrive.openshift.com
export NODE1_INTERNAL_IP=10.0.1.220
export NODE2_HOSTNAME=node02
export NODE2_EXTERNAL_FQDN=node02.248053005789.aws.testdrive.openshift.com
export NODE2_INTERNAL_FQDN=node02.internal.aws.testdrive.openshift.com
export NODE2_INTERNAL_IP=10.0.3.237
export NODE3_HOSTNAME=node03
export NODE3_EXTERNAL_FQDN=node03.248053005789.aws.testdrive.openshift.com
export NODE3_INTERNAL_FQDN=node03.internal.aws.testdrive.openshift.com
export NODE3_INTERNAL_IP=10.0.4.24
export NODE4_EXTERNAL_FQDN=node04.248053005789.aws.testdrive.openshift.com
export NODE4_INTERNAL_FQDN=node04.internal.aws.testdrive.openshift.com
export NODE4_INTERNAL_IP=10.0.1.201
export NODE5_EXTERNAL_FQDN=node05.248053005789.aws.testdrive.openshift.com
export NODE5_INTERNAL_FQDN=node05.internal.aws.testdrive.openshift.com
export NODE5_INTERNAL_IP=10.0.3.57
export NODE6_EXTERNAL_FQDN=node06.248053005789.aws.testdrive.openshift.com
export NODE6_INTERNAL_FQDN=node06.internal.aws.testdrive.openshift.com                                                                                                                                    
export NODE6_INTERNAL_IP=10.0.4.38
export IDM_INTERNAL_FQDN=idm.internal.aws.testdrive.openshift.com
export WEB_CONSOLE_URL=https://openshift.248053005789.aws.testdrive.openshift.com/console
export SSH_CONSOLE_URL=http://ssh.248053005789.aws.testdrive.openshift.com:8080/ssh/host/master.internal.aws.testdrive.openshift.com                                                                      
export API_HEALTH_URL=https://openshift.248053005789.aws.testdrive.openshift.com/healthz/ready
export NODE_BRICK_DEVICE=/dev/xvdd
export NODE_BRICK_DEVICE2=/dev/xvde
export CNS_NAMESPACE=storage
export HEKETI_ADMIN_PW=myS3cr3tpassw0rd

If you export all of these and visit the homepage of workshopper with 0.3 or older, you'll see the KEYNAME variable shown (eg: http://localhost:8080/index.html#/workshop/ocp-admin-testdrive/module/environment and you'll see the qwikLABS-L117-23233 value shown on the page).

If you export all of these and visit the homepage of workshopper with the latest master, you'll see the KEYNAME variable is not shown and you will also see an error in your Puma log.

thoraxe commented 6 years ago

d69b51506195dab1d29979418ff87221874e0777 is the commit that breaks it.