add: devops scripts and configs

This commit is contained in:
“Naeel”
2026-06-30 15:45:16 +04:00
parent ccf5020e78
commit 540c1f7293
28 changed files with 2210 additions and 0 deletions
+64
View File
@@ -0,0 +1,64 @@
# GitLab CI - pipeline для сборки и публикации Terraform Provider Registry
stages:
- test
- build
- sign
- publish
variables:
HARBOR_HOST: "pearlharbor.registryk8s.services.ngcloud.ru"
S3_BUCKET: "terraform-registry"
PROVIDER_NAME: "nubes"
PROVIDER_NAMESPACE: "nubes"
test:
stage: test
image: golang:1.24
script:
- cd universal_rebuild
- go test ./...
- go vet ./...
build-provider:
stage: build
image: golang:1.24
script:
- cd universal_rebuild
- GOOS=linux GOARCH=amd64 go build -o bin/terraform-provider-${PROVIDER_NAME}_linux_amd64
- GOOS=darwin GOARCH=amd64 go build -o bin/terraform-provider-${PROVIDER_NAME}_darwin_amd64
- GOOS=windows GOARCH=amd64 go build -o bin/terraform-provider-${PROVIDER_NAME}_windows_amd64.exe
artifacts:
paths: [universal_rebuild/bin/]
build-images:
stage: build
script:
- docker build -t ${HARBOR_HOST}/terraform/registry-server:${CI_COMMIT_TAG} registry-server-build/
- docker build -t ${HARBOR_HOST}/terraform/registry-operator:${CI_COMMIT_TAG} operator/
- docker push ${HARBOR_HOST}/terraform/registry-server:${CI_COMMIT_TAG}
- docker push ${HARBOR_HOST}/terraform/registry-operator:${CI_COMMIT_TAG}
only:
- tags
sign:
stage: sign
image: golang:1.24
script:
- cd universal_rebuild/bin
- sha256sum terraform-provider-* > SHA256SUMS
- gpg --import $GPG_PRIVATE_KEY
- gpg --detach-sign SHA256SUMS
artifacts:
paths:
- universal_rebuild/bin/SHA256SUMS
- universal_rebuild/bin/SHA256SUMS.gpg
publish-to-s3:
stage: publish
image: alpine:3.19
before_script:
- apk add --no-cache s3cmd
script:
- s3cmd put universal_rebuild/bin/* s3://${S3_BUCKET}/terraform-providers/
only:
- tags