eploy2
Version:
Easy deployment for any programming languages and also transfer the files to a server instantly with a single command
50 lines (41 loc) • 1.01 kB
text/typescript
import ws from 'ws'
export interface AppsConfig {
name: string,
main?: string
}
export interface TransferConfig {
host: string,
user : string,
source_path : string,
destination_path : string,
pre_transfer_script? : string
}
export interface CompleteTransferConfig {
staging? : TransferConfig,
production? : TransferConfig
}
export interface CloudConfig {
host: string,
repo: string,
ref: string,
application_path: string,
pre_launch_script?: string
}
export interface CompleteCloudConfig {
staging? : CloudConfig,
production? : CloudConfig
}
export interface EployConfig {
apps: Array<AppsConfig>
cloud_config: CompleteCloudConfig,
transfer_config? : CompleteTransferConfig
}
export interface ServerMessage {
type: 'deploy' | 'transfer',
config: EployConfig,
configType? : 'staging' | 'production'
}
export type ExtWebSocket = ws & {
isAlive: boolean
}
export type OSDetails = 'mac' | 'ubuntu-linux' | false