2019-09-13 11:37:06 +03:00
|
|
|
$if: 'event.event in build.allowed'
|
|
|
|
then:
|
|
|
|
taskId: ${taskcluster.taskId}
|
|
|
|
provisionerId: ${taskcluster.docker.provisionerId}
|
2020-08-03 18:18:11 +03:00
|
|
|
workerType: ${build.workerType}
|
2019-09-13 11:37:06 +03:00
|
|
|
taskGroupId: ${taskcluster.taskGroupId}
|
|
|
|
schedulerId: ${taskcluster.schedulerId}
|
|
|
|
dependencies:
|
|
|
|
$map: { $eval: build.dependencies }
|
|
|
|
each(b):
|
|
|
|
$eval: as_slugid(b)
|
|
|
|
created: { $fromNow: '0 sec' }
|
|
|
|
deadline: { $fromNow: '1 day' }
|
|
|
|
expires:
|
|
|
|
$if: '(event.event == "push") || (event.event == "tag")'
|
|
|
|
then: { $fromNow: '6 months' }
|
|
|
|
else: { $fromNow: '7 days' }
|
|
|
|
|
|
|
|
extra:
|
|
|
|
nc_asset_name: { $eval: build.nc_asset_name }
|
|
|
|
|
|
|
|
routes:
|
|
|
|
$if: '(event.event == "push") || (event.event == "tag")'
|
|
|
|
then:
|
|
|
|
{ $eval: build.routes }
|
|
|
|
|
|
|
|
payload:
|
|
|
|
maxRunTime: { $eval: to_int(build.maxRunTime) }
|
|
|
|
image: "ubuntu:18.04"
|
|
|
|
|
|
|
|
command:
|
|
|
|
- "/bin/bash"
|
|
|
|
- "--login"
|
|
|
|
- "-cxe"
|
|
|
|
- $let:
|
|
|
|
extraSystemSetup: { $eval: strip(str(build.system_setup)) }
|
|
|
|
extraSystemConfig: { $eval: strip(str(build.system_config)) }
|
|
|
|
in: >
|
|
|
|
apt-get -qq update && apt-get -qq -y install git wget gnupg sudo && ${extraSystemSetup} &&
|
|
|
|
adduser --system --home ${system.homedir.linux} ${system.username} &&
|
|
|
|
cd ${system.homedir.linux}/ &&
|
|
|
|
echo -e "#!/bin/bash\nset -xe\n env && id && git clone --quiet ${event.head.repo.url} ~/DeepSpeech/ds/ && cd ~/DeepSpeech/ds && git checkout --quiet ${event.head.sha}" > /tmp/clone.sh && chmod +x /tmp/clone.sh &&
|
|
|
|
sudo -H -u ${system.username} /bin/bash /tmp/clone.sh && ${extraSystemConfig} &&
|
|
|
|
sudo -H -u ${system.username} --preserve-env /bin/bash ${system.homedir.linux}/DeepSpeech/ds/${build.scripts.build} &&
|
|
|
|
sudo -H -u ${system.username} /bin/bash ${system.homedir.linux}/DeepSpeech/ds/${build.scripts.package}
|
|
|
|
|
|
|
|
artifacts:
|
|
|
|
"public":
|
|
|
|
type: "directory"
|
|
|
|
path: "/tmp/artifacts/"
|
|
|
|
expires:
|
|
|
|
$if: '(event.event == "push") || (event.event == "tag")'
|
|
|
|
then: { $fromNow: '6 months' }
|
|
|
|
else: { $fromNow: '7 days' }
|
|
|
|
|
|
|
|
metadata:
|
|
|
|
name: ${build.metadata.name}
|
|
|
|
description: ${build.metadata.description}
|
|
|
|
owner: ${event.head.user.email}
|
|
|
|
source: ${event.head.repo.url}
|