mirror of
https://gitlab.com/openstapps/openstapps.git
synced 2026-01-07 22:12:53 +00:00
feat: docker publishing
This commit is contained in:
114
.gitlab-ci.yml
114
.gitlab-ci.yml
@@ -1,10 +1,22 @@
|
||||
image: registry.gitlab.com/openstapps/projectmanagement/builder:v18
|
||||
include: '/backend/backend/.gitlab-ci.yml'
|
||||
|
||||
#variables:
|
||||
# GIT_CLEAN_FLAGS: -ffdx -e www/
|
||||
# `rules: if $CI_PIPELINE_SOURCE == 'merge_request_event'` seems to convert the whole
|
||||
# workflow into a merge request pipeline, effectively removing all the jobs.
|
||||
# To work around that, add:
|
||||
# ```
|
||||
# rules:
|
||||
# when: on_success
|
||||
# ```
|
||||
# To your pipeline.
|
||||
# https://docs.gitlab.com/ee/ci/pipelines/merge_request_pipelines.html#use-rules-to-add-jobs
|
||||
include:
|
||||
- local: /backend/backend/.gitlab-ci.yml
|
||||
- local: /frontend/app/.gitlab-ci.yml
|
||||
- local: /.gitlab/publishing.gitlab-ci.yml
|
||||
rules:
|
||||
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
|
||||
when: never
|
||||
|
||||
default:
|
||||
image: registry.gitlab.com/openstapps/projectmanagement/builder:v18
|
||||
tags:
|
||||
- performance
|
||||
interruptible: true
|
||||
@@ -22,10 +34,11 @@ default:
|
||||
policy: pull
|
||||
|
||||
stages:
|
||||
- version
|
||||
- build
|
||||
- images
|
||||
- test
|
||||
- deploy
|
||||
- review
|
||||
- publish
|
||||
|
||||
build:
|
||||
stage: build
|
||||
@@ -38,28 +51,15 @@ build:
|
||||
artifacts:
|
||||
paths:
|
||||
- www
|
||||
- ./**/.turbo/
|
||||
- ./backend/backend/lib
|
||||
- ./backend/proxy/lib
|
||||
- ./configuration/projectmanagement/lib
|
||||
- ./examples/minimal-connector/lib
|
||||
- ./examples/minimal-plugin/lib
|
||||
- ./packages/api-cli/lib
|
||||
- ./packages/api-plugin/lib
|
||||
- ./packages/api/lib
|
||||
- ./packages/collection-utils/lib
|
||||
- ./packages/core-tools/lib
|
||||
- ./packages/core/lib
|
||||
- ./packages/easy-ast/lib
|
||||
- ./packages/es-mapping-generator/lib
|
||||
- ./packages/gitlab-api/lib
|
||||
- ./packages/logger/lib
|
||||
cache:
|
||||
<<: *pnpm_cache
|
||||
policy: pull-push
|
||||
rules:
|
||||
- when: on_success
|
||||
|
||||
unit:
|
||||
stage: test
|
||||
needs: ['build']
|
||||
script:
|
||||
- pnpm config set recursive-install false
|
||||
- pnpm i --prefer-offline
|
||||
@@ -77,71 +77,5 @@ unit:
|
||||
coverage_report:
|
||||
coverage_format: cobertura
|
||||
path: coverage.xml
|
||||
|
||||
image:database:
|
||||
stage: images
|
||||
image:
|
||||
name: gcr.io/kaniko-project/executor:v1.9.0-debug
|
||||
entrypoint: [""]
|
||||
before_script: []
|
||||
cache: []
|
||||
script:
|
||||
- /kaniko/executor
|
||||
--context "${CI_PROJECT_DIR}/backend/database"
|
||||
--dockerfile "${CI_PROJECT_DIR}/backend/database/Dockerfile"
|
||||
--destination "${CI_REGISTRY_IMAGE}/database:${CI_COMMIT_BRANCH}"
|
||||
only:
|
||||
refs:
|
||||
- branches
|
||||
changes:
|
||||
- backend/database/**/*
|
||||
|
||||
# TODO!!
|
||||
# integration:
|
||||
# stage: test
|
||||
# variables:
|
||||
# DOCKER_DRIVER: overlay2
|
||||
# services:
|
||||
# - docker:dind
|
||||
# script:
|
||||
# - pnpm install
|
||||
# - pnpm run test:integration
|
||||
# tags:
|
||||
# - gitlab-org-docker
|
||||
|
||||
review:
|
||||
stage: deploy
|
||||
dependencies:
|
||||
- build
|
||||
script:
|
||||
# TODO: - .gitlab/ci/enableGitlabReviewToolbar.sh www/index.html "$CI_PROJECT_ID" "$CI_OPEN_MERGE_REQUESTS"
|
||||
- cp www/index.html www/200.html
|
||||
- pnpm dlx surge -p ./www -d https://$CI_PROJECT_PATH_SLUG-$CI_ENVIRONMENT_SLUG.surge.sh/
|
||||
environment:
|
||||
name: review/$CI_PROJECT_PATH_SLUG-$CI_COMMIT_REF_NAME
|
||||
url: https://$CI_PROJECT_PATH_SLUG-$CI_ENVIRONMENT_SLUG.surge.sh/
|
||||
on_stop: stop_review
|
||||
rules:
|
||||
- if: ($CI_COMMIT_REF_NAME != "develop" && $CI_COMMIT_REF_NAME != "main" && $CI_MERGE_REQUEST_EVENT_TYPE != "merge_train" && ($CI_PIPELINE_SOURCE == "push" || $CI_PIPELINE_SOURCE == "web"))
|
||||
|
||||
stop_review:
|
||||
stage: deploy
|
||||
script:
|
||||
- pnpm dlx surge teardown $CI_PROJECT_PATH_SLUG-$CI_ENVIRONMENT_SLUG.surge.sh
|
||||
when: manual
|
||||
environment:
|
||||
name: review/$CI_PROJECT_PATH_SLUG-$CI_COMMIT_REF_NAME
|
||||
action: stop
|
||||
rules:
|
||||
- if: ($CI_COMMIT_REF_NAME != "develop" && $CI_COMMIT_REF_NAME != "main" && $CI_MERGE_REQUEST_EVENT_TYPE != "merge_train" && ($CI_PIPELINE_SOURCE == "push" || $CI_PIPELINE_SOURCE == "web"))
|
||||
|
||||
# TODO!!
|
||||
# pages:docs:
|
||||
# stage: deploy
|
||||
# script:
|
||||
# - pnpm install
|
||||
# - pnpm run docs
|
||||
# - mv docs public
|
||||
# artifacts:
|
||||
# paths:
|
||||
# - public
|
||||
- when: on_success
|
||||
|
||||
Reference in New Issue
Block a user