summaryrefslogblamecommitdiff
path: root/.gitlab-ci.yml
blob: 93bfdaf1eecf9a7a68dc5aa210df9022bf19f8bc (plain) (tree)
1
2
3
4
5
6
7
8
       
      

        
                   


              








                                                                                 
                       
                               
       
            
                

              
                                                                               

                                                 



                                                                                   










                                                                                 
              


                                                 
              
                                                                               

                                                 




                                                                                    








                                     
       
            

                      
                                                                                   



                                    


                                     
                                                                                                                                                                                                                            


                                    



                                                                      
                                                                                                           


            
                      
       
          














                                                                                 
                                     
                                                                                           

                                               


                                                 
                                      





                                                                                    
stages:
- sync
- deploy

image: ubuntu:18.04
before_script:
  - uname -a

legacy:
  stage: sync
  tags:
    - glados
  script:
  - apt-get -qq update
  - apt-get install -qq -y make zip zlib1g-dev zlibc python ssh rsync python3 git
  - git config --global credential.helper store
  - echo "https://numa:$SYNC_KEY@git.themanaworld.org" > ~/.git-credentials
  - git checkout master
  - git submodule update --init
  - pwd
  - cd tools
  - ./evolved.py
  - cd ..
  - git status
  - (git status --porcelain  | grep '.*') || exit 0 # skip if nothing to commit
  - git config user.email "numa@themanaworld.org"
  - git config user.name "Numa"
  - git commit -a -m "Regenerate databases" --author="Numa <numa@themanaworld.org>"
  - git push # may cause a CI loop >.<
  only:
  - master

evolved:
  stage: deploy
  tags:
    - glados
  script:
  - apt-get -qq update
  - apt-get install -qq -y make zip zlib1g-dev zlibc python ssh rsync python3 git
  - git config --global credential.helper store
  - echo "https://numa:$SYNC_KEY@git.themanaworld.org" > ~/.git-credentials
  - git clone https://git.themanaworld.org/evolved/serverdata.git evolved
  - cd evolved
  - git checkout master
  - cp -v ../world/map/db/mob_db.conf db/pre-re/
  - cp -v ../world/map/db/item_db.conf db/pre-re/
  - git status
  - (git status --porcelain  | grep '.*') || exit 0 # skip if nothing to commit
  - git config user.email "numa@themanaworld.org"
  - git config user.name "Numa"
  - git commit -a -m "Sync with Legacy repo" --author="Numa <numa@themanaworld.org>"
  - git push
  only:
  - master

pages:
  stage: deploy
  variables:
    GIT_STRATEGY: clone
    GIT_SUBMODULE_STRATEGY: recursive
    GIT_DEPTH: "1"
    UPDATE_DIR: "../../../public"
    UPDATE_HTTP: "none"
    CC: "clang"
  tags:
    - glados
  script:
  - apt-get -qq update
  - apt-get install -qq -y make clang zip zlib1g-dev zlibc python ssh rsync python3
  - mkdir public
  - make updates
  - make news
  - cp -v world/map/news.txt public/
  - cp -v world/map/news.html public/
  - cp -v world/map/news.rss public/
  - cp -v world/map/news.json public/
  - echo '<title>static update server</title><a href="TMW.zip">TMW.zip</a><br><a href="TMW-music.zip">TMW-music.zip</a><br><a href="news.txt">news.txt</a><br><a href="resources.xml">resources.xml</a>' > public/index.html
  # path for legacy compatibility
  - mkdir -p public/updates
  - cp -v public/*.* public/updates/
  - echo "Now deploying..."
  - mkdir -p ~/.ssh
  - echo "${SSH_PRIVATE_KEY}" | base64 -d | tr -d '\r' > ~/.ssh/id_rsa
  - chmod -R 700 ~/.ssh
  - rsync -e 'ssh -p 65001 -o StrictHostKeyChecking=no' -aHv --delete public/updates $MYHOST:$FILE_LOCATION
  artifacts:
    paths:
    - public
    expire_in: 1 month
  only:
  - stable

clientdata:
  stage: deploy
  tags:
    - glados
  script:
  - apt-get -qq update
  - apt-get install -qq -y make zip zlib1g-dev zlibc python ssh rsync python3 git
  - git submodule update --init
  - git config --global credential.helper store
  - echo "https://numa:$SYNC_KEY@git.themanaworld.org" > ~/.git-credentials
  - git clone https://git.themanaworld.org/evolved/clientdata.git evolved
  - cd evolved
  - git checkout master
  - cp -v ../client-data/monsters.xml .
  - rm -r graphics/sprites/monsters/*
  - cp -v --recursive ../client-data/graphics/sprites/monsters/* graphics/sprites/monsters/
  - rm -r sfx/*
  - cp -v --recursive ../client-data/sfx/* sfx/
  - git status
  - git config user.email "numa@themanaworld.org"
  - git config user.name "Numa"
  - git add graphics/sprites/monsters/
  - git commit -a -m "Sync with Legacy repo" --author="Numa <numa@themanaworld.org>"
  - git push
  only:
  - stable
  allow_failure: true