diff --git a/cli/src/action/storage/s3.ts b/cli/src/action/storage/s3.ts index a74ff595cc..43b8b7a0ca 100644 --- a/cli/src/action/storage/s3.ts +++ b/cli/src/action/storage/s3.ts @@ -1,5 +1,5 @@ import * as AWS from 'aws-sdk' -require("aws-sdk/lib/maintenance_mode_message").suppress = true; +require('aws-sdk/lib/maintenance_mode_message').suppress = true export function getS3Client(credentials: any) { return new AWS.S3({ diff --git a/cli/src/api/debug.ts b/cli/src/api/debug.ts index e142b0c123..372e528f48 100644 --- a/cli/src/api/debug.ts +++ b/cli/src/api/debug.ts @@ -1,4 +1,4 @@ -import axios, { AxiosRequestConfig, AxiosRequestHeaders, AxiosResponse } from 'axios' +import axios, { InternalAxiosRequestConfig, AxiosRequestHeaders, AxiosResponse } from 'axios' import * as urlencode from 'urlencode' export async function invokeFunction( @@ -26,7 +26,7 @@ const request = axios.create({ // request interceptor request.interceptors.request.use( - (config: AxiosRequestConfig) => { + (config: InternalAxiosRequestConfig) => { let _headers: AxiosRequestHeaders | any = { 'Content-Type': 'application/json', } diff --git a/cli/src/api/v1/application.ts b/cli/src/api/v1/application.ts index eecd5afdce..addb455f00 100644 --- a/cli/src/api/v1/application.ts +++ b/cli/src/api/v1/application.ts @@ -7,6 +7,7 @@ import { CreateApplicationDto, CreateDependencyDto, CreateEnvironmentDto, + DeleteDependencyDto, UpdateApplicationDto, UpdateDependencyDto, } from './data-contracts' @@ -229,17 +230,18 @@ export async function dependencyControllerGetDependencies( * @tags Application * @name DependencyControllerRemove * @summary Remove a dependency - * @request DELETE:/v1/apps/{appid}/dependencies/{name} + * @request DELETE:/v1/apps/{appid}/dependencies * @secure */ export async function dependencyControllerRemove( appid: string, - name: string, + data: DeleteDependencyDto, configParams: RequestParams = {}, ): Promise { return request({ - url: `/v1/apps/${appid}/dependencies/${name}`, + url: `/v1/apps/${appid}/dependencies`, method: 'DELETE', + data: data, ...configParams, }) } diff --git a/cli/src/api/v1/data-contracts.ts b/cli/src/api/v1/data-contracts.ts index 1d61eb6f8c..417d1953a2 100644 --- a/cli/src/api/v1/data-contracts.ts +++ b/cli/src/api/v1/data-contracts.ts @@ -39,7 +39,7 @@ export interface CreateApplicationDto { export interface UpdateApplicationDto { name?: string - state?: 'Running' | 'Stopped' | 'Restarting' + state?: 'Running' | 'Stopped' | 'Restarting' | 'Deleted' } export interface CreateEnvironmentDto { @@ -91,9 +91,14 @@ export interface UpdatePolicyRuleDto { value: string } -export type CreateWebsiteDto = object +export interface CreateWebsiteDto { + bucketName: string + state: string +} -export type UpdateWebsiteDto = object +export interface BindCustomDomainDto { + domain: string +} export interface Pat2TokenDto { /** @@ -142,6 +147,10 @@ export interface UpdateDependencyDto { spec: string } +export interface DeleteDependencyDto { + name: string +} + export interface CreateTriggerDto { desc: string cron: string @@ -162,16 +171,6 @@ export type RegionControllerGetRegionsData = any export type DatabaseControllerProxyData = any -export type WebsitesControllerCreateData = any - -export type WebsitesControllerFindAllData = any - -export type WebsitesControllerFindOneData = any - -export type WebsitesControllerUpdateData = any - -export type WebsitesControllerRemoveData = any - export interface AuthControllerCode2TokenParams { code: string } diff --git a/cli/src/api/v1/website.ts b/cli/src/api/v1/website.ts deleted file mode 100644 index 6125cd2283..0000000000 --- a/cli/src/api/v1/website.ts +++ /dev/null @@ -1,113 +0,0 @@ -import { request, RequestParams } from '../../util/request' -import { - CreateWebsiteDto, - UpdateWebsiteDto, - WebsitesControllerCreateData, - WebsitesControllerFindAllData, - WebsitesControllerFindOneData, - WebsitesControllerRemoveData, - WebsitesControllerUpdateData, -} from './data-contracts' - -/** - * No description - * - * @tags Website - * @name WebsitesControllerCreate - * @summary TODO - ⌛️ - * @request POST:/v1/apps/{appid}/websites - * @secure - */ -export async function websitesControllerCreate( - appid: string, - data: CreateWebsiteDto, - configParams: RequestParams = {}, -): Promise { - return request({ - url: `/v1/apps/${appid}/websites`, - method: 'POST', - data: data, - ...configParams, - }) -} -/** - * No description - * - * @tags Website - * @name WebsitesControllerFindAll - * @summary TODO - ⌛️ - * @request GET:/v1/apps/{appid}/websites - * @secure - */ -export async function websitesControllerFindAll( - appid: string, - configParams: RequestParams = {}, -): Promise { - return request({ - url: `/v1/apps/${appid}/websites`, - method: 'GET', - ...configParams, - }) -} -/** - * No description - * - * @tags Website - * @name WebsitesControllerFindOne - * @summary TODO - ⌛️ - * @request GET:/v1/apps/{appid}/websites/{id} - * @secure - */ -export async function websitesControllerFindOne( - id: string, - appid: string, - configParams: RequestParams = {}, -): Promise { - return request({ - url: `/v1/apps/${appid}/websites/${id}`, - method: 'GET', - ...configParams, - }) -} -/** - * No description - * - * @tags Website - * @name WebsitesControllerUpdate - * @summary TODO - ⌛️ - * @request PATCH:/v1/apps/{appid}/websites/{id} - * @secure - */ -export async function websitesControllerUpdate( - id: string, - appid: string, - data: UpdateWebsiteDto, - configParams: RequestParams = {}, -): Promise { - return request({ - url: `/v1/apps/${appid}/websites/${id}`, - method: 'PATCH', - data: data, - ...configParams, - }) -} -/** - * No description - * - * @tags Website - * @name WebsitesControllerRemove - * @summary TODO - ⌛️ - * @request DELETE:/v1/apps/{appid}/websites/{id} - * @secure - */ -export async function websitesControllerRemove( - id: string, - appid: string, - configParams: RequestParams = {}, -): Promise { - return request({ - url: `/v1/apps/${appid}/websites/${id}`, - method: 'DELETE', - ...configParams, - }) -} diff --git a/cli/src/api/v1/websitehosting.ts b/cli/src/api/v1/websitehosting.ts new file mode 100644 index 0000000000..c63e2ddb0b --- /dev/null +++ b/cli/src/api/v1/websitehosting.ts @@ -0,0 +1,124 @@ +import { request, RequestParams } from '../../util/request' +import { BindCustomDomainDto, CreateWebsiteDto } from './data-contracts' + +/** + * No description + * + * @tags WebsiteHosting + * @name WebsiteControllerCreate + * @summary Create a new website + * @request POST:/v1/apps/{appid}/websites + * @secure + */ +export async function websiteControllerCreate( + appid: string, + data: CreateWebsiteDto, + configParams: RequestParams = {}, +): Promise { + return request({ + url: `/v1/apps/${appid}/websites`, + method: 'POST', + data: data, + ...configParams, + }) +} +/** + * No description + * + * @tags WebsiteHosting + * @name WebsiteControllerFindAll + * @summary Get all websites of an app + * @request GET:/v1/apps/{appid}/websites + * @secure + */ +export async function websiteControllerFindAll(appid: string, configParams: RequestParams = {}): Promise { + return request({ + url: `/v1/apps/${appid}/websites`, + method: 'GET', + ...configParams, + }) +} +/** + * No description + * + * @tags WebsiteHosting + * @name WebsiteControllerFindOne + * @summary Get a website hosting of an app + * @request GET:/v1/apps/{appid}/websites/{id} + * @secure + */ +export async function websiteControllerFindOne( + appid: string, + id: string, + configParams: RequestParams = {}, +): Promise { + return request({ + url: `/v1/apps/${appid}/websites/${id}`, + method: 'GET', + ...configParams, + }) +} +/** + * No description + * + * @tags WebsiteHosting + * @name WebsiteControllerBindDomain + * @summary Bind custom domain to website + * @request PATCH:/v1/apps/{appid}/websites/{id} + * @secure + */ +export async function websiteControllerBindDomain( + appid: string, + id: string, + data: BindCustomDomainDto, + configParams: RequestParams = {}, +): Promise { + return request({ + url: `/v1/apps/${appid}/websites/${id}`, + method: 'PATCH', + data: data, + ...configParams, + }) +} +/** + * No description + * + * @tags WebsiteHosting + * @name WebsiteControllerRemove + * @summary Delete a website hosting + * @request DELETE:/v1/apps/{appid}/websites/{id} + * @secure + */ +export async function websiteControllerRemove( + appid: string, + id: string, + configParams: RequestParams = {}, +): Promise { + return request({ + url: `/v1/apps/${appid}/websites/${id}`, + method: 'DELETE', + ...configParams, + }) +} +/** + * No description + * + * @tags WebsiteHosting + * @name WebsiteControllerCheckResolved + * @summary Check if domain is resolved + * @request POST:/v1/apps/{appid}/websites/{id}/resolved + * @secure + */ +export async function websiteControllerCheckResolved( + appid: string, + id: string, + data: BindCustomDomainDto, + configParams: RequestParams = {}, +): Promise { + return request({ + url: `/v1/apps/${appid}/websites/${id}/resolved`, + method: 'POST', + data: data, + ...configParams, + }) +} diff --git a/cli/src/util/request.ts b/cli/src/util/request.ts index 2e875f045d..d8fe400bf0 100644 --- a/cli/src/util/request.ts +++ b/cli/src/util/request.ts @@ -1,5 +1,5 @@ // request.ts -import axios, { AxiosRequestConfig, AxiosRequestHeaders, AxiosResponse } from 'axios' +import axios, { InternalAxiosRequestConfig, AxiosRequestHeaders, AxiosResponse } from 'axios' import { existSystemConfig, readSystemConfig, refreshToken } from '../config/system' import { DEFAULT_REMOTE_SERVER } from '../common/constant' @@ -11,7 +11,7 @@ export const request = axios.create({ // request interceptor request.interceptors.request.use( - async (config: AxiosRequestConfig) => { + async (config: InternalAxiosRequestConfig) => { let _headers: AxiosRequestHeaders | any = { 'Content-Type': 'application/json', }