Running QA against staging fails

I'm creating this issue to investigate/troubleshoot what's going on.

Today I've tried running QA against https://staging.gitlab.com and I stumbled upon the following issues:

  • Running GITLAB_USERNAME=gitlab-qa GITLAB_PASSWORD="REDACTED" gitlab-qa Test::Instance::Any EE latest https://staging.gitlab.com failed with

/Users/remy/.gem/ruby/2.3.5/gems/gitlab-qa-0.2.2/lib/gitlab/qa/docker/specs.rb:34:in +': no implicit conversion of Fixnum into String (TypeError) from /Users/remy/.gem/ruby/2.3.5/gems/gitlab-qa-0.2.2/lib/gitlab/qa/docker/specs.rb:34:in block in test_address' from /Users/remy/.gem/ruby/2.3.5/gems/gitlab-qa-0.2.2/lib/gitlab/qa/docker/engine.rb:17:in block in run' from /Users/remy/.gem/ruby/2.3.5/gems/gitlab-qa-0.2.2/lib/gitlab/qa/docker/engine.rb:16:in tap' from /Users/remy/.gem/ruby/2.3.5/gems/gitlab-qa-0.2.2/lib/gitlab/qa/docker/engine.rb:16:in run' from /Users/remy/.gem/ruby/2.3.5/gems/gitlab-qa-0.2.2/lib/gitlab/qa/docker/specs.rb:26:in test_address' from /Users/remy/.gem/ruby/2.3.5/gems/gitlab-qa-0.2.2/lib/gitlab/qa/scenario/test/instance/any.rb:13:in block in perform' from /Users/remy/.gem/ruby/2.3.5/gems/gitlab-qa-0.2.2/lib/gitlab/qa/scenario/actable.rb:15:in perform' from /Users/remy/.gem/ruby/2.3.5/gems/gitlab-qa-0.2.2/lib/gitlab/qa/scenario/test/instance/any.rb:12:in perform' from /Users/remy/.gem/ruby/2.3.5/gems/gitlab-qa-0.2.2/lib/gitlab/qa/scenario/template.rb:8:in block in perform' from /Users/remy/.gem/ruby/2.3.5/gems/gitlab-qa-0.2.2/lib/gitlab/qa/scenario/template.rb:6:in tap' from /Users/remy/.gem/ruby/2.3.5/gems/gitlab-qa-0.2.2/lib/gitlab/qa/scenario/template.rb:6:in perform' from /Users/remy/.gem/ruby/2.3.5/gems/gitlab-qa-0.2.2/exe/gitlab-qa:7:in <top (required)>' from /Users/remy/.gem/ruby/2.3.5/bin/gitlab-qa:23:in load' from /Users/remy/.gem/ruby/2.3.5/bin/gitlab-qa:23:in `'

which is solved in `master` but we didn't release a new version of the gem yet.
- Running `GITLAB_USERNAME=gitlab-qa GITLAB_PASSWORD="REDACTED" bin/qa Test::Instance::Any EE latest https://staging.gitlab.com` (in the `gitlab-qa@master` project) failed with the following errors:
  1. push code to repository with regular account over http user pushes code to the repository Failure/Error: Page::Main::Entry.act { sign_in_using_credentials }

    Capybara::ElementNotFound: Unable to find field :user_login

    /usr/local/bundle/gems/capybara-2.12.1/lib/capybara/node/finders.rb:44:in `block in find'

    /usr/local/bundle/gems/capybara-2.12.1/lib/capybara/node/base.rb:85:in `synchronize'

    /usr/local/bundle/gems/capybara-2.12.1/lib/capybara/node/finders.rb:33:in `find'

    /usr/local/bundle/gems/capybara-2.12.1/lib/capybara/node/actions.rb:92:in `fill_in'

    /usr/local/bundle/gems/capybara-2.12.1/lib/capybara/session.rb:780:in `block (2 levels) in class:Session'

    /usr/local/bundle/gems/capybara-2.12.1/lib/capybara/dsl.rb:52:in `block (2 levels) in module:DSL'

    ./qa/page/main/entry.rb:25:in `sign_in_using_credentials'

    ./qa/specs/features/repository/push_spec.rb:5:in `block (4 levels) in module:QA'

    ./qa/scenario/actable.rb:5:in `instance_exec'

    ./qa/scenario/actable.rb:5:in `act'

    ./qa/scenario/actable.rb:18:in `act'

    ./qa/specs/features/repository/push_spec.rb:5:in `block (3 levels) in module:QA'

    ./qa/specs/runner.rb:9:in `rspec'

    ./qa/scenario/test/instance.rb:20:in `block in perform'

    ./qa/scenario/actable.rb:14:in `perform'

    ./qa/scenario/test/instance.rb:19:in `perform'

    ./qa/scenario/template.rb:7:in `block in perform'

    ./qa/scenario/template.rb:5:in `tap'

    ./qa/scenario/template.rb:5:in `perform'

I think the problem is that we're visiting `visit('/')` in https://gitlab.com/gitlab-org/gitlab-ce/blob/b16c2ef7d5c4e7696b51c7e410381b316be128a6/qa/qa/page/main/entry.rb#L6 but on https://staging.gitlab.com this redirect to https://about.gitlab.com/. I think if we change that to:

```diff
diff --git a/qa/qa/page/main/entry.rb b/qa/qa/page/main/entry.rb
index a9810beeb2..91c1aef70a 100644
--- a/qa/qa/page/main/entry.rb
+++ b/qa/qa/page/main/entry.rb
@@ -3,7 +3,7 @@ module QA
   module Main
     class Entry < Page::Base
       def initialize
-          visit('/')
+          visit('/users/sign_in')

         # This resolves cold boot / background tasks problems
         #

That would probably solve the problem.

/cc @bjgopinath @grzesiek