@@ -2,7 +2,7 @@ import { DiscloudConfig, RESTPostApiUploadResult, Routes } from "@discloudapp/ap
22import FormData from "form-data" ;
33import { GluegunCommand , GluegunToolbox } from "gluegun" ;
44import { exit } from "node:process" ;
5- import { apidiscloud , config , configToObj , configUpdate , getMissingValues , getNotIngnoredFiles , makeZipFromFileList , RateLimit , readDiscloudConfig , verifyRequiredFiles } from "../util" ;
5+ import { apidiscloud , config , configToObj , configUpdate , findDiscloudConfig , getMissingValues , getNotIngnoredFiles , makeZipFromFileList , RateLimit , readDiscloudConfig , verifyRequiredFiles } from "../util" ;
66import { FileExt , mapDiscloudConfigProps , requiredDiscloudConfigProps } from "../util/constants" ;
77
88export default new class Upload implements GluegunCommand {
@@ -28,9 +28,17 @@ export default new class Upload implements GluegunCommand {
2828 if ( ! filesystem . exists ( parameters . first ) )
2929 return print . error ( `${ parameters . first } file does not exists.` ) ;
3030 } else {
31- const dConfig = < DiscloudConfig > configToObj < any > ( readDiscloudConfig ( parameters . first ) ! ) ;
31+ const discloudConfigPath = findDiscloudConfig ( parameters . first ) ;
3232
33- const missing = getMissingValues ( dConfig , requiredDiscloudConfigProps [ dConfig . TYPE ] ) ;
33+ if ( ! discloudConfigPath )
34+ return print . error ( "discloud.config file is missing." ) ;
35+
36+ const dConfig = < DiscloudConfig > configToObj < any > ( readDiscloudConfig ( discloudConfigPath ) ) ;
37+
38+ const requiredProps = requiredDiscloudConfigProps [ dConfig . TYPE ] ??
39+ Object . values ( requiredDiscloudConfigProps ) ;
40+
41+ const missing = getMissingValues ( dConfig , requiredProps ) ;
3442
3543 if ( missing . length ) {
3644 const missingProp = mapDiscloudConfigProps [ dConfig . TYPE ] ?. [ missing [ 0 ] ] ?? missing [ 0 ] ;
0 commit comments