@tonk/cli 0.0.2 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAOlC,eAAO,MAAM,aAAa,SAiXtB,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAOlC,eAAO,MAAM,aAAa,SAqZtB,CAAC"}
@@ -255,8 +255,44 @@ if ! command -v docker &> /dev/null; then
255
255
  sudo usermod -aG docker ${options.user}
256
256
  fi
257
257
 
258
+ # Install Nginx
259
+ sudo amazon-linux-extras install nginx1 -y
260
+ sudo systemctl enable nginx
261
+ sudo systemctl start nginx
262
+
263
+ # Install Certbot for SSL certificates
264
+ sudo amazon-linux-extras install epel -y
265
+ sudo yum install certbot python-certbot-nginx -y
266
+
258
267
  # Create directory for Tonk app if it doesn't exist
259
268
  mkdir -p ~/tonk-app
269
+
270
+ # Create Nginx configuration for the app
271
+ cat > /tmp/tonk-app.conf << 'EOL'
272
+ server {
273
+ listen 80;
274
+ server_name _;
275
+
276
+ location / {
277
+ proxy_pass http://localhost:${options.port || '8080'};
278
+ proxy_http_version 1.1;
279
+ proxy_set_header Upgrade $http_upgrade;
280
+ proxy_set_header Connection 'upgrade';
281
+ proxy_set_header Host $host;
282
+ proxy_cache_bypass $http_upgrade;
283
+ proxy_set_header X-Real-IP $remote_addr;
284
+ proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
285
+ proxy_set_header X-Forwarded-Proto $scheme;
286
+ }
287
+ }
288
+ EOL
289
+
290
+ # Move Nginx config to proper location and apply
291
+ sudo mv /tmp/tonk-app.conf /etc/nginx/conf.d/
292
+ sudo systemctl restart nginx
293
+
294
+ echo "Nginx configured as reverse proxy to port ${options.port || '8080'}"
295
+ echo "To enable HTTPS, run: sudo certbot --nginx -d yourdomain.com"
260
296
  `;
261
297
  // Create a temporary script and execute it
262
298
  const tempScriptPath = path.join(process.cwd(), 'tonk-setup-temp.sh');
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAOlC,eAAO,MAAM,aAAa,SAoJtB,CAAC"}
1
+ {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAOlC,eAAO,MAAM,aAAa,SAqJtB,CAAC"}
@@ -95,7 +95,8 @@ You can provision a new EC2 instance with 'tonk config --provision' or configure
95
95
  docker build -t tonk-app . &&
96
96
  docker stop tonk-app-container || true &&
97
97
  docker rm tonk-app-container || true &&
98
- docker run -d --name tonk-app-container -p ${options.port}:8080 -e PORT=8080 tonk-app
98
+ docker run -d --name tonk-app-container -p ${options.port}:8080 -e PORT=8080 tonk-app &&
99
+ sudo systemctl restart nginx
99
100
  '`;
100
101
  execSync(sshCommand, { cwd: projectRoot, stdio: 'inherit' });
101
102
  // 6. Clean up
@@ -1 +1 @@
1
- {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../src/commands/deploy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { Command } from 'commander';
2
+ export declare const sslCommand: Command;
3
+ //# sourceMappingURL=ssl.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ssl.d.ts","sourceRoot":"","sources":["../../src/commands/ssl.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAMlC,eAAO,MAAM,UAAU,SAuHnB,CAAC"}
@@ -0,0 +1,87 @@
1
+ import { Command } from 'commander';
2
+ import { execSync } from 'child_process';
3
+ import chalk from 'chalk';
4
+ import path from 'path';
5
+ import fs from 'fs';
6
+ export const sslCommand = new Command('ssl')
7
+ .description('Set up SSL/HTTPS for your Tonk app')
8
+ .option('-i, --instance <address>', 'EC2 instance address')
9
+ .option('-k, --key <path>', 'Path to SSH key file')
10
+ .option('-u, --user <name>', 'SSH username', 'ec2-user')
11
+ .option('-d, --domain <domain>', 'Your domain name (must point to your EC2 instance)')
12
+ .action(async (options) => {
13
+ const projectRoot = process.cwd();
14
+ const configFilePath = path.join(projectRoot, 'tonk.config.json');
15
+ // Check if config file exists
16
+ if (!fs.existsSync(configFilePath)) {
17
+ console.error(chalk.red(`Error: No configuration file found at ${configFilePath}
18
+
19
+ Please run 'tonk config' first to set up your EC2 instance.`));
20
+ process.exit(1);
21
+ }
22
+ // Load settings from config file
23
+ try {
24
+ const configData = JSON.parse(fs.readFileSync(configFilePath, 'utf8'));
25
+ // Use config values as defaults if not provided in command options
26
+ if (!options.instance && configData.ec2 && configData.ec2.instance) {
27
+ options.instance = configData.ec2.instance;
28
+ }
29
+ if (!options.key && configData.ec2 && configData.ec2.keyPath) {
30
+ options.key = configData.ec2.keyPath;
31
+ }
32
+ if (!options.user && configData.ec2 && configData.ec2.user) {
33
+ options.user = configData.ec2.user;
34
+ }
35
+ }
36
+ catch (error) {
37
+ console.error(chalk.red(`Error: Could not parse config file at ${configFilePath}. Please run 'tonk config' again.`));
38
+ process.exit(1);
39
+ }
40
+ // Verify required options are present
41
+ if (!options.instance) {
42
+ console.error(chalk.red('Error: EC2 instance address not found in config file and not provided as an option.'));
43
+ process.exit(1);
44
+ }
45
+ if (!options.key || !fs.existsSync(options.key)) {
46
+ console.error(chalk.red('Error: Valid SSH key file path not found in config file and not provided as an option.'));
47
+ process.exit(1);
48
+ }
49
+ if (!options.domain) {
50
+ console.error(chalk.red('Error: Domain name is required. Please provide with --domain flag.'));
51
+ process.exit(1);
52
+ }
53
+ try {
54
+ console.log(chalk.blue(`Setting up SSL for ${options.domain} on ${options.instance}...`));
55
+ // SSH into EC2 and run certbot
56
+ const sshCommand = `ssh -i "${options.key}" ${options.user}@${options.instance} '
57
+ # Update Nginx config to use domain name
58
+ sudo sed -i "s/server_name _/server_name ${options.domain}/" /etc/nginx/conf.d/tonk-app.conf
59
+ sudo systemctl restart nginx
60
+
61
+ # Run certbot to get and install SSL certificate
62
+ sudo certbot --nginx -d ${options.domain} --non-interactive --agree-tos --email admin@${options.domain} --redirect
63
+ '`;
64
+ execSync(sshCommand, { stdio: 'inherit' });
65
+ // Update config file with HTTPS URL
66
+ const configData = JSON.parse(fs.readFileSync(configFilePath, 'utf8'));
67
+ configData.websocket = {
68
+ url: `wss://${options.domain}`,
69
+ };
70
+ configData.https = {
71
+ domain: options.domain,
72
+ url: `https://${options.domain}`,
73
+ };
74
+ fs.writeFileSync(configFilePath, JSON.stringify(configData, null, 2));
75
+ console.log(chalk.green(`
76
+ ✅ SSL setup successful!
77
+
78
+ Your app is now accessible via HTTPS at https://${options.domain}
79
+ WebSocket URL updated to wss://${options.domain}
80
+ `));
81
+ }
82
+ catch (error) {
83
+ console.error(chalk.red('SSL setup failed:'), error);
84
+ process.exit(1);
85
+ }
86
+ });
87
+ //# sourceMappingURL=ssl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ssl.js","sourceRoot":"","sources":["../../src/commands/ssl.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ #!/bin/bash
2
+
3
+ # This script creates an AWS EC2 key pair and saves it to a file
4
+
5
+ if [ $# -lt 1 ]; then
6
+ echo "Usage: $0 <key-name> [aws-profile-option] [aws-region-option]"
7
+ exit 1
8
+ fi
9
+
10
+ KEY_NAME=$1
11
+ PROFILE_OPTION=$2
12
+ REGION_OPTION=$3
13
+
14
+ # Create the key pair and save it to a file
15
+ aws ec2 create-key-pair ${PROFILE_OPTION} ${REGION_OPTION} --key-name ${KEY_NAME} --query 'KeyMaterial' --output text > ${KEY_NAME}.pem
16
+
17
+ # Set appropriate permissions for the key file
18
+ chmod 400 ${KEY_NAME}.pem
19
+
20
+ echo "Key pair ${KEY_NAME} created and saved."
@@ -0,0 +1,20 @@
1
+ #!/bin/bash
2
+
3
+ # This script retrieves the public DNS name of an EC2 instance
4
+
5
+ if [ $# -lt 1 ]; then
6
+ echo "Usage: $0 <instance-id> [aws-profile-option] [aws-region-option]"
7
+ exit 1
8
+ fi
9
+
10
+ INSTANCE_ID=$1
11
+ PROFILE_OPTION=$2
12
+ REGION_OPTION=$3
13
+
14
+ # Get the public DNS name of the instance
15
+ PUBLIC_DNS=$(aws ec2 describe-instances ${PROFILE_OPTION} ${REGION_OPTION} \
16
+ --instance-ids ${INSTANCE_ID} \
17
+ --query 'Reservations[0].Instances[0].PublicDnsName' \
18
+ --output text)
19
+
20
+ echo ${PUBLIC_DNS}
@@ -0,0 +1,93 @@
1
+ #!/bin/bash
2
+
3
+ # This script provisions an EC2 instance using a key pair
4
+
5
+ if [ $# -lt 1 ]; then
6
+ echo "Usage: $0 <key-name> [aws-profile-option] [aws-region-option]"
7
+ exit 1
8
+ fi
9
+
10
+ KEY_NAME=$1
11
+ PROFILE_OPTION=$2
12
+ REGION_OPTION=$3
13
+
14
+ # Extract region from the region option (simpler method)
15
+ REGION=$(echo ${REGION_OPTION} | sed -n 's/.*--region \([a-z0-9-]*\).*/\1/p')
16
+
17
+ # If region is not found in the option, use default
18
+ if [ -z "$REGION" ]; then
19
+ # Try to get the default region
20
+ REGION=$(aws configure get region ${PROFILE_OPTION})
21
+
22
+ # If still no region, use us-east-1 as fallback
23
+ if [ -z "$REGION" ]; then
24
+ REGION="us-east-1"
25
+ fi
26
+ fi
27
+
28
+ echo "Using AWS region: ${REGION}"
29
+
30
+ # Query for the latest Amazon Linux 2023 AMI for the current region
31
+ echo "Querying for latest Amazon Linux 2023 AMI in region ${REGION}..."
32
+ AMI_ID=$(aws ec2 describe-images ${PROFILE_OPTION} ${REGION_OPTION} \
33
+ --owners amazon \
34
+ --filters "Name=name,Values=al2023-ami-2023.*-x86_64" "Name=state,Values=available" \
35
+ --query "sort_by(Images, &CreationDate)[-1].ImageId" \
36
+ --output text)
37
+
38
+ # If we couldn't get an AMI ID, exit with error
39
+ if [ -z "$AMI_ID" ] || [ "$AMI_ID" == "None" ]; then
40
+ echo "ERROR: Unable to find a valid Amazon Linux 2023 AMI for region ${REGION}"
41
+ exit 1
42
+ fi
43
+
44
+ echo "Using AMI ID: ${AMI_ID}"
45
+
46
+ # For eu-north-1 region, use t3.micro as t2.micro is not supported
47
+ INSTANCE_TYPE="t2.micro"
48
+ if [ "$REGION" = "eu-north-1" ]; then
49
+ INSTANCE_TYPE="t3.micro"
50
+ fi
51
+
52
+ echo "Using instance type: ${INSTANCE_TYPE}"
53
+
54
+ # Create a custom security group
55
+ SECURITY_GROUP_NAME="tonk-security-group-$(date +%s)"
56
+ echo "Creating security group: ${SECURITY_GROUP_NAME}"
57
+
58
+ SECURITY_GROUP_ID=$(aws ec2 create-security-group ${PROFILE_OPTION} ${REGION_OPTION} \
59
+ --group-name ${SECURITY_GROUP_NAME} \
60
+ --description "Security group for Tonk" \
61
+ --query 'GroupId' \
62
+ --output text)
63
+
64
+ echo "Security group created with ID: ${SECURITY_GROUP_ID}"
65
+
66
+ # Add SSH access rule to the security group
67
+ aws ec2 authorize-security-group-ingress ${PROFILE_OPTION} ${REGION_OPTION} \
68
+ --group-id ${SECURITY_GROUP_ID} \
69
+ --protocol tcp \
70
+ --port 22 \
71
+ --cidr 0.0.0.0/0
72
+
73
+ echo "Added SSH access rule to security group"
74
+
75
+ # Add HTTPS access rule to the security group
76
+ aws ec2 authorize-security-group-ingress ${PROFILE_OPTION} ${REGION_OPTION} \
77
+ --group-id ${SECURITY_GROUP_ID} \
78
+ --protocol tcp \
79
+ --port 443 \
80
+ --cidr 0.0.0.0/0
81
+
82
+ echo "Added HTTPS access rule to security group"
83
+
84
+ # Launch an EC2 instance with Amazon Linux 2023 AMI and the new security group
85
+ INSTANCE_ID=$(aws ec2 run-instances ${PROFILE_OPTION} ${REGION_OPTION} \
86
+ --image-id ${AMI_ID} \
87
+ --instance-type ${INSTANCE_TYPE} \
88
+ --key-name ${KEY_NAME} \
89
+ --security-group-ids ${SECURITY_GROUP_ID} \
90
+ --query 'Instances[0].InstanceId' \
91
+ --output text)
92
+
93
+ echo "Instance launched with ID: ${INSTANCE_ID}"
package/dist/tonk.js CHANGED
@@ -4,6 +4,7 @@ import { devCommand } from './commands/dev.js';
4
4
  import { serveCommand } from './commands/serve.js';
5
5
  import { deployCommand } from './commands/deploy.js';
6
6
  import { configCommand } from './commands/config.js';
7
+ import { sslCommand } from './commands/ssl.js';
7
8
  const program = new Command();
8
9
  // Main program setup
9
10
  program
@@ -18,6 +19,7 @@ program.addCommand(devCommand);
18
19
  program.addCommand(serveCommand);
19
20
  program.addCommand(deployCommand);
20
21
  program.addCommand(configCommand);
22
+ program.addCommand(sslCommand);
21
23
  // Parse arguments
22
24
  program.parse();
23
25
  // Show help if no arguments provided
package/dist/tonk.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"tonk.js","sourceRoot":"","sources":["../src/tonk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAClC,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAC,YAAY,EAAC,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAC;AAEnD,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,qBAAqB;AACrB,OAAO;KACJ,IAAI,CAAC,MAAM,CAAC;KACZ,WAAW,CAAC,4DAA4D,CAAC;KACzE,OAAO,CAAC,OAAO,CAAC;KAChB,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;IACjB,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;AACrC,CAAC,CAAC,CAAC;AAEL,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAC/B,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AACjC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAElC,kBAAkB;AAClB,OAAO,CAAC,KAAK,EAAE,CAAC;AAEhB,qCAAqC;AACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAClC,OAAO,CAAC,UAAU,EAAE,CAAC;AACvB,CAAC"}
1
+ {"version":3,"file":"tonk.js","sourceRoot":"","sources":["../src/tonk.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAClC,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAC,YAAY,EAAC,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAC,aAAa,EAAC,MAAM,sBAAsB,CAAC;AACnD,OAAO,EAAC,UAAU,EAAC,MAAM,mBAAmB,CAAC;AAE7C,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,qBAAqB;AACrB,OAAO;KACJ,IAAI,CAAC,MAAM,CAAC;KACZ,WAAW,CAAC,4DAA4D,CAAC;KACzE,OAAO,CAAC,OAAO,CAAC;KAChB,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;IACjB,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;AACrC,CAAC,CAAC,CAAC;AAEL,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAC/B,OAAO,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AACjC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;AAClC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAE/B,kBAAkB;AAClB,OAAO,CAAC,KAAK,EAAE,CAAC;AAEhB,qCAAqC;AACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAClC,OAAO,CAAC,UAAU,EAAE,CAAC;AACvB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tonk/cli",
3
- "version": "0.0.2",
3
+ "version": "0.0.4",
4
4
  "description": "The Tonk stack command line utility",
5
5
  "type": "module",
6
6
  "bin": {
@@ -18,10 +18,12 @@
18
18
  },
19
19
  "files": [
20
20
  "bin",
21
- "dist"
21
+ "dist",
22
+ "scripts"
22
23
  ],
23
24
  "scripts": {
24
- "build": "tsup && chmod +x ./dist/tonk.js",
25
+ "build": "tsup && chmod +x ./dist/tonk.js && npm run copy-scripts",
26
+ "copy-scripts": "mkdir -p ./dist/scripts && cp -r ./scripts/* ./dist/scripts/",
25
27
  "dev": "tsup --watch",
26
28
  "clean": "gts clean",
27
29
  "lint": "gts lint",
@@ -0,0 +1,20 @@
1
+ #!/bin/bash
2
+
3
+ # This script creates an AWS EC2 key pair and saves it to a file
4
+
5
+ if [ $# -lt 1 ]; then
6
+ echo "Usage: $0 <key-name> [aws-profile-option] [aws-region-option]"
7
+ exit 1
8
+ fi
9
+
10
+ KEY_NAME=$1
11
+ PROFILE_OPTION=$2
12
+ REGION_OPTION=$3
13
+
14
+ # Create the key pair and save it to a file
15
+ aws ec2 create-key-pair ${PROFILE_OPTION} ${REGION_OPTION} --key-name ${KEY_NAME} --query 'KeyMaterial' --output text > ${KEY_NAME}.pem
16
+
17
+ # Set appropriate permissions for the key file
18
+ chmod 400 ${KEY_NAME}.pem
19
+
20
+ echo "Key pair ${KEY_NAME} created and saved."
@@ -0,0 +1,20 @@
1
+ #!/bin/bash
2
+
3
+ # This script retrieves the public DNS name of an EC2 instance
4
+
5
+ if [ $# -lt 1 ]; then
6
+ echo "Usage: $0 <instance-id> [aws-profile-option] [aws-region-option]"
7
+ exit 1
8
+ fi
9
+
10
+ INSTANCE_ID=$1
11
+ PROFILE_OPTION=$2
12
+ REGION_OPTION=$3
13
+
14
+ # Get the public DNS name of the instance
15
+ PUBLIC_DNS=$(aws ec2 describe-instances ${PROFILE_OPTION} ${REGION_OPTION} \
16
+ --instance-ids ${INSTANCE_ID} \
17
+ --query 'Reservations[0].Instances[0].PublicDnsName' \
18
+ --output text)
19
+
20
+ echo ${PUBLIC_DNS}
@@ -0,0 +1,93 @@
1
+ #!/bin/bash
2
+
3
+ # This script provisions an EC2 instance using a key pair
4
+
5
+ if [ $# -lt 1 ]; then
6
+ echo "Usage: $0 <key-name> [aws-profile-option] [aws-region-option]"
7
+ exit 1
8
+ fi
9
+
10
+ KEY_NAME=$1
11
+ PROFILE_OPTION=$2
12
+ REGION_OPTION=$3
13
+
14
+ # Extract region from the region option (simpler method)
15
+ REGION=$(echo ${REGION_OPTION} | sed -n 's/.*--region \([a-z0-9-]*\).*/\1/p')
16
+
17
+ # If region is not found in the option, use default
18
+ if [ -z "$REGION" ]; then
19
+ # Try to get the default region
20
+ REGION=$(aws configure get region ${PROFILE_OPTION})
21
+
22
+ # If still no region, use us-east-1 as fallback
23
+ if [ -z "$REGION" ]; then
24
+ REGION="us-east-1"
25
+ fi
26
+ fi
27
+
28
+ echo "Using AWS region: ${REGION}"
29
+
30
+ # Query for the latest Amazon Linux 2023 AMI for the current region
31
+ echo "Querying for latest Amazon Linux 2023 AMI in region ${REGION}..."
32
+ AMI_ID=$(aws ec2 describe-images ${PROFILE_OPTION} ${REGION_OPTION} \
33
+ --owners amazon \
34
+ --filters "Name=name,Values=al2023-ami-2023.*-x86_64" "Name=state,Values=available" \
35
+ --query "sort_by(Images, &CreationDate)[-1].ImageId" \
36
+ --output text)
37
+
38
+ # If we couldn't get an AMI ID, exit with error
39
+ if [ -z "$AMI_ID" ] || [ "$AMI_ID" == "None" ]; then
40
+ echo "ERROR: Unable to find a valid Amazon Linux 2023 AMI for region ${REGION}"
41
+ exit 1
42
+ fi
43
+
44
+ echo "Using AMI ID: ${AMI_ID}"
45
+
46
+ # For eu-north-1 region, use t3.micro as t2.micro is not supported
47
+ INSTANCE_TYPE="t2.micro"
48
+ if [ "$REGION" = "eu-north-1" ]; then
49
+ INSTANCE_TYPE="t3.micro"
50
+ fi
51
+
52
+ echo "Using instance type: ${INSTANCE_TYPE}"
53
+
54
+ # Create a custom security group
55
+ SECURITY_GROUP_NAME="tonk-security-group-$(date +%s)"
56
+ echo "Creating security group: ${SECURITY_GROUP_NAME}"
57
+
58
+ SECURITY_GROUP_ID=$(aws ec2 create-security-group ${PROFILE_OPTION} ${REGION_OPTION} \
59
+ --group-name ${SECURITY_GROUP_NAME} \
60
+ --description "Security group for Tonk" \
61
+ --query 'GroupId' \
62
+ --output text)
63
+
64
+ echo "Security group created with ID: ${SECURITY_GROUP_ID}"
65
+
66
+ # Add SSH access rule to the security group
67
+ aws ec2 authorize-security-group-ingress ${PROFILE_OPTION} ${REGION_OPTION} \
68
+ --group-id ${SECURITY_GROUP_ID} \
69
+ --protocol tcp \
70
+ --port 22 \
71
+ --cidr 0.0.0.0/0
72
+
73
+ echo "Added SSH access rule to security group"
74
+
75
+ # Add HTTPS access rule to the security group
76
+ aws ec2 authorize-security-group-ingress ${PROFILE_OPTION} ${REGION_OPTION} \
77
+ --group-id ${SECURITY_GROUP_ID} \
78
+ --protocol tcp \
79
+ --port 443 \
80
+ --cidr 0.0.0.0/0
81
+
82
+ echo "Added HTTPS access rule to security group"
83
+
84
+ # Launch an EC2 instance with Amazon Linux 2023 AMI and the new security group
85
+ INSTANCE_ID=$(aws ec2 run-instances ${PROFILE_OPTION} ${REGION_OPTION} \
86
+ --image-id ${AMI_ID} \
87
+ --instance-type ${INSTANCE_TYPE} \
88
+ --key-name ${KEY_NAME} \
89
+ --security-group-ids ${SECURITY_GROUP_ID} \
90
+ --query 'Instances[0].InstanceId' \
91
+ --output text)
92
+
93
+ echo "Instance launched with ID: ${INSTANCE_ID}"