200 lines
5.1 KiB
YAML
200 lines
5.1 KiB
YAML
---
|
|
'version': 2
|
|
'plan':
|
|
'project-key': 'AGH'
|
|
'key': 'AHBRTSPECS'
|
|
'name': 'AdGuard Home - Build and run tests'
|
|
'variables':
|
|
'dockerFrontend': 'adguard/home-js-builder:2.0'
|
|
'dockerGo': 'adguard/go-builder:1.22.5--1'
|
|
'channel': 'development'
|
|
|
|
'stages':
|
|
- 'Tests':
|
|
'manual': false
|
|
'final': false
|
|
'jobs':
|
|
- 'Test frontend'
|
|
- 'Test backend'
|
|
|
|
- 'Frontend':
|
|
manual: false
|
|
final: false
|
|
jobs:
|
|
- 'Build frontend'
|
|
|
|
- 'Artifact':
|
|
manual: false
|
|
final: false
|
|
jobs:
|
|
- 'Artifact'
|
|
|
|
'Test frontend':
|
|
'docker':
|
|
'image': '${bamboo.dockerFrontend}'
|
|
'volumes':
|
|
'${system.YARN_DIR}': '${bamboo.cacheYarn}'
|
|
'key': 'JSTEST'
|
|
'other':
|
|
'clean-working-dir': true
|
|
'tasks':
|
|
- 'checkout':
|
|
'force-clean-build': true
|
|
- 'script':
|
|
'interpreter': 'SHELL'
|
|
'scripts':
|
|
- |
|
|
#!/bin/sh
|
|
|
|
set -e -f -u -x
|
|
|
|
make VERBOSE=1 js-deps js-lint js-test
|
|
'final-tasks':
|
|
- 'clean'
|
|
'requirements':
|
|
- 'adg-docker': 'true'
|
|
|
|
'Test backend':
|
|
'docker':
|
|
'image': '${bamboo.dockerGo}'
|
|
'volumes':
|
|
'${system.GO_CACHE_DIR}': '${bamboo.cacheGo}'
|
|
'${system.GO_PKG_CACHE_DIR}': '${bamboo.cacheGoPkg}'
|
|
'key': 'GOTEST'
|
|
'other':
|
|
'clean-working-dir': true
|
|
'tasks':
|
|
- 'checkout':
|
|
'force-clean-build': true
|
|
- 'script':
|
|
'interpreter': 'SHELL'
|
|
'scripts':
|
|
- |
|
|
#!/bin/sh
|
|
|
|
set -e -f -u -x
|
|
|
|
make\
|
|
GOMAXPROCS=1\
|
|
VERBOSE=1\
|
|
go-deps go-tools go-lint
|
|
|
|
make\
|
|
VERBOSE=1\
|
|
go-test
|
|
'final-tasks':
|
|
- 'clean'
|
|
'requirements':
|
|
- 'adg-docker': 'true'
|
|
|
|
'Build frontend':
|
|
'artifacts':
|
|
- 'name': 'AdGuardHome frontend'
|
|
'pattern': 'build/**'
|
|
'shared': true
|
|
'required': true
|
|
'docker':
|
|
'image': '${bamboo.dockerFrontend}'
|
|
'volumes':
|
|
'${system.YARN_DIR}': '${bamboo.cacheYarn}'
|
|
'key': 'BF'
|
|
'other':
|
|
'clean-working-dir': true
|
|
'tasks':
|
|
- 'checkout':
|
|
'force-clean-build': true
|
|
- 'script':
|
|
'interpreter': 'SHELL'
|
|
'scripts':
|
|
- |-
|
|
#!/bin/sh
|
|
|
|
set -e -f -u -x
|
|
|
|
make\
|
|
VERBOSE=1\
|
|
js-deps js-build
|
|
'requirements':
|
|
- 'adg-docker': 'true'
|
|
|
|
'Artifact':
|
|
'artifact-subscriptions':
|
|
- 'artifact': 'AdGuardHome frontend'
|
|
'artifacts':
|
|
- 'name': 'AdGuardHome_windows_amd64'
|
|
'pattern': 'dist/AdGuardHome_windows_amd64.zip'
|
|
'shared': true
|
|
'required': true
|
|
- 'name': 'AdGuardHome_darwin_amd64'
|
|
'pattern': 'dist/AdGuardHome_darwin_amd64.zip'
|
|
'shared': true
|
|
'required': true
|
|
- 'name': 'AdGuardHome_linux_amd64'
|
|
'pattern': 'dist/AdGuardHome_linux_amd64.tar.gz'
|
|
'shared': true
|
|
'required': true
|
|
'docker':
|
|
'image': '${bamboo.dockerGo}'
|
|
'volumes':
|
|
'${system.GO_CACHE_DIR}': '${bamboo.cacheGo}'
|
|
'${system.GO_PKG_CACHE_DIR}': '${bamboo.cacheGoPkg}'
|
|
'key': 'ART'
|
|
'other':
|
|
'clean-working-dir': true
|
|
'tasks':
|
|
- 'checkout':
|
|
'force-clean-build': true
|
|
- 'script':
|
|
'interpreter': 'SHELL'
|
|
'scripts':
|
|
- |-
|
|
#!/bin/sh
|
|
|
|
set -e -f -u -x
|
|
|
|
make\
|
|
ARCH="amd64"\
|
|
CHANNEL=${bamboo.channel}\
|
|
FRONTEND_PREBUILT=1\
|
|
OS="windows darwin linux"\
|
|
PARALLELISM=1\
|
|
SIGN=0\
|
|
VERBOSE=2\
|
|
build-release
|
|
'requirements':
|
|
- 'adg-docker': 'true'
|
|
|
|
'branches':
|
|
'create': 'for-pull-request'
|
|
'delete':
|
|
'after-deleted-days': 1
|
|
'after-inactive-days': 5
|
|
'integration':
|
|
'push-on-success': false
|
|
'merge-from': 'AdGuard Home - Build and run tests'
|
|
'link-to-jira': true
|
|
|
|
'notifications':
|
|
- 'events':
|
|
- 'plan-status-changed'
|
|
'recipients':
|
|
- 'webhook':
|
|
'name': 'Build webhook'
|
|
'url': 'http://prod.jirahub.service.eu.consul/v1/webhook/bamboo'
|
|
|
|
'labels': []
|
|
'other':
|
|
'concurrent-build-plugin': 'system-default'
|
|
|
|
'branch-overrides':
|
|
# rc-vX.Y.Z branches are the release candidate branches. They are created
|
|
# from the release branch and are used to build the release candidate
|
|
# images.
|
|
- '^rc-v[0-9]+\.[0-9]+\.[0-9]+':
|
|
# Set the default release channel on the release branch to beta, as we
|
|
# may need to build a few of these.
|
|
'variables':
|
|
'dockerFrontend': '${bamboo.adguardRegistryBasePath}/home-js-builder:2.0'
|
|
'dockerGo': '${bamboo.adguardRegistryBasePath}/go-builder:1.22.5--1'
|
|
'channel': 'candidate'
|