Newer
Older
test_job:
stage: test
image: public.ecr.aws/docker/library/golang:1.21
build_job:
stage: build
image: public.ecr.aws/docker/library/golang:1.21
parallel:
matrix:
- GOOS: [linux, darwin, windows]
- GOARCH: [amd64, arm64]
script: |
go build -o webservice_$GOOS_$GOARCH.bin ./*.go
artifacts:
paths:
- "webservice_$GOOS_$GOARCH.bin"
expire_in: 30 sec
publish_job:
stage: publish
image: public.ecr.aws/ubuntu/ubuntu:22.04_stable
before_script:
- apt update
- apt install -y ca-certificates curl
- update-ca-certificates
script: |
for file in $(ls webservice_*); do
curl --header "JOB-TOKEN: ${CI_JOB_TOKEN}" \
--upload-file "./$file" \
"${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/artifacts/${version}/$file"
done