Skip to content
Snippets Groups Projects
Commit a817b15f authored by Yana Kernerman's avatar Yana Kernerman Committed by Yana Kernerman
Browse files

build job for any branch or merge request

parent 08487b5f
No related branches found
No related tags found
1 merge request!26Tut01
......@@ -5,12 +5,50 @@ workflow:
when: 'always'
- when: 'never'
stages:
- test
- build
- publish
job_trigger-pipeline:
trigger:
project: 'fb6-wp11-devops/webservice-build-and-publish'
# Main job to test the application
job_test_the_code:
stage: test
image: registry.hub.docker.com/library/golang:1.21 # Official Docker image provided by Go. It contains pre-configured environment for building and running Go applications.
script:
- go get -t ./... # Installs dependencies, including those for testing
- go test -race -v ./... # Run tests with race detection enabled
job_build_artifact:
stage: build
rules: # Conditions under which this job should run
- if: $CI_COMMIT_REF_NAME =~ /^.*$/ # Run this job for any branch or merge request event.
when: always
image: registry.hub.docker.com/library/golang:1.21
script:
- go get -t ./... # Installs dependencies
- go build -o ./artifact.bin ./*.go # Builds the Go application and outputs a binary named artifact.bin
artifacts:
paths: # Specifies the paths to the files that are to be saved as artifacts after the job has been completed.
- ./artifact.bin
expire_in: 1 week
hello-world-job:
job_publish_artifact:
stage: publish
rules: # Conditions under which this job should run
- if: $CI_COMMIT_REF_NAME =~ /^.*$/ # Run this job for any branch or merge request event.
when: always
image: curlimages/curl:latest # Custom image with curl
tags:
- docker-privileged
dependencies:
- job_build_artifact
script:
- 'ls -al ./'
- echo "Publishing artifact..."
- |
curl \
--header "JOB-TOKEN: ${CI_JOB_TOKEN}" \
--upload-file ./artifact.bin \
"${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/artifacts/${version}/webservice"
only:
- tags
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment