# gradle-deploy-plugin **Repository Path**: jiangyun/gradle-deploy-plugin ## Basic Information - **Project Name**: gradle-deploy-plugin - **Description**: gradle ssh插件 - **Primary Language**: Kotlin - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-05-16 - **Last Updated**: 2024-09-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

Gradle Kotlin Freemaker

# Gradle部署插件 ## 介绍 支持远程服务器java应用部署、本地docker应用部署、k8s部署插件 ## 软件架构 1. kotlin; 2. jsch; 3. gradle; ## 发布插件 ```bash ./gradlew publishPlugins # 如果已经安装gradle7+ gradle publishPlugins ``` ## 使用 #### groovy Using the plugins DSL: ```groovy plugins { id("io.github.jyrmc.deploy") version "0.0.6" } ``` Using legacy plugin application: ```groovy buildscript { repositories { maven { url = uri("https://plugins.gradle.org/m2/") } } dependencies { classpath("io.github.jyrmc.deploy:gradle-deploy-plugin:0.0.6") } } ``` #### kotlin Using the plugins DSL: ```groovy plugins { id("io.github.jyrmc.deploy") version "0.0.6" } ``` Using legacy plugin application: ```groovy buildscript { repositories { maven { url = uri("https://plugins.gradle.org/m2/") } } dependencies { classpath("io.github.jyrmc.deploy:gradle-deploy-plugin:0.0.6") } } apply(plugin = "io.github.jyrmc.deploy") configure { val tmpImageName = if (EnvProperties.use_code_encryption) { // Default: false DockerEnvProperties.image_virbox_prex + "-" + project.name } else { project.name } host.set(Kubernetes.HOST) port.set(Kubernetes.PORT) username.set(Kubernetes.USERNAME) password.set(Kubernetes.PASSWORD) commandLine.set("") // imagePrefix.set(DockerEnvProperties.image_prefix) // 部署本地docker使用的镜像前缀,原因:k8s使用的镜像前缀为域名,无法与现有的docker镜像前缀混合使用 imagePrefix.set(Kubernetes.DEPOLOY_IMAGE_PREFIX) // 部署k8s使用的镜像前缀 imageName.set(tmpImageName) if (DockerEnvProperties.allow_build_version_with_time) { imageVersion.set("${project.version}-${jenkinsBuildTime}") } else { imageVersion.set("${project.version}") } deploymentName.set("${Kubernetes.DEPLOYMENT_RELEASE_NAME}-${project.name}") namespace.set(Kubernetes.NAMESPACE) dependsTaskName.set("buildRelease") } configure { host.set(TestEnvDeployArgs.HOST) port.set(TestEnvDeployArgs.PORT) username.set(TestEnvDeployArgs.USERNAME) password.set(TestEnvDeployArgs.PASSWORD) localJarPath.set("${projectDir}/build/libs/${project.name}-${project.version}.jar") deployPath.set("/home/resole/${project.name}") dependsTaskName.set("bootJar") args.set( listOf( "java.security.egd=file:/dev/./urandom", "spring.profiles.active=dev" ) ) } ```