feat: implement deploy command with SSH support and context management
This commit is contained in:
18
src/lib/env.ts
Normal file
18
src/lib/env.ts
Normal file
@@ -0,0 +1,18 @@
|
||||
import { z } from "zod";
|
||||
|
||||
const deployEnvSchema = z.object({
|
||||
REMOTE_HOST: z.string().min(1),
|
||||
REMOTE_USER: z.string().min(1),
|
||||
REMOTE_PATH: z.string().min(1),
|
||||
REMOTE_PORT: z.coerce.number().int().positive().default(22),
|
||||
SSH_PRIVATE_KEY: z.string().optional(),
|
||||
CACHE_DIR: z.string().default("/cache/wpop"),
|
||||
WP_VERSION: z.string().default("latest"),
|
||||
WP_LOCALE: z.string().default("fr_CA"),
|
||||
});
|
||||
|
||||
export type DeployEnv = z.infer<typeof deployEnvSchema>;
|
||||
|
||||
export function readDeployEnv(env: NodeJS.ProcessEnv = process.env): DeployEnv {
|
||||
return deployEnvSchema.parse(env);
|
||||
}
|
||||
Reference in New Issue
Block a user