mirror of
https://github.com/mozilla/DeepSpeech.git
synced 2025-10-26 11:19:39 +00:00
55 lines
2.4 KiB
Plaintext
55 lines
2.4 KiB
Plaintext
$if: 'event.event in build.allowed'
|
|
then:
|
|
taskId: ${taskcluster.taskId}
|
|
provisionerId: ${taskcluster.docker.provisionerId}
|
|
workerType: ${taskcluster.docker.workerType}
|
|
taskGroupId: ${taskcluster.taskGroupId}
|
|
schedulerId: ${taskcluster.schedulerId}
|
|
created: { $fromNow: '0 sec' }
|
|
deadline: { $fromNow: '1 day' }
|
|
expires: { $fromNow: '6 months' }
|
|
scopes:
|
|
- "index:insert-task:project.deepspeech.*"
|
|
|
|
payload:
|
|
maxRunTime: { $eval: to_int(build.maxRunTime) }
|
|
image: ${build.docker_image}
|
|
|
|
features:
|
|
taskclusterProxy: true
|
|
|
|
command:
|
|
- "/bin/bash"
|
|
- "--login"
|
|
- "-cxe"
|
|
- $let:
|
|
extraSystemSetup: { $eval: strip(str(build.system_setup)) }
|
|
taskIndexExpire: { $fromNow: '6 months' }
|
|
in: >
|
|
(apt-get -qq -y remove --purge ubuntu-advantage-tools || true) &&
|
|
apt-get -qq update && apt-get -qq -y install curl git && ${extraSystemSetup};
|
|
swig_bin=`curl -sSIL -o /dev/null -w "%{http_code}" https://community-tc.services.mozilla.com/api/index/v1/task/project.deepspeech.swig.${build.swig_system}.${build.swig_arch}.${system.swig.sha1}/artifacts/public/ds-swig.tar.gz` &&
|
|
if [ "$swig_bin" != "200" ]; then
|
|
adduser --system --home ${system.homedir.linux} ${system.username} && cd ${system.homedir.linux}/ &&
|
|
echo -e "#!/bin/bash\nset -xe\n env && id && (git clone --quiet ${system.swig.repo} ~/swig/ && cd ~/swig/ && git checkout --quiet ${system.swig.sha1})" > /tmp/clone.sh && chmod +x /tmp/clone.sh &&
|
|
sudo -H -u ${system.username} /bin/bash /tmp/clone.sh &&
|
|
sudo -H -u ${system.username} --preserve-env /bin/bash ${system.homedir.linux}/swig/${build.scripts.build} &&
|
|
sudo -H -u ${system.username} /bin/bash ${system.homedir.linux}/swig/${build.scripts.package} &&
|
|
curl -sSL --fail -X PUT \
|
|
-H "Content-Type: application/json" \
|
|
-d "{\"taskId\":\"$TASK_ID\",\"rank\":0,\"expires\":\"${taskIndexExpire}\",\"data\":{}}" \
|
|
"http://taskcluster/index/v1/task/project.deepspeech.swig.${build.swig_system}.${build.swig_arch}.${system.swig.sha1}"
|
|
fi;
|
|
|
|
artifacts:
|
|
"public":
|
|
type: "directory"
|
|
path: "/tmp/artifacts/"
|
|
expires: { $fromNow: '6 months' }
|
|
|
|
metadata:
|
|
name: ${build.metadata.name}
|
|
description: ${build.metadata.description}
|
|
owner: ${event.head.user.email}
|
|
source: ${event.head.repo.url}
|