Commit c19c8bf1 authored by liaozan's avatar liaozan 🏀

update

parent 6af6ef44
package com.schbrain.archetype.initializer.config;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.cloud.CloudPlatform;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.env.Environment;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.UrlBasedCorsConfigurationSource;
import org.springframework.web.filter.CorsFilter;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
/**
......@@ -14,20 +14,19 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
@Configuration(proxyBeanMethods = false)
public class WebConfiguration implements WebMvcConfigurer {
@Autowired
private Environment environment;
@Bean
public CorsFilter corsFilter() {
CorsConfiguration corsConfiguration = new CorsConfiguration();
corsConfiguration.setAllowCredentials(true);
corsConfiguration.addAllowedOriginPattern("*");
corsConfiguration.addAllowedHeader("*");
corsConfiguration.addExposedHeader("*");
corsConfiguration.addAllowedMethod("*");
@Override
public void addCorsMappings(CorsRegistry registry) {
if (CloudPlatform.KUBERNETES.isActive(environment)) {
return;
}
registry.addMapping("/**")
.allowedOrigins("*")
.allowedMethods("*")
.allowedHeaders("*")
.exposedHeaders("*")
.maxAge(3600);
UrlBasedCorsConfigurationSource configurationSource = new UrlBasedCorsConfigurationSource();
configurationSource.registerCorsConfiguration("/**", corsConfiguration);
return new CorsFilter(configurationSource);
}
}
\ No newline at end of file
package com.schbrain.archetype.initializer.config.properties;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
/**
* @author liaozan
* @since 2022/5/11
*/
@Data
@ConfigurationProperties(prefix = "archetype")
public class ArchetypeProperties {
private String sourceUrl;
}
\ No newline at end of file
......@@ -2,14 +2,17 @@ package com.schbrain.archetype.initializer.runner;
import cn.hutool.core.io.FileUtil;
import cn.hutool.system.SystemUtil;
import com.schbrain.archetype.initializer.config.properties.ArchetypeProperties;
import com.schbrain.archetype.initializer.maven.MavenUtils;
import com.schbrain.common.exception.BaseException;
import lombok.extern.slf4j.Slf4j;
import org.eclipse.jgit.api.Git;
import org.eclipse.jgit.api.errors.GitAPIException;
import org.eclipse.jgit.transport.TagOpt;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.stereotype.Component;
import java.io.File;
......@@ -20,9 +23,11 @@ import java.io.File;
*/
@Slf4j
@Component
@EnableConfigurationProperties(ArchetypeProperties.class)
public class ArchetypePreparer implements ApplicationRunner {
private static final String ARCHETYPE_REPO_URL = "http://gitlab.schbrain.com/gitlab/tools/schbrain-archetype.git";
@Autowired
private ArchetypeProperties archetypeProperties;
@Override
public void run(ApplicationArguments args) {
......@@ -47,9 +52,9 @@ public class ArchetypePreparer implements ApplicationRunner {
.setTagOption(TagOpt.FETCH_TAGS)
.setNoCheckout(false)
.setDirectory(archetypeTemplateDirectory)
.setURI(ARCHETYPE_REPO_URL)
.setURI(archetypeProperties.getSourceUrl())
.call()) {
log.info("Success checkout archetype source from {}", ARCHETYPE_REPO_URL);
log.info("Success checkout archetype source from {}", archetypeProperties.getSourceUrl());
} catch (GitAPIException e) {
throw new BaseException("Failed to checkout archetype source from git repository", e);
}
......
......@@ -3,13 +3,11 @@ package com.schbrain.archetype.initializer.service;
import cn.hutool.cache.impl.TimedCache;
import cn.hutool.core.util.ArrayUtil;
import cn.hutool.core.util.ZipUtil;
import com.schbrain.archetype.initializer.config.properties.GitProperties;
import com.schbrain.archetype.initializer.maven.MavenUtils;
import com.schbrain.archetype.initializer.param.ArchetypeGenerateParam;
import com.schbrain.archetype.initializer.response.PreviewFileTree;
import com.schbrain.archetype.initializer.runner.ArchetypePreparer;
import com.schbrain.common.util.ServletUtils;
import org.gitlab4j.api.GitLabApi;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.ContentDisposition;
import org.springframework.http.HttpHeaders;
......@@ -40,10 +38,6 @@ public class ArchetypeService {
@Autowired
private ArchetypePreparer archetypePreparer;
@Autowired
private GitLabApi gitLabApi;
@Autowired
private GitProperties gitProperties;
public String generate(ArchetypeGenerateParam param) {
String generateId = MavenUtils.generate(param);
......
......@@ -6,4 +6,6 @@ spring:
add-mappings: true
gitlab:
server-url: http://gitlab.schbrain.com/gitlab
personal-access-token: AzRH1rZ2HysUkHeycsaU
\ No newline at end of file
personal-access-token: AzRH1rZ2HysUkHeycsaU
archetype:
source-url: http://gitlab.schbrain.com/gitlab/tools/schbrain-archetype.git
\ No newline at end of file
......@@ -6,16 +6,16 @@
"build": "vite build --mode production"
},
"dependencies": {
"vue": "^3.2.33",
"vue": "^3.2.37",
"axios": "^0.27.2",
"ant-design-vue": "^3.2.2",
"highlight.js": "^11.5.1",
"ant-design-vue": "^3.2.10",
"highlight.js": "^11.6.0",
"@highlightjs/vue-plugin": "^2.1.0"
},
"devDependencies": {
"@vitejs/plugin-vue": "^2.3.1",
"typescript": "^4.6.4",
"vite": "^2.9.7",
"vue-tsc": "^0.34.11"
"@vitejs/plugin-vue": "^3.0.1",
"typescript": "^4.7.4",
"vite": "^3.0.4",
"vue-tsc": "^0.39.4"
}
}
\ No newline at end of file
......@@ -20,7 +20,7 @@
<artifactId>frontend-maven-plugin</artifactId>
<version>${frontend-maven-plugin.version}</version>
<configuration>
<nodeVersion>v17.9.0</nodeVersion>
<nodeVersion>v18.7.0</nodeVersion>
<nodeDownloadRoot>https://mirrors.tuna.tsinghua.edu.cn/nodejs-release/</nodeDownloadRoot>
</configuration>
<executions>
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment