Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Sign in / Register
Toggle navigation
S
spring-boot
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
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
DEMO
spring-boot
Commits
aa24d623
Commit
aa24d623
authored
Dec 10, 2020
by
Madhura Bhave
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch '2.2.x' into 2.3.x
parents
360013cb
5cab547f
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
24 additions
and
12 deletions
+24
-12
PublishToSdkmanCommand.java
...course/releasescripts/command/PublishToSdkmanCommand.java
+7
-0
SdkmanService.java
...spring/concourse/releasescripts/sdkman/SdkmanService.java
+13
-6
SdkmanServiceTests.java
...g/concourse/releasescripts/sdkman/SdkmanServiceTests.java
+2
-5
publish-to-sdkman.sh
ci/scripts/publish-to-sdkman.sh
+1
-1
publish-to-sdkman.yml
ci/tasks/publish-to-sdkman.yml
+1
-0
No files found.
ci/images/releasescripts/src/main/java/io/spring/concourse/releasescripts/command/PublishToSdkmanCommand.java
View file @
aa24d623
...
...
@@ -37,12 +37,19 @@ public class PublishToSdkmanCommand implements Command {
private
static
final
Logger
logger
=
LoggerFactory
.
getLogger
(
PublishToSdkmanCommand
.
class
);
private
static
final
String
PUBLISH_TO_SDKMAN_COMMAND
=
"publishToSdkman"
;
private
final
SdkmanService
service
;
public
PublishToSdkmanCommand
(
SdkmanService
service
)
{
this
.
service
=
service
;
}
@Override
public
String
getName
()
{
return
PUBLISH_TO_SDKMAN_COMMAND
;
}
@Override
public
void
run
(
ApplicationArguments
args
)
throws
Exception
{
logger
.
debug
(
"Running 'push to SDKMAN' command"
);
...
...
ci/images/releasescripts/src/main/java/io/spring/concourse/releasescripts/sdkman/SdkmanService.java
View file @
aa24d623
...
...
@@ -25,7 +25,6 @@ import org.springframework.boot.web.client.RestTemplateBuilder;
import
org.springframework.http.MediaType
;
import
org.springframework.http.RequestEntity
;
import
org.springframework.stereotype.Component
;
import
org.springframework.util.StringUtils
;
import
org.springframework.web.client.RestTemplate
;
/**
...
...
@@ -47,13 +46,15 @@ public class SdkmanService {
private
final
RestTemplate
restTemplate
;
private
final
SdkmanProperties
properties
;
private
final
String
CONSUMER_KEY_HEADER
=
"Consumer-Key"
;
private
final
String
CONSUMER_TOKEN_HEADER
=
"Consumer-Token"
;
public
SdkmanService
(
RestTemplateBuilder
builder
,
SdkmanProperties
properties
)
{
String
consumerKey
=
properties
.
getConsumerKey
();
String
consumerToken
=
properties
.
getConsumerToken
();
if
(
StringUtils
.
hasLength
(
consumerKey
))
{
builder
=
builder
.
basicAuthentication
(
consumerKey
,
consumerToken
);
}
this
.
restTemplate
=
builder
.
build
();
this
.
properties
=
properties
;
}
public
void
publish
(
String
version
,
boolean
makeDefault
)
{
...
...
@@ -67,6 +68,8 @@ public class SdkmanService {
private
void
broadcast
(
String
version
)
{
BroadcastRequest
broadcastRequest
=
new
BroadcastRequest
(
version
);
RequestEntity
<
BroadcastRequest
>
broadcastEntity
=
RequestEntity
.
post
(
URI
.
create
(
SDKMAN_URL
+
"announce/struct"
))
.
header
(
CONSUMER_KEY_HEADER
,
this
.
properties
.
getConsumerKey
())
.
header
(
CONSUMER_TOKEN_HEADER
,
this
.
properties
.
getConsumerToken
())
.
contentType
(
MediaType
.
APPLICATION_JSON
).
body
(
broadcastRequest
);
this
.
restTemplate
.
exchange
(
broadcastEntity
,
String
.
class
);
logger
.
debug
(
"Broadcast complete"
);
...
...
@@ -76,6 +79,8 @@ public class SdkmanService {
logger
.
debug
(
"Making this version the default"
);
Request
request
=
new
Request
(
version
);
RequestEntity
<
Request
>
requestEntity
=
RequestEntity
.
post
(
URI
.
create
(
SDKMAN_URL
+
"default"
))
.
header
(
CONSUMER_KEY_HEADER
,
this
.
properties
.
getConsumerKey
())
.
header
(
CONSUMER_TOKEN_HEADER
,
this
.
properties
.
getConsumerToken
())
.
contentType
(
MediaType
.
APPLICATION_JSON
).
body
(
request
);
this
.
restTemplate
.
exchange
(
requestEntity
,
String
.
class
);
logger
.
debug
(
"Make default complete"
);
...
...
@@ -84,6 +89,8 @@ public class SdkmanService {
private
void
release
(
String
version
)
{
ReleaseRequest
releaseRequest
=
new
ReleaseRequest
(
version
,
String
.
format
(
DOWNLOAD_URL
,
version
,
version
));
RequestEntity
<
ReleaseRequest
>
releaseEntity
=
RequestEntity
.
post
(
URI
.
create
(
SDKMAN_URL
+
"release"
))
.
header
(
CONSUMER_KEY_HEADER
,
this
.
properties
.
getConsumerKey
())
.
header
(
CONSUMER_TOKEN_HEADER
,
this
.
properties
.
getConsumerToken
())
.
contentType
(
MediaType
.
APPLICATION_JSON
).
body
(
releaseRequest
);
this
.
restTemplate
.
exchange
(
releaseEntity
,
String
.
class
);
logger
.
debug
(
"Release complete"
);
...
...
ci/images/releasescripts/src/test/java/io/spring/concourse/releasescripts/sdkman/SdkmanServiceTests.java
View file @
aa24d623
...
...
@@ -25,7 +25,6 @@ import org.springframework.boot.test.autoconfigure.web.client.RestClientTest;
import
org.springframework.http.HttpMethod
;
import
org.springframework.http.MediaType
;
import
org.springframework.test.web.client.MockRestServiceServer
;
import
org.springframework.util.Base64Utils
;
import
static
org
.
springframework
.
test
.
web
.
client
.
match
.
MockRestRequestMatchers
.
content
;
import
static
org
.
springframework
.
test
.
web
.
client
.
match
.
MockRestRequestMatchers
.
header
;
...
...
@@ -80,10 +79,8 @@ class SdkmanServiceTests {
private
void
setupExpectation
(
String
url
,
String
body
)
{
this
.
server
.
expect
(
requestTo
(
url
)).
andExpect
(
method
(
HttpMethod
.
POST
)).
andExpect
(
content
().
json
(
body
))
.
andExpect
(
header
(
"Authorization"
,
"Basic "
+
Base64Utils
.
encodeToString
(
String
.
format
(
"%s:%s"
,
this
.
properties
.
getConsumerKey
(),
this
.
properties
.
getConsumerToken
())
.
getBytes
())))
.
andExpect
(
header
(
"Consumer-Key"
,
"sdkman-consumer-key"
))
.
andExpect
(
header
(
"Consumer-Token"
,
"sdkman-consumer-token"
))
.
andExpect
(
header
(
"Content-Type"
,
MediaType
.
APPLICATION_JSON
.
toString
())).
andRespond
(
withSuccess
());
}
...
...
ci/scripts/publish-to-sdkman.sh
View file @
aa24d623
...
...
@@ -4,6 +4,6 @@ source $(dirname $0)/common.sh
version
=
$(
cat
artifactory-repo/build-info.json | jq
-r
'.buildInfo.modules[0].id'
|
sed
's/.*:.*:\(.*\)/\1/'
)
java
-jar
/spring-boot-release-scripts.jar publishToSdkman
$RELEASE_TYPE
$version
$BRANCH
||
{
exit
1
;
}
java
-jar
/spring-boot-release-scripts.jar publishToSdkman
$RELEASE_TYPE
$version
$BRANCH
||
{
exit
1
;
}
echo
"Push to SDKMAN complete"
ci/tasks/publish-to-sdkman.yml
View file @
aa24d623
...
...
@@ -2,6 +2,7 @@
platform
:
linux
inputs
:
-
name
:
artifactory-repo
-
name
:
git-repo
params
:
RELEASE_TYPE
:
BRANCH
:
...
...
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