mirror of
https://github.com/trezor/trezor-suite.git
synced 2026-03-22 15:17:08 +01:00
154 lines
4.2 KiB
YAML
154 lines
4.2 KiB
YAML
# Config
|
|
.run_everything_rules: &run_everything_rules
|
|
refs:
|
|
- develop
|
|
- releases
|
|
- schedules
|
|
- /^release\//
|
|
|
|
# todo: it should be possible to share between files using
|
|
# https://docs.gitlab.com/ee/ci/yaml/yaml_optimization.html#reference-tags
|
|
.run_connect_rules: &run_connect_rules
|
|
refs:
|
|
- schedules
|
|
- develop
|
|
changes:
|
|
- "packages/blockchain-link"
|
|
- "packages/connect*/**"
|
|
- "packages/transport"
|
|
- "packages/utxo-lib"
|
|
- "packages/utils"
|
|
|
|
# Suite web deploy to dev
|
|
suite-web deploy sldev:
|
|
stage: deploy to dev
|
|
variables:
|
|
DEPLOY_DIRECTORY: ${DEPLOY_BASE_DIR}/suite-web/${CI_COMMIT_REF_NAME}
|
|
needs:
|
|
- suite-web build dev
|
|
environment:
|
|
name: ${CI_COMMIT_REF_NAME}
|
|
url: $BASE_REVIEW_URL/${CI_COMMIT_REF_NAME}
|
|
before_script: []
|
|
script:
|
|
- mkdir -p ${DEPLOY_DIRECTORY}/web
|
|
- rsync --delete -va packages/suite-web/build/ "${DEPLOY_DIRECTORY}/web/"
|
|
tags:
|
|
- deploy
|
|
interruptible: true
|
|
|
|
# Suite desktop deploy to dev and production
|
|
suite-desktop deploy sldev:
|
|
stage: deploy to dev
|
|
only:
|
|
<<: *run_everything_rules
|
|
variables:
|
|
DEPLOY_DIRECTORY: ${DEPLOY_BASE_DIR}/suite-desktop/${CI_COMMIT_REF_NAME}
|
|
script:
|
|
- mkdir -p ${DEPLOY_DIRECTORY}
|
|
- 'rsync --delete -va "${DESKTOP_APP_NAME}"-*.AppImage "${DEPLOY_DIRECTORY}/" || :'
|
|
- 'rsync --delete -va "${DESKTOP_APP_NAME}"-*.dmg "${DEPLOY_DIRECTORY}/" || :'
|
|
- 'rsync --delete -va "${DESKTOP_APP_NAME}"-*.exe "${DEPLOY_DIRECTORY}/" || :'
|
|
tags:
|
|
- deploy
|
|
interruptible: true
|
|
|
|
# Messaging system deploy to dev
|
|
msg-system deploy sldev:
|
|
stage: deploy to dev
|
|
needs:
|
|
- "msg-system config sign dev"
|
|
when: manual
|
|
tags:
|
|
- deploy
|
|
variables:
|
|
AWS_CLOUDFRONT_ID: E1ERY5K2OTKKI1
|
|
script:
|
|
- source ${MSG_SYSTEM_DATA_DEPLOY_KEYFILE}
|
|
- aws s3 cp suite-common/message-system/files/config.v1.jws s3://data.trezor.io/config/develop/config.v1.jws --cache-control no-cache
|
|
- aws cloudfront create-invalidation --distribution-id ${AWS_CLOUDFRONT_ID} --paths '/config/develop/*'
|
|
interruptible: true
|
|
|
|
# connect deploy to dev
|
|
.base deploy to dev:
|
|
stage: deploy to dev
|
|
variables:
|
|
GIT_STRATEGY: none
|
|
DEPLOY_DIRECTORY: ${DEPLOY_BASE_DIR}/connect/${CI_COMMIT_REF_NAME}
|
|
environment:
|
|
name: $CI_COMMIT_REF_NAME
|
|
url: $BASE_REVIEW_URL/$CI_COMMIT_REF_NAME
|
|
script:
|
|
- rm -rfv ${DEPLOY_DIRECTORY}
|
|
- mkdir -pv ${DEPLOY_DIRECTORY}
|
|
- rsync -aviuzP packages/connect-iframe/build/ "${DEPLOY_DIRECTORY}/"
|
|
- rsync -aviuzP packages/connect-popup/build/ "${DEPLOY_DIRECTORY}/"
|
|
- rsync -aviuzP packages/connect-web/build/ "${DEPLOY_DIRECTORY}/"
|
|
- rsync -aviuzP packages/connect-explorer/build/ "${DEPLOY_DIRECTORY}/"
|
|
- ls -la ${DEPLOY_DIRECTORY}
|
|
- ls -la ${DEPLOY_DIRECTORY}/data
|
|
- ls -la ${DEPLOY_DIRECTORY}/fonts
|
|
- ls -la ${DEPLOY_DIRECTORY}/images
|
|
- ls -la ${DEPLOY_DIRECTORY}/js
|
|
tags:
|
|
- deploy
|
|
interruptible: true
|
|
|
|
deploy to dev for release branch:
|
|
extends: .base deploy to dev
|
|
only:
|
|
refs:
|
|
- /^release\/connect\//
|
|
needs:
|
|
- connect-web build production
|
|
- connect-explorer build production
|
|
|
|
deploy to dev for non-release branch:
|
|
extends: .base deploy to dev
|
|
except:
|
|
refs:
|
|
- /^release\/connect\//
|
|
needs:
|
|
- connect-web build
|
|
- connect-explorer build
|
|
|
|
# components deploy
|
|
.run_components_rules: &run_components_rules
|
|
refs:
|
|
- develop
|
|
- schedules
|
|
changes:
|
|
- packages/components
|
|
- packages/components-storybook
|
|
- yarn.lock
|
|
|
|
# Deploy
|
|
|
|
.deploy_common: &deploy_common
|
|
stage: deploy to dev
|
|
variables:
|
|
DEPLOY_DIRECTORY: ${DEPLOY_BASE_DIR}/components/${CI_COMMIT_REF_NAME}
|
|
environment:
|
|
name: ${CI_COMMIT_REF_NAME}
|
|
url: $BASE_REVIEW_URL/${CI_COMMIT_REF_NAME}
|
|
before_script: []
|
|
script:
|
|
- mkdir -p ${DEPLOY_DIRECTORY}
|
|
- rsync --delete -va packages/components/.build-storybook/ "${DEPLOY_DIRECTORY}/"
|
|
tags:
|
|
- deploy
|
|
interruptible: true
|
|
|
|
# Currently two jobs needed, it seems not to be possible to have a job depending on manual job
|
|
# https://gitlab.com/gitlab-org/gitlab/-/issues/31264
|
|
components storybook deploy sldev:
|
|
<<: *deploy_common
|
|
only:
|
|
<<: *run_components_rules
|
|
|
|
components storybook deploy dev manual:
|
|
<<: *deploy_common
|
|
when: manual
|
|
except:
|
|
<<: *run_components_rules
|