stages:
  - changeset-prerelease
  - changeset-release

variables:
  PNPM_VERSION: 8.6.9

include:
  - project: 'onereach/platform/service/pipeline-templates'
    file:
      - 'helpers-platform-runner.yaml'
      - 'rules.yaml'
      - '.deploy-platform-runner.yaml'
      - '.pnpm-cache.yaml'

changeset_prerelease:
  stage: changeset-prerelease
  extends:
    - .deploy
    - .pnpm-cache
  before_script:
    - !reference [.configure-git-mr, script]
    - !reference [.set-path-pnpm, script]
  script:
    - ./scripts/changeset_prerelease.sh
  rules:
    - !reference [.merge-request, rules]

changeset_release:
  stage: changeset-release
  extends:
    - .deploy
    - .pnpm-cache
  before_script:
    - !reference [.configure-git-default, script]
    - !reference [.set-path-pnpm, script]
  script:
    - ./scripts/changeset_release.sh
  rules:
    - if: $CI_COMMIT_TAG
      when: never
    - if: $CI_COMMIT_MESSAGE =~ /^chore\(CI\):/
      when: never
    - !reference [.merge-to-default, rules]
