|
1 |
| -# M-CMP mc-workflow-manager |
2 |
| - |
3 |
| -This repository provides a Workflow Manager. |
4 |
| - |
5 |
| -A sub-system of [M-CMP platform](https://github.com/m-cmp/docs/tree/main) to deploy and manage Multi-Cloud Infrastructures. |
6 |
| - |
7 |
| -## Overview |
8 |
| - |
9 |
| -M-CMP의 mc-workflow-manager 서브시스템이 제공하는 기능은 다음과 같다. |
10 |
| - |
11 |
| -- 워크플로우 생성 기능 |
12 |
| -- 워크플로우를 통한 멀티 클라우드 인프라 생성 및 애플리케이션 배포 기능 |
13 |
| - |
14 |
| - |
15 |
| -## 목차 |
16 |
| - |
17 |
| -1. [mc-workflow-manager 실행 및 개발 환경] |
18 |
| -2. [mc-workflow-manager 실행 방법] |
19 |
| -3. [mc-workflow-manager 소스 빌드 및 실행 방법 상세] |
20 |
| -4. [mc-workflow-manager 기여 방법] |
21 |
| - |
22 |
| ---- |
23 |
| - |
24 |
| ---- |
25 |
| - |
26 |
| - |
27 |
| -## mc-workflow-manager 실행 및 개발 환경 |
28 |
| - |
29 |
| -- Linux OS (Ubuntu 22.04 LTS) |
30 |
| -- Java (Openjdk 11) |
31 |
| -- Gradle (v7.6) |
32 |
| -- MariaDB (v10.11.5) |
33 |
| -- Jenkins (v2.424) |
34 |
| -- docker (v24.0.2) |
35 |
| -- git (v2.34.1) |
36 |
| - |
37 |
| ---- |
38 |
| - |
39 |
| ---- |
40 |
| - |
41 |
| -## mc-workflow-manager 실행 방법 |
42 |
| - |
43 |
| -### 소스 코드 기반 설치 및 실행 |
44 |
| - |
45 |
| -- 방화벽 설정 |
46 |
| -- 소스 다운로드 (Git clone) |
47 |
| -- 필요 패키지/도구 설치 (Java, Gradle, Git, Docker) |
48 |
| -- 빌드 및 실행 (shell script) |
49 |
| - |
50 |
| ---- |
51 |
| - |
52 |
| ---- |
53 |
| - |
54 |
| -## mc-workflow-manager 소스 빌드 및 실행 방법 상세 |
55 |
| - |
56 |
| -### (1) 방화벽 TCP 포트 허용 설정 |
57 |
| - |
58 |
| -- 80, 443 |
59 |
| -- 3306 (MariaDB) |
60 |
| -- 9800 (Jenkins) |
61 |
| -- 18083, 18084 (MC_WORKFLOW) |
62 |
| -- 1024 (MC_SPIDER) |
63 |
| -- 1323 (CB_TUMBLEBUG) |
64 |
| - |
65 |
| -### (2) 소스 다운로드 |
66 |
| - |
67 |
| -- Git 설치 |
68 |
| - ```bash |
69 |
| - sudo apt update |
70 |
| - sudo apt install -y git |
71 |
| - ``` |
72 |
| -- mc-workflow-manager 소스 다운로드 |
73 |
| - ```bash |
74 |
| - export BASE_DIR=$HOME/mcmp |
75 |
| - mkdir -p $BASE_DIR/git |
76 |
| - cd $BASE_DIR/git |
77 |
| - git clone https://github.com/m-cmp/mc-workflow-manager.git |
78 |
| - export PROJECT_ROOT=$(pwd)/mc-workflow-manager |
79 |
| - ``` |
80 |
| - |
81 |
| -### (3) 필요 패키지/도구 설치 및 환경 변수 설정 |
82 |
| -- Java, Gradle, Git, Docker 설치 |
83 |
| - |
84 |
| - ```bash |
85 |
| - export PROJECT_ROOT=$HOME/mcmp/git/mc-workflow-manager |
86 |
| - cd $PROJECT_ROOT/script |
87 |
| - sudo chmod +x *.sh |
88 |
| - . $PROJECT_ROOT/script/init-install.sh |
89 |
| - ``` |
90 |
| - |
91 |
| -- 환경 변수 설정 |
92 |
| - ```bash |
93 |
| - cd $PROJECT_ROOT/script |
94 |
| - . $PROJECT_ROOT/script/set_env.sh |
95 |
| - source $HOME/.bashrc |
96 |
| - ``` |
97 |
| - |
98 |
| -### (4) 빌드 및 실행 |
99 |
| - |
100 |
| -- Shell Script 실행 |
101 |
| - ```bash |
102 |
| - #Run Mariadb |
103 |
| - . $PROJECT_ROOT/script/run-mariadb.sh |
104 |
| - |
105 |
| - #Run Jenkins |
106 |
| - . $PROJECT_ROOT/script/run-jenkins.sh |
107 |
| - |
108 |
| - #Build Springboot Project |
109 |
| - . $PROJECT_ROOT/script/build-mc-workflow.sh |
110 |
| - |
111 |
| - #Run Springboot Project |
112 |
| - . $PROJECT_ROOT/script/run-mc-workflow.sh |
113 |
| - ``` |
114 |
| - |
115 |
| -- Swagger 접속 |
116 |
| - - http://Public_IP주소:18083/swagger-ui/index.html |
117 |
| - |
118 |
| -- Jenkins 접속 |
119 |
| - - http://Public_IP주소:9800 |
120 |
| - |
121 |
| - |
122 |
| -- WorkFlow 기능 - v 0.2.0 |
123 |
| - - ToolChain 등록 (*Jenkins / *Tumblebug) |
124 |
| - - Workflow Stage 등록 |
125 |
| - - Workflow 등록 |
126 |
| - - Workflow 실행 |
127 |
| - |
128 |
| ---- |
129 |
| - |
130 |
| ---- |
131 |
| - |
132 |
| - |
133 |
| - |
134 |
| -RUN ENV (임시 서버 연결 2024/06/30까지 가능, 이후 업데이트) |
135 |
| -- ${DB_DRIVER} : 기본값 org.mariadb.jdbc.Driver |
136 |
| -- ${DB_URL} : 기본값 localhost:3306/m-cmp |
137 |
| -- ${DB_ID} |
138 |
| -- ${DB_PW} |
139 |
| - |
140 |
| ---- |
141 |
| - |
142 |
| ---- |
143 |
| - |
144 |
| - |
145 |
| -## How to Contribute |
146 |
| -- Issues/Discussions/Ideas: Utilize issue of mc-workflow-manager |
| 1 | +# M-CMP mc-workflow-managerThis repository provides a Workflow Manager.A sub-system of [M-CMP platform](https://github.com/m-cmp/docs/tree/main) to deploy and manage Multi-Cloud Infrastructures.## OverviewM-CMP의 mc-workflow-manager 서브시스템이 제공하는 기능은 다음과 같다.- 워크플로우 생성 기능- 워크플로우를 통한 멀티 클라우드 인프라 생성 및 애플리케이션 배포 기능## 목차1. [mc-workflow-manager 실행 및 개발 환경]2. [mc-workflow-manager 실행 방법]3. [mc-workflow-manager 소스 빌드 및 실행 방법 상세]4. [mc-workflow-manager 기여 방법]------## mc-workflow-manager 실행 및 개발 환경- Linux OS (Ubuntu 22.04 LTS)- Java (Openjdk 11)- Gradle (v7.6)- Jenkins (v2.424)- docker (v24.0.2)------## mc-workflow-manager 실행 방법### 소스 코드 기반 설치 및 실행- 방화벽 설정- 소스 다운로드 (Git clone)- 필요 패키지/도구 설치 (Java, Gradle, Docker)- 빌드 및 실행 (shell script)------## mc-workflow-manager 소스 빌드 및 실행 방법 상세### (1) 방화벽 TCP 포트 허용 설정- 80, 443- 9800 (Jenkins)- 18083, 18084 (MC_WORKFLOW)- 1024 (MC_SPIDER)- 1323 (CB_TUMBLEBUG)### (2) 소스 다운로드- Git 설치 ```bash sudo apt update sudo apt install -y git ```- mc-workflow-manager 소스 다운로드 ```bash export BASE_DIR=$HOME/mcmp mkdir -p $BASE_DIR/git cd $BASE_DIR/git git clone https://github.com/m-cmp/mc-workflow-manager.git export PROJECT_ROOT=$(pwd)/mc-workflow-manager ```### (3) 필요 패키지/도구 설치 및 환경 변수 설정- Java, Docker 설치 ```bash export PROJECT_ROOT=$HOME/mcmp/git/mc-workflow-manager cd $PROJECT_ROOT/script sudo chmod +x *.sh . $PROJECT_ROOT/script/init-install.sh ```- 환경 변수 설정 ```bash cd $PROJECT_ROOT/script . $PROJECT_ROOT/script/set_env.sh source $HOME/.bashrc ```### (4) 빌드 및 실행- Shell Script 실행 ```bash #Run Jenkins . $PROJECT_ROOT/script/run-jenkins.sh #Build Springboot Project . $PROJECT_ROOT/script/build-mc-workflow.sh #Run Springboot Project . $PROJECT_ROOT/script/run-mc-workflow.sh ```- Swagger 접속 - http://Public_IP주소:18083/swagger-ui/index.html- Jenkins 접속 - http://Public_IP주소:9800- WorkFlow 기능 - v 0.2.0 - ToolChain 등록 (*Jenkins / *Tumblebug) - Workflow Stage 등록 - Workflow 등록 - Workflow 실행------RUN ENV- ${DB_INIT_YN} : DB 초기화 여부 (H2 사용으로 서버 구동시 초기화 여부 확인)- ${DB_ID}- ${DB_PW}------## How to Contribute- Issues/Discussions/Ideas: Utilize issue of mc-workflow-manager |
|
0 commit comments