Skip to content
Snippets Groups Projects
.gitlab-ci.yml 1.95 KiB
Newer Older
Torben Böhnke's avatar
Torben Böhnke committed
pages:
  stage: deploy
Torben Böhnke's avatar
Torben Böhnke committed
  before_script:
  -  eval $(ssh-agent -s)
  -  echo "${RUB_SSH_PRIVATE_KEY}" | tr -d '\r' | ssh-add -
Torben Böhnke's avatar
Torben Böhnke committed
  script:
Torben Böhnke's avatar
Torben Böhnke committed
  - rm -rf public/en/medien
Torben Böhnke's avatar
Torben Böhnke committed
  - cp -R slides public 
Torben Böhnke's avatar
Torben Böhnke committed
  - cp -R data public
Torben Böhnke's avatar
Torben Böhnke committed
  # Debugging SSH connection:
Torben Böhnke's avatar
Torben Böhnke committed
  # - echo "${RUB_SSH_PRIVATE_KEY}" > temporary_key
  # - chmod 600 temporary_key
  # - ssh -v -i temporary_key ${RUB_SSH_USER}@${RUB_SSH_HOST}
  # - rm -f temporary_key
Torben Böhnke's avatar
Torben Böhnke committed
  # Actual upload command: 
  - lftp -u ${RUB_SSH_USER}, -e "set sftp:connect-program 'ssh -a -x -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no'; mirror -R ${CI_PROJECT_DIR}/public/ ${RUB_TARGET_DIR}/; quit" sftp://${RUB_SSH_HOST}
Torben Böhnke's avatar
Torben Böhnke committed
  artifacts:
    paths:
    - public
  only:
  - main
  tags:
  - pages
Torben Böhnke's avatar
Torben Böhnke committed

fetch_calendar:
  before_script:
    - 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )'
    - eval $(ssh-agent -s)
    - echo "$GIT_SSH_PRIV_KEY" | tr -d '\r' | ssh-add - > /dev/null
    - mkdir -p ~/.ssh
    - chmod 700 ~/.ssh
Torben Böhnke's avatar
Torben Böhnke committed
    - '[[ -f /.dockerenv ]] && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config'
    - export GIT_SSH_COMMAND="ssh -v -o StrictHostKeyChecking=no"
Torben Böhnke's avatar
Torben Böhnke committed
  script:
Torben Böhnke's avatar
Torben Böhnke committed
    - git init
    - git fetch origin
    - git checkout main
Torben Böhnke's avatar
Torben Böhnke committed
    - git remote set-url origin git@git.noc.ruhr-uni-bochum.de:makerspace/homepage.git
Torben Böhnke's avatar
Torben Böhnke committed
    - git pull --rebase origin main
Torben Böhnke's avatar
Torben Böhnke committed
    - mkdir -p docs/data
    - mkdir -p public/data
    - curl -o docs/data/calendar.ics https://mail.exchange.ruhr-uni-bochum.de/owa/calendar/c35486a95ce0458084511f72258a0ae2@it-services.ruhr-uni-bochum.de/ebd8081528364481b4fe87794a3e8776659663570677531713/calendar.ics
    - cp docs/data/calendar.ics public/data/
    - git config user.email "makerspace@ruhr-uni-bochum.de"
    - git config user.name "Makerspace-GitLab CI"
    - git add docs/data/calendar.ics public/data/calendar.ics
Torben Böhnke's avatar
Torben Böhnke committed
    - git commit -m "Update calendar" || echo "No changes to commit"
Torben Böhnke's avatar
Torben Böhnke committed
    - git push origin main
Torben Böhnke's avatar
Torben Böhnke committed
  only:
    - schedules
Torben Böhnke's avatar
Torben Böhnke committed
  tags:
Torben Böhnke's avatar
Torben Böhnke committed
    - pages