diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..0af1ae5 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,56 @@ +# This file is a template, and might need editing before it works on your project. +# You can copy and paste this template into a new `.gitlab-ci.yml` file. +# You should not add this template to an existing `.gitlab-ci.yml` file by using the `include:` keyword. +# +# To contribute improvements to CI/CD templates, please follow the Development guide at: +# https://docs.gitlab.com/ee/development/cicd/templates.html +# This specific template is located at: +# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/C++.gitlab-ci.yml + +# use the official gcc image, based on debian +# can use versions as well, like gcc:5.2 +# see https://hub.docker.com/_/gcc/ + +image: gcc +stages: + - build + - release + +build: + stage: build + # instead of calling g++ directly you can also use some build toolkit like make + # install the necessary build tools when needed + before_script: + - apt update && apt -y install cmake + script: + - echo BUILD_JOB_ID=$CI_JOB_ID >> CI_JOB_ID.env + - echo "Compiling the code..." + - cmake . + - cmake --build . + + artifacts: + paths: + - c_net + reports: + dotenv: CI_JOB_ID.env + + + +release: + image: registry.gitlab.com/gitlab-org/release-cli:latest + stage: release + needs: + - job: build + + release: + tag_name: $CI_COMMIT_SHORT_SHA' + description: "latest" + + assets: + links: + - name: c_net + url: '${CI_PROJECT_URL}/-/jobs/${BUILD_JOB_ID}/artifacts/file/c_net' + + script: echo "Define your deployment script!" + +