Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
N
node-devlop-rest-api
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
zhouzihao
node-devlop-rest-api
Commits
13b8f96e
Commit
13b8f96e
authored
Mar 30, 2020
by
zhouzihao
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix-处理部分bugOC
parent
507a960a
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
27 additions
and
13 deletions
+27
-13
shell/java.js
shell/java.js
+27
-13
No files found.
shell/java.js
View file @
13b8f96e
...
@@ -5,6 +5,7 @@ const replace = require('replace-in-file');
...
@@ -5,6 +5,7 @@ const replace = require('replace-in-file');
const
fs
=
require
(
'
fs
'
);
const
fs
=
require
(
'
fs
'
);
var
sleep
=
require
(
'
sleep
'
);
var
sleep
=
require
(
'
sleep
'
);
var
pomParser
=
require
(
"
pom-parser
"
);
var
pomParser
=
require
(
"
pom-parser
"
);
var
databaseHelper
=
require
(
"
../tools/databaseHelper
"
)
/**
/**
* 构建Java项目
* 构建Java项目
...
@@ -77,6 +78,7 @@ const buildJava = async (projectObj, envObj, typeObj, configList, branch, versio
...
@@ -77,6 +78,7 @@ const buildJava = async (projectObj, envObj, typeObj, configList, branch, versio
var
git_info
=
JSON
.
parse
(
stdout5
.
stdout
);
var
git_info
=
JSON
.
parse
(
stdout5
.
stdout
);
//获取项目远程地址
//获取项目远程地址
var
git_remote
=
git_info
.
http_url_to_repo
;
var
git_remote
=
git_info
.
http_url_to_repo
;
var
project_id
=
git_info
.
id
;
console
.
log
(
"
git项目的远程地址为:
"
);
console
.
log
(
"
git项目的远程地址为:
"
);
console
.
log
(
git_remote
);
console
.
log
(
git_remote
);
...
@@ -104,7 +106,7 @@ const buildJava = async (projectObj, envObj, typeObj, configList, branch, versio
...
@@ -104,7 +106,7 @@ const buildJava = async (projectObj, envObj, typeObj, configList, branch, versio
// 先看看build语句
// 先看看build语句
// 默认跳过测试
// 默认跳过测试
var
build_script
=
_
.
get
(
projectMetaData
,
"
build_script
"
,
"
-mvn clean install package -Dmaven.test.skip=true
"
);
var
build_script
=
_
.
get
(
projectMetaData
,
"
build_script
"
,
"
-
mvn clean install package -Dmaven.test.skip=true
"
);
// 识别要扫描的模块
// 识别要扫描的模块
var
module_list
=
_
.
get
(
projectMetaData
,
"
module_list
"
,
[
"
.
"
]);
var
module_list
=
_
.
get
(
projectMetaData
,
"
module_list
"
,
[
"
.
"
]);
// 初始化变量
// 初始化变量
...
@@ -120,7 +122,8 @@ const buildJava = async (projectObj, envObj, typeObj, configList, branch, versio
...
@@ -120,7 +122,8 @@ const buildJava = async (projectObj, envObj, typeObj, configList, branch, versio
// docker login ${IMAGE_HOST} -u yzy -p 123qweQWE@
// docker login ${IMAGE_HOST} -u yzy -p 123qweQWE@
if
(
!
_
.
isEmpty
(
username
)
&&
!
_
.
isEmpty
(
password
))
{
if
(
!
_
.
isEmpty
(
username
)
&&
!
_
.
isEmpty
(
password
))
{
docker_build_str
+=
"
docker login ${IMAGE_HOST} -u
"
+
username
+
"
-p
"
+
password
;
docker_build_str
+=
"
- docker login ${IMAGE_HOST} -u
"
+
username
+
"
-p
"
+
password
+
"
\n
"
;
// docker_build_str += " - docker login 10.100.9.22:2080 -u " + username + " -p " + password + "\n";
}
}
...
@@ -131,24 +134,23 @@ const buildJava = async (projectObj, envObj, typeObj, configList, branch, versio
...
@@ -131,24 +134,23 @@ const buildJava = async (projectObj, envObj, typeObj, configList, branch, versio
// console.log(JSON.stringify(pom_object));
// console.log(JSON.stringify(pom_object));
// 这里默认情况下使用通配符
// 这里默认情况下使用通配符
var
service_name
=
pom_object
.
project
.
name
;
var
service_name
=
_
.
replace
(
pom_object
.
project
.
name
,
'
-
'
,
'
_
'
)
;
var
dockerfile_name
=
"
dockerfile_
"
+
service_name
;
var
dockerfile_name
=
"
dockerfile_
"
+
service_name
;
variables_str
+=
"
"
+
"
IMAGE_NAME_
"
+
service_name
+
'
: "${IMAGE_HOST}/
'
+
registry_group
+
'
/${CI_PROJECT_NAME}/
'
+
_
.
replace
(
_
.
lowerCase
(
v
),
"
"
,
"
-
"
)
+
'
"
'
+
"
\n
"
;
variables_str
+=
"
"
+
"
IMAGE_NAME-
"
+
service_name
+
'
: "${IMAGE_HOST}/
'
+
registry_group
+
'
/${CI_PROJECT_NAME}/
'
+
_
.
lowerCase
(
service_name
)
+
'
"
'
+
"
\n
"
;
variables_str
+=
"
"
+
'
IMAGE_VERSION_
'
+
service_name
+
'
: "${IMAGE_HOST}/
'
+
registry_group
+
'
/${CI_PROJECT_NAME}/
'
+
_
.
replace
(
_
.
lowerCase
(
v
),
"
"
,
"
-
"
)
+
'
:${CI_COMMIT_TAG}"
'
+
"
\n
"
;
variables_str
+=
"
"
+
'
IMAGE_VERSION-
'
+
service_name
+
'
: "${IMAGE_HOST}/
'
+
registry_group
+
'
/${CI_PROJECT_NAME}/
'
+
_
.
lowerCase
(
service_name
)
+
'
:${CI_COMMIT_TAG}"
'
+
"
\n
"
;
variables_str
+=
"
"
+
'
IMAGE_LATEST_
'
+
service_name
+
'
: "${IMAGE_HOST}/
'
+
registry_group
+
'
/${CI_PROJECT_NAME}/
'
+
_
.
replace
(
_
.
lowerCase
(
v
),
"
"
,
"
-
"
)
+
'
:latest"
'
+
"
\n
"
;
variables_str
+=
"
"
+
'
IMAGE_LATEST-
'
+
service_name
+
'
: "${IMAGE_HOST}/
'
+
registry_group
+
'
/${CI_PROJECT_NAME}/
'
+
_
.
lowerCase
(
service_name
)
+
'
:latest"
'
+
"
\n
"
;
//缓存地址
//缓存地址
cache
+=
"
-
"
+
v
+
"
/target/
\n
"
;
cache
+=
"
-
"
+
v
+
"
/target/
\n
"
;
docker_build_str
+=
"
"
+
"
- docker build -t ${IMAGE_VERSION
-
"
+
service_name
+
"
} -f
"
+
dockerfile_name
+
"
.
"
+
"
\n
"
;
docker_build_str
+=
"
"
+
"
- docker build -t ${IMAGE_VERSION
_
"
+
service_name
+
"
} -f
"
+
dockerfile_name
+
"
.
"
+
"
\n
"
;
docker_tag_str
+=
"
"
+
'
- docker tag ${IMAGE_VERSION
-
'
+
service_name
+
'
} ${IMAGE_LATEST
'
+
service_name
+
'
}
'
+
"
\n
"
;
docker_tag_str
+=
"
"
+
'
- docker tag ${IMAGE_VERSION
_
'
+
service_name
+
'
} ${IMAGE_LATEST_
'
+
service_name
+
'
}
'
+
"
\n
"
;
docker_push_str
+=
"
"
+
'
- docker push ${IMAGE_VERSION
-
'
+
service_name
+
'
}
'
+
"
\n
"
;
docker_push_str
+=
"
"
+
'
- docker push ${IMAGE_VERSION
_
'
+
service_name
+
'
}
'
+
"
\n
"
;
docker_push_str
+=
"
"
+
'
- docker push ${IMAGE_LATEST
-
'
+
service_name
+
'
}
'
+
"
\n
"
;
docker_push_str
+=
"
"
+
'
- docker push ${IMAGE_LATEST
_
'
+
service_name
+
'
}
'
+
"
\n
"
;
// 这里要写dockerfile
// 这里要写dockerfile
fs
.
writeFileSync
(
`
${
project_dir
}
/
${
dockerfile_name
}
`
,
typeObj
.
docker_file
);
fs
.
writeFileSync
(
`
${
project_dir
}
/
${
dockerfile_name
}
`
,
typeObj
.
docker_file
);
var
dockerfile_map
=
{
var
dockerfile_map
=
{
"
{service}
"
:
v
,
"
{service}
"
:
v
,
"
{service-exec}
"
:
service_
name
+
"
*
"
"
{service-exec}
"
:
pom_object
.
project
.
name
+
"
*
"
}
}
await
replaceFileByMap
(
dockerfile_map
,
`
${
project_dir
}
/
${
dockerfile_name
}
`
);
await
replaceFileByMap
(
dockerfile_map
,
`
${
project_dir
}
/
${
dockerfile_name
}
`
);
}
}
...
@@ -166,6 +168,11 @@ const buildJava = async (projectObj, envObj, typeObj, configList, branch, versio
...
@@ -166,6 +168,11 @@ const buildJava = async (projectObj, envObj, typeObj, configList, branch, versio
};
};
await
replaceFileByMap
(
gitlab_ci_map
,
`
${
project_dir
}
/.gitlab-ci.yml`
);
await
replaceFileByMap
(
gitlab_ci_map
,
`
${
project_dir
}
/.gitlab-ci.yml`
);
// 提供gitlab-ci
// 提供gitlab-ci
// 创建数据//
// todo 创建docker-compose
// todo 创建docker-compose
// 替换docker-compose
// 替换docker-compose
...
@@ -177,7 +184,14 @@ const buildJava = async (projectObj, envObj, typeObj, configList, branch, versio
...
@@ -177,7 +184,14 @@ const buildJava = async (projectObj, envObj, typeObj, configList, branch, versio
let
{
stdout13
}
=
await
execa
(
`git`
,
[
'
remote
'
,
'
add
'
,
'
origin
'
,
git_remote
],
{
cwd
:
project_dir
});
let
{
stdout13
}
=
await
execa
(
`git`
,
[
'
remote
'
,
'
add
'
,
'
origin
'
,
git_remote
],
{
cwd
:
project_dir
});
let
{
stdout14
}
=
await
execa
(
`git`
,
[
'
push
'
,
'
-u
'
,
'
origin
'
,
'
master
'
],
{
cwd
:
project_dir
});
let
{
stdout14
}
=
await
execa
(
`git`
,
[
'
push
'
,
'
-u
'
,
'
origin
'
,
'
master
'
],
{
cwd
:
project_dir
});
// 打上tag
// 打上tag
let
stdout15
=
await
execa
(
'
curl
'
,
[
'
--header
'
,
`PRIVATE-TOKEN:
${
token
}
`
,
'
-X
'
,
'
POST
'
,
`
${
target_git_url
}
/api/v4/projects/
${
project_id
}
/repository/tags?tag_name=
${
version
}
&ref=master`
]);
console
.
log
(
stdout15
.
stdout
);
}
}
/**
/**
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment