Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
schbrain-archetype-initializer
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Incidents
Environments
Packages & Registries
Packages & Registries
Package Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
tools
schbrain-archetype-initializer
Commits
e5293711
Commit
e5293711
authored
Mar 20, 2022
by
liaozan
🏀
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
chore: fetch git resource
parent
a5cc9235
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
53 additions
and
4 deletions
+53
-4
initializer-backend/pom.xml
initializer-backend/pom.xml
+8
-4
initializer-backend/src/main/java/com/schbrain/archetype/initializer/runner/ArchetypeFetcher.java
...hbrain/archetype/initializer/runner/ArchetypeFetcher.java
+43
-0
pom.xml
pom.xml
+2
-0
No files found.
initializer-backend/pom.xml
View file @
e5293711
...
...
@@ -33,22 +33,26 @@
<dependency>
<groupId>
org.apache.maven
</groupId>
<artifactId>
maven-embedder
</artifactId>
<version>
3.8.5
</version>
<version>
${maven-embedder.version}
</version>
</dependency>
<dependency>
<groupId>
org.apache.maven
</groupId>
<artifactId>
maven-compat
</artifactId>
<version>
3.8.5
</version>
<version>
${maven-embedder.version}
</version>
</dependency>
<dependency>
<groupId>
org.eclipse.aether
</groupId>
<artifactId>
aether-connector-basic
</artifactId>
<version>
1.1.0
</version>
<version>
${aether.version}
</version>
</dependency>
<dependency>
<groupId>
org.eclipse.aether
</groupId>
<artifactId>
aether-transport-http
</artifactId>
<version>
1.1.0
</version>
<version>
${aether.version}
</version>
</dependency>
<dependency>
<groupId>
org.eclipse.jgit
</groupId>
<artifactId>
org.eclipse.jgit
</artifactId>
</dependency>
</dependencies>
...
...
initializer-backend/src/main/java/com/schbrain/archetype/initializer/runner/ArchetypeFetcher.java
0 → 100644
View file @
e5293711
package
com.schbrain.archetype.initializer.runner
;
import
cn.hutool.system.SystemUtil
;
import
lombok.extern.slf4j.Slf4j
;
import
org.eclipse.jgit.api.CheckoutCommand
;
import
org.eclipse.jgit.api.Git
;
import
org.eclipse.jgit.api.errors.GitAPIException
;
import
org.eclipse.jgit.lib.Ref
;
import
org.eclipse.jgit.transport.TagOpt
;
import
org.springframework.boot.ApplicationArguments
;
import
org.springframework.boot.ApplicationRunner
;
import
org.springframework.stereotype.Component
;
import
java.io.File
;
/**
* @author liaozan
* @since 2022/3/20
*/
@Slf4j
@Component
public
class
ArchetypeFetcher
implements
ApplicationRunner
{
private
static
final
String
ARCHETYPE_REPO_URL
=
"http://gitlab.schbrain.com/gitlab/tools/schbrain-archetype.git"
;
@Override
public
void
run
(
ApplicationArguments
args
)
throws
GitAPIException
{
String
tempDir
=
SystemUtil
.
getUserInfo
().
getTempDir
();
File
archetypeTemplateDirectory
=
new
File
(
tempDir
,
"archetype"
);
Git
git
=
Git
.
cloneRepository
()
.
setTagOption
(
TagOpt
.
FETCH_TAGS
)
.
setNoCheckout
(
false
)
.
setDirectory
(
archetypeTemplateDirectory
)
.
setCloneSubmodules
(
false
)
.
setURI
(
ARCHETYPE_REPO_URL
)
.
setRemote
(
"upstream"
)
.
call
();
CheckoutCommand
checkoutCommand
=
git
.
checkout
().
setName
(
"master"
).
setCreateBranch
(
true
);
Ref
ref
=
checkoutCommand
.
call
();
log
.
info
(
"Success checkout archetype branch: {} of {}"
,
ref
.
getName
(),
ARCHETYPE_REPO_URL
);
}
}
\ No newline at end of file
pom.xml
View file @
e5293711
...
...
@@ -19,6 +19,8 @@
<properties>
<revision>
0.0.1-SNAPSHOT
</revision>
<frontend-maven-plugin.version>
1.12.1
</frontend-maven-plugin.version>
<maven-embedder.version>
3.8.5
</maven-embedder.version>
<aether.version>
1.1.0
</aether.version>
</properties>
<modules>
...
...
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