120 lines
3.4 KiB
YAML
120 lines
3.4 KiB
YAML
steps:
|
|
- label: ":eslint: JS Lint"
|
|
command:
|
|
- "echo '--- Install js-sdk'"
|
|
- "./scripts/ci/install-deps.sh"
|
|
- "yarn lint:js"
|
|
plugins:
|
|
- docker#v3.0.1:
|
|
image: "node:12"
|
|
|
|
- label: ":eslint: TS Lint"
|
|
command:
|
|
- "echo '--- Install js-sdk'"
|
|
- "./scripts/ci/install-deps.sh"
|
|
- "yarn lint:ts"
|
|
plugins:
|
|
- docker#v3.0.1:
|
|
image: "node:12"
|
|
|
|
- label: ":eslint: Types Lint"
|
|
command:
|
|
- "echo '--- Install js-sdk'"
|
|
- "./scripts/ci/install-deps.sh"
|
|
- "yarn lint:types"
|
|
plugins:
|
|
- docker#v3.0.1:
|
|
image: "node:12"
|
|
|
|
- label: ":jest: Tests"
|
|
agents:
|
|
# We use a medium sized instance instead of the normal small ones because
|
|
# webpack loves to gorge itself on resources.
|
|
queue: "medium"
|
|
command:
|
|
- "echo '--- Install js-sdk'"
|
|
# Run tests
|
|
# TODO: Remove hacky chmod for BuildKite
|
|
- "chmod +x ./scripts/ci/*.sh"
|
|
- "chmod +x ./scripts/*"
|
|
- "echo '--- Installing Dependencies'"
|
|
- "./scripts/ci/install-deps.sh"
|
|
- "echo '+++ Running Tests'"
|
|
- "yarn test"
|
|
plugins:
|
|
- docker#v3.0.1:
|
|
image: "node:12"
|
|
|
|
- label: "🛠 Build"
|
|
command:
|
|
- "echo '--- Install js-sdk'"
|
|
- "./scripts/ci/install-deps.sh"
|
|
- "yarn build"
|
|
plugins:
|
|
- docker#v3.0.1:
|
|
image: "node:12"
|
|
|
|
- label: ":chains: End-to-End Tests"
|
|
agents:
|
|
# We use a xlarge sized instance instead of the normal small ones because
|
|
# e2e tests otherwise take +-8min
|
|
queue: "xlarge"
|
|
command:
|
|
# TODO: Remove hacky chmod for BuildKite
|
|
- "echo '--- Setup'"
|
|
- "chmod +x ./scripts/ci/*.sh"
|
|
- "chmod +x ./scripts/*"
|
|
- "echo '--- Install js-sdk'"
|
|
- "./scripts/ci/install-deps.sh"
|
|
- "./scripts/ci/end-to-end-tests.sh"
|
|
plugins:
|
|
- docker#v3.0.1:
|
|
image: "matrixdotorg/riotweb-ci-e2etests-env:latest"
|
|
propagate-environment: true
|
|
|
|
- label: "🔧 Riot Tests"
|
|
agents:
|
|
# We use a medium sized instance instead of the normal small ones because
|
|
# webpack loves to gorge itself on resources.
|
|
queue: "medium"
|
|
command:
|
|
# Install chrome
|
|
- "echo '--- Installing Chrome'"
|
|
- "wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -"
|
|
- "sh -c 'echo \"deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main\" >> /etc/apt/sources.list.d/google.list'"
|
|
- "apt-get update"
|
|
- "apt-get install -y google-chrome-stable"
|
|
# Run tests
|
|
# TODO: Remove hacky chmod for BuildKite
|
|
- "chmod +x ./scripts/ci/*.sh"
|
|
- "chmod +x ./scripts/*"
|
|
- "echo '--- Installing Dependencies'"
|
|
- "./scripts/ci/install-deps.sh"
|
|
- "echo '+++ Running Tests'"
|
|
- "./scripts/ci/riot-unit-tests.sh"
|
|
env:
|
|
CHROME_BIN: "/usr/bin/google-chrome-stable"
|
|
plugins:
|
|
- docker#v3.0.1:
|
|
image: "node:10"
|
|
propagate-environment: true
|
|
|
|
- label: "🌐 i18n"
|
|
command:
|
|
- "echo '--- Fetching Dependencies'"
|
|
- "yarn install"
|
|
- "echo '+++ Testing i18n output'"
|
|
- "yarn diff-i18n"
|
|
plugins:
|
|
- docker#v3.0.1:
|
|
image: "node:10"
|
|
|
|
- wait
|
|
|
|
- label: "🐴 Trigger riot-web"
|
|
trigger: "riot-web"
|
|
branches: "develop"
|
|
build:
|
|
branch: "develop"
|
|
message: "[react-sdk] ${BUILDKITE_MESSAGE}"
|
|
async: true
|