title: gitlab-ci SSH key invalid format
body: <p>I would like run deploy script with gitlab-ci, but step ssh-add <code>$SSH_PRIVATE_KEY</code> return an error :</p>
  
  <pre><code>echo "$SSH_PRIVATE_KEY" | ssh-add -
  Error loading key "(stdin)": invalid format
  </code></pre>
  
  <p>You can see my <code>.gitlab-ci.yml</code> :</p>
  
  <pre><code>deploy:
    image: node:9.11.1-alpine
    stage: deploy
    before_script:
      # Install ssh-agent if not already installed, it is required by Docker.
      # (change apt-get to yum if you use a CentOS-based image)
      - 'which ssh-agent || ( apk add --update openssh )'
  
      # Add bash
      - apk add --update bash
  
      # Add git
      - apk add --update git
  
      # Run ssh-agent (inside the build environment)
      - eval $(ssh-agent -s)
  
      # Add the SSH key stored in SSH_PRIVATE_KEY variable to the agent store
      - echo "$SSH_PRIVATE_KEY"
      - echo "$SSH_PRIVATE_KEY" | ssh-add -
  
      # For Docker builds disable host key checking. Be aware that by adding that
      # you are suspectible to man-in-the-middle attacks.
      # WARNING: Use this only with the Docker executor, if you use it with shell
      # you will overwrite your user's SSH config.
      - mkdir -p ~/.ssh
      - '[[ -f /.dockerenv ]] &amp;&amp; echo -e "Host *\n\tStrictHostKeyChecking no\n\n" &gt; ~/.ssh/config'
      # In order to properly check the server's host key, assuming you created the
      # SSH_SERVER_HOSTKEYS variable previously, uncomment the following two lines
      # instead.
      # - mkdir -p ~/.ssh
      # - '[[ -f /.dockerenv ]] &amp;&amp; echo "$SSH_SERVER_HOSTKEYS" &gt; ~/.ssh/known_hosts'
    script:
      - npm i -g pm2
      - pm2 deploy ecosystem.config.js production
    # only:
    # - master
  </code></pre>
  
  <p>On my project setting, i've been add SSH_PRIVATE_KEY variable, with the id_rsa from my production server <code>cat ~/.ssh/id_rsa.pub</code>.</p>
  
  <p>Anyone can help me ?</p>