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/