Skip to content
Snippets Groups Projects
.gitlab-ci.yml 1.15 KiB
Newer Older
  • Learn to ignore specific revisions
  • Tom Wiesing's avatar
    Tom Wiesing committed
    image: ruby:2.3
    stages:
      - deploy
    
    before_script:
      # setup locales
      - echo "en_US UTF-8" > /etc/locale.gen
      - which locale-gen || ( apt-get update -y && apt-get install locales )
      - export LANG=en_US.UTF-8
      - export LANGUAGE=en_US:en
      - export LC_ALL=en_US.UTF-8
    
      # install ssh-agent, unless already there
      - 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )'
    
      # install rsync, unless already there
      - 'which rsync || ( apt-get update -y && apt-get install rsync -y )'
      
      # install bundler, unless already there
      - 'which bundle || ( gem install bundler )'
      
      # and install the bundle
      - bundle install
    
      # setup ssh agent with the private key
      - eval $(ssh-agent -s)
      - ssh-add <(echo "$SSH_PRIVATE_KEY")
      - mkdir -p ~/.ssh
      - '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'
    
      
    
    deploy_staging:
      stage: deploy
      script:
        # build the website
        - bundle exec jekyll build -d _site
        # copy over all the files into the deployment folder
    
    Tom Wiesing's avatar
    Tom Wiesing committed
        - cd _site && rsync -rv -e ssh --checksum ./ deploy@magma.informatik.uni-erlangen.de:/var/www/www.kwarc.info --delete
    
    Tom Wiesing's avatar
    Tom Wiesing committed
      only:
        - master