58 lines
2.1 KiB
YAML
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/ |