@@ -228,39 +228,50 @@ func provisionerCode(d *schema.ResourceData) (string, error) {
228
228
data ["idle_timeout" ] = strconv .Itoa (d .Get ("idle_timeout" ).(int ))
229
229
data ["name" ] = d .Get ("name" ).(string )
230
230
data ["tf_resource" ] = base64 .StdEncoding .EncodeToString (jsonResource )
231
+ data ["instance_gpu" ] = d .Get ("instance_gpu" ).(string )
231
232
data ["AWS_SECRET_ACCESS_KEY" ] = os .Getenv ("AWS_SECRET_ACCESS_KEY" )
232
233
data ["AWS_ACCESS_KEY_ID" ] = os .Getenv ("AWS_ACCESS_KEY_ID" )
233
234
data ["AZURE_CLIENT_ID" ] = os .Getenv ("AZURE_CLIENT_ID" )
234
235
data ["AZURE_CLIENT_SECRET" ] = os .Getenv ("AZURE_CLIENT_SECRET" )
235
236
data ["AZURE_SUBSCRIPTION_ID" ] = os .Getenv ("AZURE_SUBSCRIPTION_ID" )
236
237
data ["AZURE_TENANT_ID" ] = os .Getenv ("AZURE_TENANT_ID" )
237
238
238
- tmpl , err := template .New ("deploy" ).Parse (`#!/bin/bash
239
+ tmpl , err := template .New ("deploy" ).Parse (`#!/bin/sh
239
240
export DEBIAN_FRONTEND=noninteractive
240
241
241
242
{{if eq .cloud "azure"}}
242
243
echo "APT::Get::Assume-Yes \"true\";" | sudo tee -a /etc/apt/apt.conf.d/90assumeyes
243
244
244
245
sudo apt remove unattended-upgrades
245
- systemctl disable apt-daily-upgrade.service
246
+ systemctl disable apt-daily-upgrade.service
246
247
248
+ sudo add-apt-repository universe -y
247
249
sudo add-apt-repository ppa:git-core/ppa -y
248
250
sudo apt update && sudo apt-get install -y git
249
251
sudo curl -fsSL https://get.docker.com -o get-docker.sh && sudo sh get-docker.sh
250
252
sudo usermod -aG docker ubuntu
251
253
sudo setfacl --modify user:ubuntu:rw /var/run/docker.sock
254
+
252
255
curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add -
253
256
sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main"
254
257
sudo apt update && sudo apt-get install -y terraform
258
+
255
259
curl -sL https://deb.nodesource.com/setup_12.x | sudo bash
256
260
sudo apt update && sudo apt-get install -y nodejs
261
+
257
262
sudo apt install -y ubuntu-drivers-common git
258
- sudo ubuntu-drivers autoinstall
259
- sudo rmmod nvidia && sudo nvidia-smi
260
- curl -s -L https://nvidia.GitHub.io/nvidia-docker/gpgkey | sudo apt-key add -
261
- curl -s -L https://nvidia.GitHub.io/nvidia-docker/ubuntu18.04/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
262
- sudo apt update && sudo apt install -y nvidia-container-toolkit
263
+ sudo ubuntu-drivers autoinstall
264
+
265
+ curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
266
+ curl -s -L https://nvidia.github.io/nvidia-docker/ubuntu18.04/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list
267
+ sudo apt update && sudo apt install -y nvidia-docker2
268
+
269
+ sudo systemctl restart docker
270
+
271
+ sudo nvidia-smi
272
+ sudo docker run --rm --gpus all nvidia/cuda:11.0-base nvidia-smi
263
273
{{end}}
274
+
264
275
sudo npm install -g git+https://github.com/iterative/cml.git#cml-runner
265
276
export HOME=/root
266
277
export AWS_SECRET_ACCESS_KEY={{.AWS_SECRET_ACCESS_KEY}}
@@ -269,7 +280,7 @@ export AZURE_CLIENT_ID={{.AZURE_CLIENT_ID}}
269
280
export AZURE_CLIENT_SECRET={{.AZURE_CLIENT_SECRET}}
270
281
export AZURE_SUBSCRIPTION_ID={{.AZURE_SUBSCRIPTION_ID}}
271
282
export AZURE_TENANT_ID={{.AZURE_TENANT_ID}}
272
- nohup cml-runner{{if .name}} --name {{.name}}{{end}}{{if .labels}} --labels {{.labels}}{{end}}{{if .idle_timeout}} --idle-timeout {{.idle_timeout}}{{end}}{{if .driver}} --driver {{.driver}}{{end}}{{if .repo}} --repo {{.repo}}{{end}}{{if .token}} --token {{.token}}{{end}}{{if .tf_resource}} --tf_resource={{.tf_resource}}{{end}} < /dev/null > std.out 2> std.err &
283
+ nohup cml-runner{{if .name}} --name {{.name}}{{end}}{{if .labels}} --labels {{.labels}}{{end}}{{if .idle_timeout}} --idle-timeout {{.idle_timeout}}{{end}}{{if .driver}} --driver {{.driver}}{{end}}{{if .repo}} --repo {{.repo}}{{end}}{{if .token}} --token {{.token}}{{end}}{{if .tf_resource}} --tf_resource={{.tf_resource}}{{end}} {{if .instance_gpu}} --cloud-gpu {{.instance_gpu}}{{end}} < /dev/null > std.out 2> std.err &
273
284
sleep 10
274
285
` )
275
286
var customDataBuffer bytes.Buffer
0 commit comments