1
0
Fork 0
Univerxel/.gitlab-ci.yml

58 lines
2.1 KiB
YAML

stages:
- build
- deploy
build:linux:
stage: build
image: gcc
before_script:
- apt-get update
- apt-get install -y --no-install-recommends cmake libssl-dev libvulkan-dev xorg-dev doxygen graphviz
script:
- mkdir build
- cd build
- cmake ..
- make -j2 univerxel univerxel-client univerxel-server docs
dependencies: []
artifacts:
paths:
- build/content
- build/univerxel
- build/univerxel-client
- build/univerxel-server
- build/docs
expire_in: 1 week
# cache:
# paths:
# - "*.o"
deploy:package:
stage: deploy
image: curlimages/curl
script:
- mkdir out # package
- cd build
- mkdir -p applications
- cp ../resource/package/*.desktop applications
- mkdir -p icons/hicolor/256x256/apps
- cp ../resource/package/univerxel.png icons/hicolor/256x256/apps
- cp ../resource/package/config.full.toml config.toml
- tar cfz ../out/full.tar.gz univerxel applications/fr.wadza.univerxel.desktop config.toml icons content
- cp ../resource/package/config.client.toml config.toml
- tar cfz ../out/client.tar.gz univerxel-client applications/fr.wadza.univerxel.client.desktop config.toml icons content/shaders content/textures
- cp ../resource/package/config.server.toml config.toml
- tar cfz ../out/server.tar.gz univerxel-server applications/fr.wadza.univerxel.server.desktop config.toml icons content/cert.pem content/key.pem content/zstd.dict
- cd ../out # deploy
- 'curl --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file full.tar.gz ${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/Univerxel/$CI_COMMIT_TAG/Univerxel.tar.gz'
- 'curl --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file client.tar.gz ${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/Univerxel/$CI_COMMIT_TAG/Univerxel-client.tar.gz'
- 'curl --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file server.tar.gz ${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/Univerxel/$CI_COMMIT_TAG/Univerxel-server.tar.gz'
dependencies:
- build:linux
artifacts:
paths:
- out
expire_in: 1 week
except:
- branches
only:
- /\A\d+\.\d+\.\d+\z/