#!/usr/bin/env python3
import socket
import sys
import subprocess

def main():
    if len(sys.argv) < 2:
        print("Usage: cloud-init-trigger <socket_path>")
        sys.exit(0)

    socket_path = sys.argv[1]
    
    try:
        with socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) as client:
            client.connect(socket_path)
            client.sendall(b'start')
            message = client.recv(4096)
            
            if message:
                cmd = message.decode().strip()
                result = subprocess.run(cmd, shell=True)
                sys.exit(result.returncode)
            else:
                print("Error: Received empty message from cloud-init-main")
                sys.exit(0)
                
    except Exception as e:
        print(f"Trigger error: {e}")
        sys.exit(0)

if __name__ == "__main__":
    main()

