diff --git a/kubernetes-aws.yaml b/kubernetes-aws.yaml index 455befb..d6665c9 100644 --- a/kubernetes-aws.yaml +++ b/kubernetes-aws.yaml @@ -156,7 +156,7 @@ apiVersion: v1 kind: Service metadata: name: mariadb-svc - namespace: etri + namespace: etri-aisw spec: selector: app: mariadb @@ -170,7 +170,7 @@ apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: autoflow-server-ingress - namespace: etri + namespace: etri-aisw annotations: alb.ingress.kubernetes.io/scheme: internet-facing alb.ingress.kubernetes.io/target-type: ip diff --git a/mariadb-init-configmap.yaml b/mariadb-init-configmap.yaml index b81c5ca..c637324 100644 --- a/mariadb-init-configmap.yaml +++ b/mariadb-init-configmap.yaml @@ -5,126 +5,83 @@ metadata: namespace: etri-aisw data: init.sql: | - create table batch_job_execution_seq - ( - next_not_cached_value bigint(21) not null, - minimum_value bigint(21) not null, - maximum_value bigint(21) not null, - start_value bigint(21) not null comment 'start value when sequences is created or value if RESTART is used', - increment bigint(21) not null comment 'increment value', - cache_size bigint(21) unsigned not null, - cycle_option tinyint(1) unsigned not null comment '0 if no cycles are allowed, 1 if the sequence should begin a new cycle when maximum_value is passed', - cycle_count bigint(21) not null comment 'How many cycles have been done' - ); - - create table batch_job_instance - ( - JOB_INSTANCE_ID bigint not null - primary key, - VERSION bigint null, - JOB_NAME varchar(100) not null, - JOB_KEY varchar(32) not null, - constraint JOB_INST_UN - unique (JOB_NAME, JOB_KEY) - ); + CREATE TABLE BATCH_JOB_INSTANCE ( + JOB_INSTANCE_ID BIGINT NOT NULL PRIMARY KEY, + VERSION BIGINT, + JOB_NAME VARCHAR(100) NOT NULL, + JOB_KEY VARCHAR(32) NOT NULL, + constraint JOB_INST_UN unique (JOB_NAME, JOB_KEY) + ) ENGINE=InnoDB; - create table batch_job_execution - ( - JOB_EXECUTION_ID bigint not null - primary key, - VERSION bigint null, - JOB_INSTANCE_ID bigint not null, - CREATE_TIME datetime(6) not null, - START_TIME datetime(6) null, - END_TIME datetime(6) null, - STATUS varchar(10) null, - EXIT_CODE varchar(2500) null, - EXIT_MESSAGE varchar(2500) null, - LAST_UPDATED datetime(6) null, - constraint JOB_INST_EXEC_FK - foreign key (JOB_INSTANCE_ID) references batch_job_instance (JOB_INSTANCE_ID) - ); + CREATE TABLE BATCH_JOB_EXECUTION ( + JOB_EXECUTION_ID BIGINT NOT NULL PRIMARY KEY, + VERSION BIGINT, + JOB_INSTANCE_ID BIGINT NOT NULL, + CREATE_TIME DATETIME(6) NOT NULL, + START_TIME DATETIME(6) DEFAULT NULL, + END_TIME DATETIME(6) DEFAULT NULL, + STATUS VARCHAR(10), + EXIT_CODE VARCHAR(2500), + EXIT_MESSAGE VARCHAR(2500), + LAST_UPDATED DATETIME(6), + constraint JOB_INST_EXEC_FK foreign key (JOB_INSTANCE_ID) + references BATCH_JOB_INSTANCE(JOB_INSTANCE_ID) + ) ENGINE=InnoDB; - create table batch_job_execution_context - ( - JOB_EXECUTION_ID bigint not null - primary key, - SHORT_CONTEXT varchar(2500) not null, - SERIALIZED_CONTEXT text null, - constraint JOB_EXEC_CTX_FK - foreign key (JOB_EXECUTION_ID) references batch_job_execution (JOB_EXECUTION_ID) - ); + CREATE TABLE BATCH_JOB_EXECUTION_PARAMS ( + JOB_EXECUTION_ID BIGINT NOT NULL, + PARAMETER_NAME VARCHAR(100) NOT NULL, + PARAMETER_TYPE VARCHAR(100) NOT NULL, + PARAMETER_VALUE VARCHAR(2500), + IDENTIFYING CHAR(1) NOT NULL, + constraint JOB_EXEC_PARAMS_FK foreign key (JOB_EXECUTION_ID) + references BATCH_JOB_EXECUTION(JOB_EXECUTION_ID) + ) ENGINE=InnoDB; - create table batch_job_execution_params - ( - JOB_EXECUTION_ID bigint not null, - PARAMETER_NAME varchar(100) not null, - PARAMETER_TYPE varchar(100) not null, - PARAMETER_VALUE varchar(2500) null, - IDENTIFYING char not null, - constraint JOB_EXEC_PARAMS_FK - foreign key (JOB_EXECUTION_ID) references batch_job_execution (JOB_EXECUTION_ID) - ); + CREATE TABLE BATCH_STEP_EXECUTION ( + STEP_EXECUTION_ID BIGINT NOT NULL PRIMARY KEY, + VERSION BIGINT NOT NULL, + STEP_NAME VARCHAR(100) NOT NULL, + JOB_EXECUTION_ID BIGINT NOT NULL, + CREATE_TIME DATETIME(6) NOT NULL, + START_TIME DATETIME(6) DEFAULT NULL, + END_TIME DATETIME(6) DEFAULT NULL, + STATUS VARCHAR(10), + COMMIT_COUNT BIGINT, + READ_COUNT BIGINT, + FILTER_COUNT BIGINT, + WRITE_COUNT BIGINT, + READ_SKIP_COUNT BIGINT, + WRITE_SKIP_COUNT BIGINT, + PROCESS_SKIP_COUNT BIGINT, + ROLLBACK_COUNT BIGINT, + EXIT_CODE VARCHAR(2500), + EXIT_MESSAGE VARCHAR(2500), + LAST_UPDATED DATETIME(6), + constraint JOB_EXEC_STEP_FK foreign key (JOB_EXECUTION_ID) + references BATCH_JOB_EXECUTION(JOB_EXECUTION_ID) + ) ENGINE=InnoDB; - create table batch_job_seq - ( - next_not_cached_value bigint(21) not null, - minimum_value bigint(21) not null, - maximum_value bigint(21) not null, - start_value bigint(21) not null comment 'start value when sequences is created or value if RESTART is used', - increment bigint(21) not null comment 'increment value', - cache_size bigint(21) unsigned not null, - cycle_option tinyint(1) unsigned not null comment '0 if no cycles are allowed, 1 if the sequence should begin a new cycle when maximum_value is passed', - cycle_count bigint(21) not null comment 'How many cycles have been done' - ); + CREATE TABLE BATCH_STEP_EXECUTION_CONTEXT ( + STEP_EXECUTION_ID BIGINT NOT NULL PRIMARY KEY, + SHORT_CONTEXT VARCHAR(2500) NOT NULL, + SERIALIZED_CONTEXT TEXT, + constraint STEP_EXEC_CTX_FK foreign key (STEP_EXECUTION_ID) + references BATCH_STEP_EXECUTION(STEP_EXECUTION_ID) + ) ENGINE=InnoDB; - create table batch_step_execution - ( - STEP_EXECUTION_ID bigint not null - primary key, - VERSION bigint not null, - STEP_NAME varchar(100) not null, - JOB_EXECUTION_ID bigint not null, - CREATE_TIME datetime(6) not null, - START_TIME datetime(6) null, - END_TIME datetime(6) null, - STATUS varchar(10) null, - COMMIT_COUNT bigint null, - READ_COUNT bigint null, - FILTER_COUNT bigint null, - WRITE_COUNT bigint null, - READ_SKIP_COUNT bigint null, - WRITE_SKIP_COUNT bigint null, - PROCESS_SKIP_COUNT bigint null, - ROLLBACK_COUNT bigint null, - EXIT_CODE varchar(2500) null, - EXIT_MESSAGE varchar(2500) null, - LAST_UPDATED datetime(6) null, - constraint JOB_EXEC_STEP_FK - foreign key (JOB_EXECUTION_ID) references batch_job_execution (JOB_EXECUTION_ID) - ); + CREATE TABLE BATCH_JOB_EXECUTION_CONTEXT ( + JOB_EXECUTION_ID BIGINT NOT NULL PRIMARY KEY, + SHORT_CONTEXT VARCHAR(2500) NOT NULL, + SERIALIZED_CONTEXT TEXT, + constraint JOB_EXEC_CTX_FK foreign key (JOB_EXECUTION_ID) + references BATCH_JOB_EXECUTION(JOB_EXECUTION_ID) + ) ENGINE=InnoDB; - create table batch_step_execution_context - ( - STEP_EXECUTION_ID bigint not null - primary key, - SHORT_CONTEXT varchar(2500) not null, - SERIALIZED_CONTEXT text null, - constraint STEP_EXEC_CTX_FK - foreign key (STEP_EXECUTION_ID) references batch_step_execution (STEP_EXECUTION_ID) - ); + CREATE SEQUENCE BATCH_STEP_EXECUTION_SEQ START WITH 1 MINVALUE 1 MAXVALUE 9223372036854775806 INCREMENT BY 1 NOCACHE NOCYCLE ENGINE=InnoDB; + CREATE SEQUENCE BATCH_JOB_EXECUTION_SEQ START WITH 1 MINVALUE 1 MAXVALUE 9223372036854775806 INCREMENT BY 1 NOCACHE NOCYCLE ENGINE=InnoDB; + CREATE SEQUENCE BATCH_JOB_INSTANCE_SEQ START WITH 1 MINVALUE 1 MAXVALUE 9223372036854775806 INCREMENT BY 1 NOCACHE NOCYCLE ENGINE=InnoDB; - create table batch_step_execution_seq - ( - next_not_cached_value bigint(21) not null, - minimum_value bigint(21) not null, - maximum_value bigint(21) not null, - start_value bigint(21) not null comment 'start value when sequences is created or value if RESTART is used', - increment bigint(21) not null comment 'increment value', - cache_size bigint(21) unsigned not null, - cycle_option tinyint(1) unsigned not null comment '0 if no cycles are allowed, 1 if the sequence should begin a new cycle when maximum_value is passed', - cycle_count bigint(21) not null comment 'How many cycles have been done' - ); create table tb_datagroup ( diff --git a/schema-mariadb.sql b/schema-mariadb.sql new file mode 100644 index 0000000..d5e0bf2 --- /dev/null +++ b/schema-mariadb.sql @@ -0,0 +1,76 @@ +CREATE TABLE BATCH_JOB_INSTANCE ( + JOB_INSTANCE_ID BIGINT NOT NULL PRIMARY KEY, + VERSION BIGINT, + JOB_NAME VARCHAR(100) NOT NULL, + JOB_KEY VARCHAR(32) NOT NULL, + constraint JOB_INST_UN unique (JOB_NAME, JOB_KEY) +) ENGINE=InnoDB; + +CREATE TABLE BATCH_JOB_EXECUTION ( + JOB_EXECUTION_ID BIGINT NOT NULL PRIMARY KEY, + VERSION BIGINT, + JOB_INSTANCE_ID BIGINT NOT NULL, + CREATE_TIME DATETIME(6) NOT NULL, + START_TIME DATETIME(6) DEFAULT NULL, + END_TIME DATETIME(6) DEFAULT NULL, + STATUS VARCHAR(10), + EXIT_CODE VARCHAR(2500), + EXIT_MESSAGE VARCHAR(2500), + LAST_UPDATED DATETIME(6), + constraint JOB_INST_EXEC_FK foreign key (JOB_INSTANCE_ID) + references BATCH_JOB_INSTANCE(JOB_INSTANCE_ID) +) ENGINE=InnoDB; + +CREATE TABLE BATCH_JOB_EXECUTION_PARAMS ( + JOB_EXECUTION_ID BIGINT NOT NULL, + PARAMETER_NAME VARCHAR(100) NOT NULL, + PARAMETER_TYPE VARCHAR(100) NOT NULL, + PARAMETER_VALUE VARCHAR(2500), + IDENTIFYING CHAR(1) NOT NULL, + constraint JOB_EXEC_PARAMS_FK foreign key (JOB_EXECUTION_ID) + references BATCH_JOB_EXECUTION(JOB_EXECUTION_ID) +) ENGINE=InnoDB; + +CREATE TABLE BATCH_STEP_EXECUTION ( + STEP_EXECUTION_ID BIGINT NOT NULL PRIMARY KEY, + VERSION BIGINT NOT NULL, + STEP_NAME VARCHAR(100) NOT NULL, + JOB_EXECUTION_ID BIGINT NOT NULL, + CREATE_TIME DATETIME(6) NOT NULL, + START_TIME DATETIME(6) DEFAULT NULL, + END_TIME DATETIME(6) DEFAULT NULL, + STATUS VARCHAR(10), + COMMIT_COUNT BIGINT, + READ_COUNT BIGINT, + FILTER_COUNT BIGINT, + WRITE_COUNT BIGINT, + READ_SKIP_COUNT BIGINT, + WRITE_SKIP_COUNT BIGINT, + PROCESS_SKIP_COUNT BIGINT, + ROLLBACK_COUNT BIGINT, + EXIT_CODE VARCHAR(2500), + EXIT_MESSAGE VARCHAR(2500), + LAST_UPDATED DATETIME(6), + constraint JOB_EXEC_STEP_FK foreign key (JOB_EXECUTION_ID) + references BATCH_JOB_EXECUTION(JOB_EXECUTION_ID) +) ENGINE=InnoDB; + +CREATE TABLE BATCH_STEP_EXECUTION_CONTEXT ( + STEP_EXECUTION_ID BIGINT NOT NULL PRIMARY KEY, + SHORT_CONTEXT VARCHAR(2500) NOT NULL, + SERIALIZED_CONTEXT TEXT, + constraint STEP_EXEC_CTX_FK foreign key (STEP_EXECUTION_ID) + references BATCH_STEP_EXECUTION(STEP_EXECUTION_ID) +) ENGINE=InnoDB; + +CREATE TABLE BATCH_JOB_EXECUTION_CONTEXT ( + JOB_EXECUTION_ID BIGINT NOT NULL PRIMARY KEY, + SHORT_CONTEXT VARCHAR(2500) NOT NULL, + SERIALIZED_CONTEXT TEXT, + constraint JOB_EXEC_CTX_FK foreign key (JOB_EXECUTION_ID) + references BATCH_JOB_EXECUTION(JOB_EXECUTION_ID) +) ENGINE=InnoDB; + +CREATE SEQUENCE BATCH_STEP_EXECUTION_SEQ START WITH 1 MINVALUE 1 MAXVALUE 9223372036854775806 INCREMENT BY 1 NOCACHE NOCYCLE ENGINE=InnoDB; +CREATE SEQUENCE BATCH_JOB_EXECUTION_SEQ START WITH 1 MINVALUE 1 MAXVALUE 9223372036854775806 INCREMENT BY 1 NOCACHE NOCYCLE ENGINE=InnoDB; +CREATE SEQUENCE BATCH_JOB_INSTANCE_SEQ START WITH 1 MINVALUE 1 MAXVALUE 9223372036854775806 INCREMENT BY 1 NOCACHE NOCYCLE ENGINE=InnoDB; \ No newline at end of file diff --git a/src/main/java/kr/re/etri/autoflow/common/AwsConfig.java b/src/main/java/kr/re/etri/autoflow/common/AwsConfig.java index 13c5e56..59d2a26 100644 --- a/src/main/java/kr/re/etri/autoflow/common/AwsConfig.java +++ b/src/main/java/kr/re/etri/autoflow/common/AwsConfig.java @@ -7,29 +7,41 @@ import software.amazon.awssdk.auth.credentials.AwsBasicCredentials; import software.amazon.awssdk.auth.credentials.StaticCredentialsProvider; import software.amazon.awssdk.regions.Region; import software.amazon.awssdk.services.s3.S3Client; +import software.amazon.awssdk.services.s3.S3ClientBuilder; -import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; +import java.net.URI; @Configuration -@ConditionalOnProperty(name = "storage.provider", havingValue = "s3") public class AwsConfig { - @Value("${cloud.aws.credentials.access-key}") + @Value("${storage.provider:s3}") + private String storageProvider; + + @Value("${cloud.aws.credentials.access-key:minio}") private String accessKey; - @Value("${cloud.aws.credentials.secret-key}") + @Value("${cloud.aws.credentials.secret-key:minio123}") private String secretKey; - @Value("${cloud.aws.region.static}") + @Value("${cloud.aws.region.static:ap-northeast-2}") private String region; + @Value("${minio.endpoint:http://localhost:9000}") + private String minioEndpoint; + @Bean public S3Client s3Client() { AwsBasicCredentials credentials = AwsBasicCredentials.create(accessKey, secretKey); - return S3Client.builder() + S3ClientBuilder builder = S3Client.builder() .region(Region.of(region)) - .credentialsProvider(StaticCredentialsProvider.create(credentials)) - .build(); + .credentialsProvider(StaticCredentialsProvider.create(credentials)); + + if ("minio".equalsIgnoreCase(storageProvider)) { + builder.endpointOverride(URI.create(minioEndpoint)) + .forcePathStyle(true); + } + + return builder.build(); } } diff --git a/src/main/resources/application-local.properties b/src/main/resources/application-local.properties index 714063e..944258c 100644 --- a/src/main/resources/application-local.properties +++ b/src/main/resources/application-local.properties @@ -5,13 +5,13 @@ springdoc.swagger-ui.doc-expansion=none springdoc.swagger-ui.disable-swagger-default-url=true # Local MariaDB -spring.datasource.url=jdbc:mariadb://localhost:3306/autoflow -spring.datasource.username=cuuva -spring.datasource.password=cuuva +spring.datasource.url=jdbc:mariadb://${RDS_HOSTNAME:localhost}:3306/autoflow +spring.datasource.username=${RDS_USERNAME:cuuva} +spring.datasource.password=${RDS_PASSWORD:cuuva} # Local MinIO storage.provider=minio -minio.endpoint=http://localhost:9000 +minio.endpoint=${MINIO_ENDPOINT:http://localhost:9000} minio.access-key=minio minio.secret-key=minio123 minio.bucket=mlpipeline diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index 13eee16..f7f8117 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -1,93 +1,93 @@ -#????? ?? ?? -server.port = 8080 - -spring.profiles.active=local - -spring.datasource.url=jdbc:mariadb://192.168.10.143:3306/autoflow -spring.datasource.driver-class-name=org.mariadb.jdbc.Driver -spring.datasource.username=cuuva -spring.datasource.password=cuuva - -spring.jpa.database-platform=org.hibernate.dialect.MariaDBDialect - -spring.jpa.defer-datasource-initialization=true - -#spring.batch.jdbc.schema=classpath:org/springframework/batch/core/schema-mariadb.sql -#spring.batch.jdbc.initialize-schema=always - -# App Properties -cuuva.app.jwtCookieName=cuuva-jwt -cuuva.app.jwtRefreshCookieName=cuuva-jwt-refresh -cuuva.app.jwtSecret= 275511b31c520562d69802ce4a913773102563891563a24062f44b3f312ca2bd034440e81836d1b4ccf4195f43db4c81a4e489a41f1ae0967afe468c9a361f4d - -## For test -cuuva.app.jwtExpirationMs= 900000 -cuuva.app.jwtRefreshExpirationMs= 8640000 - -spring.jpa.show-sql=true - -spring.jpa.properties.hibernate.format_sql=true - -logging.level.org.hibernate.type.descriptor.sql=TRACE - -logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE - -spring.datasource.hikari.connection-timeout=30000 -spring.datasource.hikari.idle-timeout=60000 -spring.datasource.hikari.max-lifetime=1800000 - -springdoc.api-docs.enabled=true -springdoc.api-docs.path=/v3/api-docs - -springdoc.swagger-ui.path=/swagger-ui -springdoc.swagger-ui.config-url=/autoflow-server-mgmt/v3/api-docs/swagger-config -springdoc.swagger-ui.url=/autoflow-server-mgmt/v3/api-docs -springdoc.swagger-ui.doc-expansion=none -springdoc.swagger-ui.disable-swagger-default-url=true - -spring.servlet.multipart.max-file-size=500MB -spring.servlet.multipart.max-request-size=500MB - -springdoc.swagger-ui.tags-sorter=alpha - -# Storage Provider (minio, s3, or filesystem) -storage.provider=minio - -# Local FileSystem ?? -storage.local.base-path=/app/storage -storage.local.default-bucket=mlpipeline - -# MinIO ?? -minio.endpoint=http://192.168.10.135:31795 -minio.access-key=minio -minio.secret-key=minio123 -minio.bucket=mlpipeline - -# Kubeflow -kubeflow.url=http://192.168.10.135:32473/ - -# MLflow -mlflow.url=http://192.168.10.135:30128/ -mlflow.user=user -mlflow.password=WjWjIi13KEkO - -server.servlet.encoding.charset=UTF-8 -server.servlet.encoding.enabled=true -server.servlet.encoding.force=true - -spring.servlet.multipart.enabled=true - -#OTA?? -external.auth.signin-url=https://a659120d3e2ff43ff94087b29396fd96-1057696791.ap-northeast-2.elb.amazonaws.com/api/datamanager/user/signin -external.auth.edge-search-url=https://a659120d3e2ff43ff94087b29396fd96-1057696791.ap-northeast-2.elb.amazonaws.com/api/datamanager/edge-pkg/search -external.auth.sw-search-url=https://a659120d3e2ff43ff94087b29396fd96-1057696791.ap-northeast-2.elb.amazonaws.com/api/datamanager/advehicle-pkg/search - -cloud.aws.region.static=ap-northeast-2 -cloud.aws.credentials.access-key=AKIA2UC3EPERDDR4UOWN -cloud.aws.credentials.secret-key=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 -cloud.aws.s3.bucket=mlpipeline - -# Spring Actuator Configuration -management.endpoints.web.exposure.include=health -management.endpoint.health.show-details=always -management.health.defaults.enabled=true \ No newline at end of file +#????? ?? ?? +server.port = 8080 + +spring.profiles.active=local + +spring.datasource.url=jdbc:mariadb://192.168.10.143:3306/autoflow +spring.datasource.driver-class-name=org.mariadb.jdbc.Driver +spring.datasource.username=cuuva +spring.datasource.password=cuuva + +spring.jpa.database-platform=org.hibernate.dialect.MariaDBDialect + +spring.jpa.defer-datasource-initialization=true + +#spring.batch.jdbc.schema=classpath:org/springframework/batch/core/schema-mariadb.sql +#spring.batch.jdbc.initialize-schema=always + +# App Properties +cuuva.app.jwtCookieName=cuuva-jwt +cuuva.app.jwtRefreshCookieName=cuuva-jwt-refresh +cuuva.app.jwtSecret= 275511b31c520562d69802ce4a913773102563891563a24062f44b3f312ca2bd034440e81836d1b4ccf4195f43db4c81a4e489a41f1ae0967afe468c9a361f4d + +## For test +cuuva.app.jwtExpirationMs= 900000 +cuuva.app.jwtRefreshExpirationMs= 8640000 + +spring.jpa.show-sql=true + +spring.jpa.properties.hibernate.format_sql=true + +logging.level.org.hibernate.type.descriptor.sql=TRACE + +logging.level.org.hibernate.type.descriptor.sql.BasicBinder=TRACE + +spring.datasource.hikari.connection-timeout=30000 +spring.datasource.hikari.idle-timeout=60000 +spring.datasource.hikari.max-lifetime=1800000 + +springdoc.api-docs.enabled=true +springdoc.api-docs.path=/v3/api-docs + +springdoc.swagger-ui.path=/swagger-ui +springdoc.swagger-ui.config-url=/autoflow-server-mgmt/v3/api-docs/swagger-config +springdoc.swagger-ui.url=/autoflow-server-mgmt/v3/api-docs +springdoc.swagger-ui.doc-expansion=none +springdoc.swagger-ui.disable-swagger-default-url=true + +spring.servlet.multipart.max-file-size=500MB +spring.servlet.multipart.max-request-size=500MB + +springdoc.swagger-ui.tags-sorter=alpha + +# Storage Provider (minio, s3, or filesystem) +storage.provider=minio + +# Local FileSystem ?? +storage.local.base-path=/app/storage +storage.local.default-bucket=mlpipeline + +# MinIO ?? +minio.endpoint=http://192.168.10.135:31795 +minio.access-key=minio +minio.secret-key=minio123 +minio.bucket=mlpipeline + +# Kubeflow +kubeflow.url=http://192.168.10.135:32473/ + +# MLflow +mlflow.url=http://192.168.10.135:30128/ +mlflow.user=user +mlflow.password=WjWjIi13KEkO + +server.servlet.encoding.charset=UTF-8 +server.servlet.encoding.enabled=true +server.servlet.encoding.force=true + +spring.servlet.multipart.enabled=true + +#OTA?? +external.auth.signin-url=https://a659120d3e2ff43ff94087b29396fd96-1057696791.ap-northeast-2.elb.amazonaws.com/api/datamanager/user/signin +external.auth.edge-search-url=https://a659120d3e2ff43ff94087b29396fd96-1057696791.ap-northeast-2.elb.amazonaws.com/api/datamanager/edge-pkg/search +external.auth.sw-search-url=https://a659120d3e2ff43ff94087b29396fd96-1057696791.ap-northeast-2.elb.amazonaws.com/api/datamanager/advehicle-pkg/search + +cloud.aws.region.static=ap-northeast-2 +cloud.aws.credentials.access-key=AKIA2UC3EPERDDR4UOWN +cloud.aws.credentials.secret-key=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 +cloud.aws.s3.bucket=mlpipeline + +# Spring Actuator Configuration +management.endpoints.web.exposure.include=health +management.endpoint.health.show-details=always +management.health.defaults.enabled=true diff --git a/src/main/resources/data.sql b/src/main/resources/data.sql index 4b7f74b..6eae1d8 100644 --- a/src/main/resources/data.sql +++ b/src/main/resources/data.sql @@ -1,26 +1,47 @@ -- tb_project -INSERT INTO `tb_project` VALUES -('2025-09-22','2025-09-22',1,'2025-09-22 14:28:51.507010','2025-09-22 14:28:51.507010','N','cuuva,admin','cuuva,admin','PRJ1758518911644','배터리 학습입니다.','AI 배터리 학습','cuuva,admin','cuuva,admin'); +--INSERT INTO `tb_project` VALUES +--('2025-09-22','2025-09-22',1,'2025-09-22 14:28:51.507010','2025-09-22 14:28:51.507010','N','cuuva,admin','cuuva,admin','PRJ1758518911644','배터리 학습입니다.','AI 배터리 학습','cuuva,admin','cuuva,admin'); + -- tb_role -INSERT INTO `tb_role` VALUES +INSERT IGNORE INTO `tb_role` VALUES (1,'ROLE_USER'), (2,'ROLE_MODERATOR'), (3,'ROLE_ADMIN'); -- tb_user -INSERT INTO `tb_user` VALUES -(5,'cuuva','cuuva@naver.com','$2a$10$UhWIoxGlxa7u9gks3m498u9tPGcGO2sh5PTeAD6319TJ9M67ZZqmO'), -(6,'admin','admin@naver.com','$2a$10$zukuiEA7Ce1ygOeJxZilhOi29jQnsreIswyJQ3Z.lysmKFiQhTXeS'), -(7,'user','user@naver.com','$2a$10$jkRSrScnLK.Qiy/AmapKmOVauP4tff.tIMnAzEd1mMoTvRCZXpU4u'); +INSERT IGNORE INTO tb_user ( + id, + username, + email, + password +) VALUES +( + 5, + 'cuuva', + 'cuuva@naver.com', + '$2a$10$UhWIoxGlxa7u9gks3m498u9tPGcGO2sh5PTeAD6319TJ9M67ZZqmO' +), +( + 6, + 'admin', + 'admin@naver.com', + '$2a$10$zukuiEA7Ce1ygOeJxZilhOi29jQnsreIswyJQ3Z.lysmKFiQhTXeS' +), +( + 7, + 'user', + 'user@naver.com', + '$2a$10$jkRSrScnLK.Qiy/AmapKmOVauP4tff.tIMnAzEd1mMoTvRCZXpU4u' +); -- tb_user_project_map -INSERT INTO `tb_user_project_map` VALUES +INSERT IGNORE INTO `tb_user_project_map` VALUES (1,1,6), (2,1,5); -- tb_user_project_permission -INSERT INTO `tb_user_project_permission` VALUES +INSERT IGNORE INTO `tb_user_project_permission` VALUES (2,'READ'), (1,'READ'), (2,'CREATE'), @@ -31,7 +52,7 @@ INSERT INTO `tb_user_project_permission` VALUES (1,'DELETE'); -- tb_user_roles -INSERT INTO `tb_user_roles` VALUES +INSERT IGNORE INTO `tb_user_roles` VALUES (1,7), (2,6), (3,5);