File size: 3,959 Bytes
b585c7f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
{
    "variables": {
        "client_id": "<AZURE CLIENT ID>",
        "client_secret": "<AZURE CLIENT SECRET>",
        "subscription_id": "92429150-401a-431f-8955-e69c0c119e68",
        "tenant_id": "840229f2-c911-49e6-a73d-5b3a4311835a",
        "managed_image_resource_group_name": "H2OIMAGES",
        "h2ogpt_version": "010",
        "branch_tag": "main",
        "base_model": "h2oai-h2ogpt-4096-llama2-13b-chat"
    },
    "builders": [
        {
            "type": "azure-arm",
            "client_id": "{{user `client_id`}}",
            "client_secret": "{{user `client_secret`}}",
            "subscription_id": "{{user `subscription_id`}}",
            "tenant_id": "{{user `tenant_id`}}",
            "capture_container_name": "h2ovhdimages",
            "capture_name_prefix": "h2ogpt-{{user `h2ogpt_version`}}",
            "resource_group_name": "{{user `managed_image_resource_group_name`}}",
            "temp_resource_group_name": "Engineering_DevOps_h2oGPT-Ubuntu",
            "storage_account": "h2ovhdimages",
            "os_type": "Linux",
            "image_publisher": "Canonical",
            "image_offer": "0001-com-ubuntu-server-focal",
            "image_sku": "20_04-lts",
            "os_disk_size_gb": 512,
            "azure_tags": {
                "dept": "Engineering",
                "task": "Image deployment",
                "Name": "H2OGPT-CLOUD-IMAGES",
                "Owner": "ops@h2o.ai",
                "Project": "DevOps",
                "Department": "Engineering",
                "Environment": "Dev",
                "Scheduling": "self-managed"
            },
            "location": "East US",
            "vm_size": "Standard_NC24s_v3",
            "ssh_username": "ubuntu"
        }
    ],
    "post-processors": [
        {
            "type": "manifest",
            "output": "azure-ubuntu-image-info.json",
            "strip_path": true,
            "custom_data": {
                "base_image": "AZURE Ubuntu 20.04",
                "h2ogpt_version": "{{user `h2ogpt_version`}}"
            }
        }
    ],
    "provisioners": [
      {
        "type": "shell",
        "script": "setup_environment.sh",
        "pause_before": "10s",
        "pause_after": "10s"
      },
      {
        "type": "shell",
        "inline": ["sudo reboot now"],
        "pause_after": "10s",
        "expect_disconnect": true
      },
      {
        "type": "shell",
        "environment_vars": ["BRANCH_TAG={{user `branch_tag`}}"],
        "script": "install_h2ogpt.sh",
        "pause_after": "10s"
      },
      {
        "type": "shell",
        "inline": [
          "sudo chown -R ubuntu:ubuntu /etc/nginx/conf.d",
          "sudo chown -R ubuntu:ubuntu /etc/systemd/system/"
        ],
        "pause_before": "10s"
      },
      {
        "type":  "file",
        "source": "./startup-scripts/run_nginx.sh",
        "destination": "/workspace/run_nginx.sh"
      },
      {
        "type":  "file",
        "source": "./startup-scripts/run_vllm.sh",
        "destination": "/workspace/run_vllm.sh"
      },
      {
        "type":  "file",
        "source": "./startup-scripts/run_h2ogpt.sh",
        "destination": "/workspace/run_h2ogpt.sh"
      },
      {
        "type":  "file",
        "source": "./startup-scripts/h2ogpt_nginx.service",
        "destination": "/etc/systemd/system/h2ogpt_nginx.service"
      },
      {
        "type":  "file",
        "source": "./startup-scripts/vllm.service",
        "destination": "/etc/systemd/system/vllm.service"
      },
      {
        "type":  "file",
        "source": "./startup-scripts/h2ogpt.service",
        "destination": "/etc/systemd/system/h2ogpt.service"
      },
      {
        "type":  "file",
        "source": "./startup-scripts/temp.conf",
        "destination": "/workspace/temp.conf"
      },
      {
        "type": "shell",
        "script": "{{user `base_model`}}.sh",
        "pause_after": "10s"
      }
      ]
}