|
@@ -1,156 +0,0 @@
|
|
|
-package cn.seecoder.api;
|
|
|
|
|
-
|
|
|
|
|
-import cn.seecoder.api.docker.DockerApi;
|
|
|
|
|
-import cn.seecoder.api.docker.impl.DockerApiImpl;
|
|
|
|
|
-import cn.seecoder.api.git.GitApi;
|
|
|
|
|
-import cn.seecoder.api.git.impl.GitApiImpl;
|
|
|
|
|
-import cn.seecoder.api.k8s.ConfigMapApi;
|
|
|
|
|
-import cn.seecoder.api.k8s.DeploymentApi;
|
|
|
|
|
-import cn.seecoder.api.k8s.ExecApi;
|
|
|
|
|
-import cn.seecoder.api.k8s.IngressApi;
|
|
|
|
|
-import cn.seecoder.api.k8s.JobApi;
|
|
|
|
|
-import cn.seecoder.api.k8s.K8sApiConfiguration;
|
|
|
|
|
-import cn.seecoder.api.k8s.LimitRangeApi;
|
|
|
|
|
-import cn.seecoder.api.k8s.LogApi;
|
|
|
|
|
-import cn.seecoder.api.k8s.NamespaceApi;
|
|
|
|
|
-import cn.seecoder.api.k8s.PersistentVolumeClaimApi;
|
|
|
|
|
-import cn.seecoder.api.k8s.PodApi;
|
|
|
|
|
-import cn.seecoder.api.k8s.SecretApi;
|
|
|
|
|
-import cn.seecoder.api.k8s.ServiceApi;
|
|
|
|
|
-import cn.seecoder.api.k8s.impl.ConfigMapApiImpl;
|
|
|
|
|
-import cn.seecoder.api.k8s.impl.DeploymentApiImpl;
|
|
|
|
|
-import cn.seecoder.api.k8s.impl.ExecApiImpl;
|
|
|
|
|
-import cn.seecoder.api.k8s.impl.IngressApiImpl;
|
|
|
|
|
-import cn.seecoder.api.k8s.impl.JobApiImpl;
|
|
|
|
|
-import cn.seecoder.api.k8s.impl.LimitRangeApiImpl;
|
|
|
|
|
-import cn.seecoder.api.k8s.impl.LogApiImpl;
|
|
|
|
|
-import cn.seecoder.api.k8s.impl.NamespaceApiImpl;
|
|
|
|
|
-import cn.seecoder.api.k8s.impl.PersistentVolumeClaimImpl;
|
|
|
|
|
-import cn.seecoder.api.k8s.impl.PodApiImpl;
|
|
|
|
|
-import cn.seecoder.api.k8s.impl.SecretApiImpl;
|
|
|
|
|
-import cn.seecoder.api.k8s.impl.ServiceApiImpl;
|
|
|
|
|
-import cn.seecoder.api.k8s.impl.WatchApiImpl;
|
|
|
|
|
-import com.nju.edu.gitlab.SeecoderGitlabApi;
|
|
|
|
|
-import com.nju.edu.gitlab.SeecoderGitlabClient;
|
|
|
|
|
-import com.spotify.docker.client.exceptions.DockerCertificateException;
|
|
|
|
|
-import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
|
|
|
|
|
-import org.springframework.context.annotation.Bean;
|
|
|
|
|
-import org.springframework.context.annotation.Configuration;
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
-/**
|
|
|
|
|
- * @author PuHong Weng
|
|
|
|
|
- * @date 2021/3/5
|
|
|
|
|
- * @description:
|
|
|
|
|
- */
|
|
|
|
|
-@Configuration
|
|
|
|
|
-public class DevcloudApiAutoConfiguration {
|
|
|
|
|
-
|
|
|
|
|
- @Bean
|
|
|
|
|
- public ApplicationProperties applicationProperties() {
|
|
|
|
|
- return new ApplicationProperties();
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Bean
|
|
|
|
|
- @ConditionalOnBean(ApplicationProperties.class)
|
|
|
|
|
- public SeecoderGitlabApi seecoderGitlabApi() {
|
|
|
|
|
- return new SeecoderGitlabClient(applicationProperties().getGitlab().getHost(), applicationProperties().getGitlab().getToken());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Bean
|
|
|
|
|
- @ConditionalOnBean(ApplicationProperties.class)
|
|
|
|
|
- public GitApi gitApi() {
|
|
|
|
|
- return new GitApiImpl(applicationProperties());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Bean
|
|
|
|
|
- @ConditionalOnBean(ApplicationProperties.class)
|
|
|
|
|
- public K8sApiConfiguration k8sApiConfiguration() {
|
|
|
|
|
- return new K8sApiConfiguration(applicationProperties());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Bean
|
|
|
|
|
- @ConditionalOnBean(ApplicationProperties.class)
|
|
|
|
|
- public DockerApi dockerApi() throws DockerCertificateException {
|
|
|
|
|
- return new DockerApiImpl(applicationProperties());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Bean
|
|
|
|
|
- @ConditionalOnBean(K8sApiConfiguration.class)
|
|
|
|
|
- public ConfigMapApi configMapApi() {
|
|
|
|
|
- return new ConfigMapApiImpl(k8sApiConfiguration().coreV1Api());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Bean
|
|
|
|
|
- @ConditionalOnBean(K8sApiConfiguration.class)
|
|
|
|
|
- public DeploymentApi deploymentApi() {
|
|
|
|
|
- return new DeploymentApiImpl(k8sApiConfiguration().appsV1Api());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Bean
|
|
|
|
|
- @ConditionalOnBean(K8sApiConfiguration.class)
|
|
|
|
|
- public JobApi jobApi() {
|
|
|
|
|
- return new JobApiImpl(k8sApiConfiguration().batchV1Api());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Bean
|
|
|
|
|
- @ConditionalOnBean(K8sApiConfiguration.class)
|
|
|
|
|
- public ExecApi execApi() {
|
|
|
|
|
- return new ExecApiImpl(k8sApiConfiguration().exec());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Bean
|
|
|
|
|
- @ConditionalOnBean(K8sApiConfiguration.class)
|
|
|
|
|
- public NamespaceApi namespaceApi() {
|
|
|
|
|
- return new NamespaceApiImpl(k8sApiConfiguration().coreV1Api());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Bean
|
|
|
|
|
- @ConditionalOnBean(K8sApiConfiguration.class)
|
|
|
|
|
- public IngressApi ingressApi() {
|
|
|
|
|
- return new IngressApiImpl(k8sApiConfiguration().extensionsV1beta1Api());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Bean
|
|
|
|
|
- @ConditionalOnBean(K8sApiConfiguration.class)
|
|
|
|
|
- public LogApi logApi() {
|
|
|
|
|
- return new LogApiImpl(k8sApiConfiguration().coreV1Api());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Bean
|
|
|
|
|
- @ConditionalOnBean(K8sApiConfiguration.class)
|
|
|
|
|
- public PersistentVolumeClaimApi persistentVolumeClaimApi() {
|
|
|
|
|
- return new PersistentVolumeClaimImpl(k8sApiConfiguration().coreV1Api());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Bean
|
|
|
|
|
- @ConditionalOnBean(K8sApiConfiguration.class)
|
|
|
|
|
- public PodApi podApi() {
|
|
|
|
|
- return new PodApiImpl(k8sApiConfiguration().coreV1Api());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Bean
|
|
|
|
|
- @ConditionalOnBean(K8sApiConfiguration.class)
|
|
|
|
|
- public LimitRangeApi limitRangeApi() {
|
|
|
|
|
- return new LimitRangeApiImpl(k8sApiConfiguration().coreV1Api());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
- @Bean
|
|
|
|
|
- @ConditionalOnBean(K8sApiConfiguration.class)
|
|
|
|
|
- public SecretApi secretApi() {
|
|
|
|
|
- return new SecretApiImpl(k8sApiConfiguration().coreV1Api());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Bean
|
|
|
|
|
- @ConditionalOnBean(K8sApiConfiguration.class)
|
|
|
|
|
- public ServiceApi serviceApi() {
|
|
|
|
|
- return new ServiceApiImpl(k8sApiConfiguration().coreV1Api());
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- @Bean
|
|
|
|
|
- @ConditionalOnBean(K8sApiConfiguration.class)
|
|
|
|
|
- public WatchApiImpl watchApi() {
|
|
|
|
|
- return new WatchApiImpl(k8sApiConfiguration().watchApiClient(), k8sApiConfiguration().watchAppsV1Api());
|
|
|
|
|
- }
|
|
|
|
|
-}
|
|
|