@@ -3,92 +3,92 @@ import chalk from 'chalk'
33import inquirer from 'inquirer'
44import { promptUser } from '../utils/promptTaker.js' ;
55
6- let domain = 'domains.mdgspace.org' ;
6+ let domain = 'domains.pluto. mdgspace.org' ;
77
88async function selectResourceType ( ) {
9- const { resourceType } = await inquirer . prompt ( [
10- {
11- type : 'list' ,
12- name : 'resourceType' ,
13- message : 'Select the resource type:' ,
14- choices : [ 'URL' , 'PORT' , 'GITHUB' ] ,
15- } ,
16- ] ) ;
17- return resourceType ;
18- }
19- async function selectDockerPresent ( ) {
20- const { resourceType } = await inquirer . prompt ( [
21- {
22- type : 'list' ,
23- name : 'resourceType' ,
24- message : 'Is Dockerfile present?' ,
25- choices : [ 'No' , 'Yes' ] ,
26- } ,
27- ] ) ;
28- return resourceType ;
29- }
9+ const { resourceType } = await inquirer . prompt ( [
10+ {
11+ type : 'list' ,
12+ name : 'resourceType' ,
13+ message : 'Select the resource type:' ,
14+ choices : [ 'URL' , 'PORT' , 'GITHUB' ] ,
15+ } ,
16+ ] ) ;
17+ return resourceType ;
18+ }
19+ async function selectDockerPresent ( ) {
20+ const { resourceType } = await inquirer . prompt ( [
21+ {
22+ type : 'list' ,
23+ name : 'resourceType' ,
24+ message : 'Is Dockerfile present?' ,
25+ choices : [ 'No' , 'Yes' ] ,
26+ } ,
27+ ] ) ;
28+ return resourceType ;
29+ }
30+
31+
32+ async function selectStack ( ) {
33+ const { Stack } = await inquirer . prompt ( [
34+ {
35+ type : 'list' ,
36+ name : 'Stack' , // Must match the key you destructure
37+ message : 'Select the tech stack:' ,
38+ choices : [ 'Python' , 'NodeJS' ] ,
39+ } ,
40+ ] ) ;
41+ return Stack ;
42+ }
3043
44+ export async function createDomain ( userApiKey : string , user : string , provider : string , backendUrl : string ) {
45+ let subdomain : string = '' ;
46+ let resourceType : string = '' ;
47+ let resource : string = '' ;
48+ let envContent : string = '' ;
49+ let staticContent : string = '' ;
50+ let dockerfilePresent : string = "" ;
51+ let port : string = '' ;
52+ let stack : string = '' ;
53+ let buildCmds : string = '' ;
3154
32- async function selectStack ( ) {
33- const { Stack } = await inquirer . prompt ( [
34- {
35- type : 'list' ,
36- name : 'Stack' , // Must match the key you destructure
37- message : 'Select the tech stack:' ,
38- choices : [ 'Python' , 'NodeJS' ] ,
39- } ,
40- ] ) ;
41- return Stack ;
55+ subdomain = await promptUser ( 'Enter subdomain (subdomain.domains.mdgspace.org):' ) ;
56+ resourceType = await selectResourceType ( ) ;
57+ resource = await promptUser ( 'Enter resource:' ) ;
58+
59+ if ( resourceType === 'GitHub' ) {
60+ envContent = await promptUser ( 'Enter environment content:' ) ;
61+ staticContent = await promptUser ( 'Enter static content:' ) ;
62+ dockerfilePresent = await selectDockerPresent ( ) ;
63+ port = await promptUser ( 'Enter port:' ) ;
64+ stack = await promptUser ( 'Enter stack (NodeJS/Python):' ) ;
65+ buildCmds = await promptUser ( 'Enter build commands:' ) ;
4266 }
4367
44- export async function createDomain ( userApiKey : string , user : string , provider : string , backendUrl : string ) {
45- let subdomain : string = '' ;
46- let resourceType : string = '' ;
47- let resource : string = '' ;
48- let envContent : string = '' ;
49- let staticContent : string = '' ;
50- let dockerfilePresent : string = "" ;
51- let port : string = '' ;
52- let stack : string = '' ;
53- let buildCmds : string = '' ;
54-
55- subdomain = await promptUser ( 'Enter subdomain (subdomain.domains.mdgspace.org):' ) ;
56- resourceType = await selectResourceType ( ) ;
57- resource = await promptUser ( 'Enter resource:' ) ;
58-
59- if ( resourceType === 'GitHub' ) {
60- envContent = await promptUser ( 'Enter environment content:' ) ;
61- staticContent = await promptUser ( 'Enter static content:' ) ;
62- dockerfilePresent = await selectDockerPresent ( ) ;
63- port = await promptUser ( 'Enter port:' ) ;
64- stack = await promptUser ( 'Enter stack (NodeJS/Python): ') ;
65- buildCmds = await promptUser ( 'Enter build commands:' ) ;
68+ const payload = {
69+ subdomain : ` ${ subdomain } . ${ domain } ` ,
70+ resource_type : resourceType ,
71+ resource,
72+ env_content : envContent ,
73+ static_content : staticContent ,
74+ dockerfile_present : dockerfilePresent ,
75+ port,
76+ build_cmds : buildCmds ,
77+ stack ,
78+ author : user ,
79+ date : new Date ( ) . toLocaleDateString ( ) ,
80+ token : userApiKey ,
81+ provider ,
82+ } ;
83+ try {
84+ const response = await axios . post ( ` ${ backendUrl } /map` , payload ) ;
85+ if ( response . data . status === 'success' ) {
86+ console . log ( `✅ Domain ' ${ subdomain } . ${ domain } ' created successfully!` ) ;
87+ } else {
88+ console . log ( '❌ Domain creation failed! ') ;
89+ console . log ( "Either the domain exist or the domain is not created" ) ;
6690 }
67-
68- const payload = {
69- subdomain : `${ subdomain } .${ domain } ` ,
70- resource_type : resourceType ,
71- resource,
72- env_content : envContent ,
73- static_content : staticContent ,
74- dockerfile_present : dockerfilePresent ,
75- port,
76- build_cmds : buildCmds ,
77- stack,
78- author : user ,
79- date : new Date ( ) . toLocaleDateString ( ) ,
80- token : userApiKey ,
81- provider,
82- } ;
83- try {
84- const response = await axios . post ( `${ backendUrl } /map` , payload ) ;
85- if ( response . data . status === 'success' ) {
86- console . log ( `✅ Domain '${ subdomain } .${ domain } ' created successfully!` ) ;
87- } else {
88- console . log ( '❌ Domain creation failed!' ) ;
89- console . log ( "Either the domain exist or the domain is not created" ) ;
90- }
91- } catch ( error ) {
92- console . error ( chalk . red ( 'Error creating domain:' ) ) ;
93- }
91+ } catch ( error ) {
92+ console . error ( chalk . red ( 'Error creating domain:' ) ) ;
93+ }
9494}
0 commit comments