# Syncs any changes pushed to a stable branch to the corresponding
# gitlab-foss/CE stable branch. We run this prior to any tests so that random
# failures don't prevent a sync.
.merge-train-sync:
  # We don't need/want any global before/after commands, so we overwrite these
  # settings.
  image: ${GITLAB_DEPENDENCY_PROXY}alpine:edge
  stage: sync
  before_script:
    - apk add --no-cache --update curl bash jq
  script:
    - bash scripts/sync-stable-branch.sh

sync-stable-branch:
  extends:
    - .releases:rules:canonical-dot-com-gitlab-stable-branch-only
    - .merge-train-sync
  variables:
    SOURCE_PROJECT: gitlab-org/gitlab
    TARGET_PROJECT: gitlab-org/gitlab-foss

sync-security-branch:
  extends:
    - .releases:rules:canonical-dot-com-security-gitlab-stable-branch-only
    - .merge-train-sync
  variables:
    SOURCE_PROJECT: gitlab-org/security/gitlab
    TARGET_PROJECT: gitlab-org/security/gitlab-foss
