Spinnaker Release 1.38.0
Changelog
echo
Version 1.31.0 of Spinnaker introduced a feature to filter pipelines from front50 , that was disabled by default. Version 1.35.0 enabled it by default , but we’ve had enough trouble with it, that https://github.com/spinnaker/echo/pull/1503 disables it by default again.
retrofit2 upgrade
All retrofit clients are upgraded to retrofit2 and any references to retrofit1 dependencies are removed in the following services.
Clouddriver 5.95.0
Fixes
- clouddriver-google: Fix logic when Instance Types are available only in selected Zones/Regions ( 6a65adfd )
- core/test: add a Retrofit2EncodeCorrectionInterceptor bean ( 70b14c1a )
- docker: resolve the issue of
Unrecognized field "child"
( 7c4514af ) - docker: resolve the issue of
Failed to parse ResponseBody : Unrecognized field "child"
when google cloud artifact registry responds with additional fields upon invoking tags list api ( 7c4514af ) - docker: resolve the issue of double encoding while making the next call to ECR’s tags list ( 06c98c00 )
- docker: resolve the issue of double encoding contained in the ECR’s next
link
header causing the Retrofit2 client to fail due to error code405
andMessage: Method Not Allowed
. ( 06c98c00 ) - docker: fix retrofit2 docker client which is replacing
?
with%3F
causing api failure ( 02101899 ) - docker: fix the issue of retrofit2 replacing
?
with%3F
causing api failure with 400 ( 02101899 ) - docker: address review comments on the fix to the issue of retrofit2 replacing
?
with%3F
causing api failure with 400 ( 02101899 ) - docker/test: add a Retrofit2EncodeCorrectionInterceptor bean ( 70b14c1a )
Other
- cats-sql: actually execute groovy tests ( 23155e5b )
- dependencies: Autobump fiatVersion ( 5e0ce2ab )
- dependencies: Autobump korkVersion ( 4d80be21 )
- dependencies: Autobump fiatVersion ( 06fbc3d5 )
- dependencies: Autobump korkVersion ( 3a2356f0 )
- dependencies: Autobump fiatVersion ( 5a1709a4 )
- dependencies: Autobump korkVersion ( 70b14c1a )
- dependencies: Autobump korkVersion ( 70b14c1a )
- docker: add a test to demonstrate the issue of
Failed to parse ResponseBody : Unrecognized field "child"
( 7c4514af ) - docker: add test to demonstrate the issue of double encoding of query parameter when the next link from a docker registry like ECR responds with an encoded url. ( 06c98c00 )
- docker: add two test classes, one to demonstrate how real docker registry apis can be accessed using retrofit2 client and another to demonstrate the issue of retrofit2 replacing
?
with%3F
causing api failure with 400 ( 02101899 )
Deck 3.21.0
Fixes
- gcp: fixing existing test + adding one test and updating credentials.json ( 2740ed53 )
- pipelineStage: Rendering with a warning with the pipelineParameters are defined as a SpeL expression ( 294e0ed1 )
Echo 2.47.2
Fixes
- notifications: fix MicrosoftTeamsConfig which has unused retrofit1 parameters ( 41b18321 )
- notifications: add Retrofit2SyncCall.execute to BearychatService in BearychatNotificationService ( 8a2b94af )
- notifications: add Retrofit2SyncCall.execute to BearychatService in BearychatNotificationService ( 8a2b94af )
- pipelinetriggers: turn off pipeline filtering by default (#1503) ( 38c2df6d )
- rest: add Retrofit2SyncCall.execute to RestService in RestEventService ( d3c1833b )
- rest: add Retrofit2SyncCall.execute to RestService in RestEventService ( d3c1833b )
- retrofit: address remnants of retrofit1 like TypedInput, TypedByteArray etc ( 5132fa85 )
- retrofit: address remnants of retrofit1 like TypedInput, TypedByteArray etc ( 5132fa85 )
- retrofit2: fix google cloud build notification agent for missing Retrofit2SyncCall.execute call (#1500) ( 7de326a1 )
- retrofit2: fix the issue of missing Retrofit2SyncCall.execute call in GoogleCloudBuildNotificationAgent ( 7de326a1 )
- retrofit2: fix
A @path parameter must not come after a @Query
error ( f170364c ) - retrofit2: fix
A @Path parameter must not come after a @Query
error ( f170364c ) - retrofit2: fix
baseUrl must end in /
error ( 19e2f34d ) - retrofit2: fix the following error by adding trailing / in the baseUrl and removing leading / in the end point: ( 19e2f34d )
- retrofit2: fix RestService by replacing POST mapping from / to . and add a test class to demonstrate the behaviour. ( 19e2f34d )
- retrofit2/test: deal with the introduction of Retrofit2EncodeCorrectionInterceptor ( 3b759058 )
Other
- core/test: only spin up a wiremock server once in IgorServiceTest ( 5132fa85 )
- dependencies: Autobump fiatVersion ( 4c0e2959 )
- dependencies: Autobump korkVersion ( c4fac745 )
- dependencies: Autobump fiatVersion ( b2fe9a12 )
- dependencies: Autobump korkVersion ( 3fb1fd6a )
- dependencies: Autobump fiatVersion ( db1889af )
- dependencies: Autobump korkVersion ( 3b759058 )
- dependencies: Autobump korkVersion ( 3b759058 )
- notifications: add a test to demonstrate the missing Retrofit2SyncCall.execute calls in BearychatNotificationService ( 8a2b94af )
- rest: add a test to demonstrate that RestEventService.sendEvent is failing to make the RestService.recordEvent api call ( d3c1833b )
- retrofit: add a test to demonstrate the issue of passing a TypedInput while using retrofit2 client ( 5132fa85 )
- retrofit2: add a test to demonstrate the issue of missing Retrofit2SyncCall.execute call in GoogleCloudBuildNotificationAgent ( 7de326a1 )
- retrofit2: add a test to demonstrate the following error: ( f170364c )
- retrofit2: add a test to demonstrate the error: java.lang.IllegalArgumentException: baseUrl must end in /. ( 19e2f34d )
Fiat 1.57.0
Fixes
- github: fix the error where if the baseUrl of the Github client has multiple slashes and the end point start with a slash, the resultant api url leaves that part the base url coming after first slash. ( a7f7f9de )
- retrofit2: fix multiple slash issue in baseUrl of retrofit2 client ( a7f7f9de )
Other
- api: refactor retrofit2 client configuration for FiatService to fix any issues that may occur if the base url has multiple slashes ( a7f7f9de )
- dependencies: Autobump korkVersion ( 1c7fb38c )
- dependencies: Autobump korkVersion ( e6fa9be1 )
- dependencies: Autobump korkVersion ( 0b9e5f6f )
- github: add a test to demonstrate an error scenario where if the baseUrl of the Github client has multiple slashes and the end point start with a slash ( a7f7f9de )
- web: refactor retrofit2 client configuration for IgorApi, ClouddriverApi and Front50Api to fix any issues that may occur if the base url has multiple slashes ( a7f7f9de )
Front50 2.41.0
Other
- dependencies: Autobump fiatVersion ( ceda49e0 )
- dependencies: Autobump korkVersion ( 849a0ce3 )
- dependencies: Autobump fiatVersion ( c4c047b5 )
- dependencies: Autobump korkVersion ( e8909c70 )
- dependencies: Autobump fiatVersion ( 6dc06b63 )
- dependencies: Autobump korkVersion ( 84137d73 )
Gate 6.69.0
Fixes
- retrofit2: fix retrofit2 issues ( bdf8922b )
- retrofit2: fix non-generics QueryMap which causes the following error: ( bdf8922b )
- retrofit2: fix
A @Path parameter must not come after a @Query
error ( bdf8922b ) - retrofit2/test: deal with the introduction of Retrofit2EncodeCorrectionInterceptor ( c18a17c1 )
- web: fix the mismatch in return types of EchoService.postEvent api stub and the actual api from echo ( ed770271 )
- web: fix the mismatch in return types of EchoService.postEvent api stub and the actual api from echo. ( ed770271 )
- web: fix the mismatches in the return types of APIs in gate and orca ( 15465c96 )
- web: fix the mismatches in the return types of apis in gate and orca for delete, resume, cancel and pause operations of a pipeline. ( 15465c96 )
- web: add Retrofit2SyncCall.execute to ClouddriverService in CredentialsController ( 5b500d3c )
- web: add Retrofit2SyncCall.execute to ClouddriverService in CredentialsController ( 5b500d3c )
- web: add Retrofit2SyncCall.execute to BakeService ( d3dc67d6 )
- web: add Retrofit2SyncCall.execute to BakeService ( d3dc67d6 )
- web: make type of additionalFilters in ImageController.findImages ( 875a8b15 )
- web: make type of additionalFilters in ImageController.findImages ( 875a8b15 )
Other
- Add test cases for OAuth feature validation ( a33b053e )
- OAuth2: groovy to java conversion for OAuth module ( 381f554c )
- OAuth2: groovy to java conversion for OAuth module ( 381f554c )
- dependencies: Autobump fiatVersion ( 1af7f70a )
- dependencies: Autobump korkVersion ( 8f5cffb6 )
- dependencies: Autobump fiatVersion ( d04b861c )
- dependencies: Autobump korkVersion ( efd741a5 )
- dependencies: Autobump fiatVersion ( dd8ea4b3 )
- dependencies: Autobump korkVersion ( c18a17c1 )
- dependencies: Autobump korkVersion ( c18a17c1 )
- retrofit2: add test to demonstrate the following error when QueryMap is used without generics: ( bdf8922b )
- web: add a test to demonstrate the mismatch in return types of EchoService.postEvent api stub and the actual api from echo. ( ed770271 )
- web: add a test to demonstrate the mismatch in api response types of gate and orca when delete pipeline execution api is invoked ( 15465c96 )
- web: add a test to demonstrate the retrofit error that occurs when /credentials/type/{accountType} is invoked ( 5b500d3c )
- web: use constructor injection in BakeService ( d3dc67d6 )
- web: demonstrate behavior of BakeService ( d3dc67d6 )
- web: demonstrate behavior of ImageController.findImages ( 875a8b15 )
- web/test: mock DefaultProviderLookupService in PipelineServiceTest ( 15465c96 )
- web/test: remove request id header from PipelineServiceTest ( 15465c96 )
- web/test: add X-SPINNAKER-USER and X-SPINNAKER-ACCOUNTS headers ( 15465c96 )
Igor 4.22.0
Fixes
- monitor-travis/test: keep up with new Retrofit2EncodeCorrectionInterceptor argument ( 5921e5fc )
- web/test: keep up with new Retrofit2EncodeCorrectionInterceptor argument ( 5921e5fc )
Other
- dependencies: Autobump fiatVersion ( 627ec479 )
- dependencies: Autobump korkVersion ( f4f2da07 )
- dependencies: Autobump fiatVersion ( 44c1bd8b )
- dependencies: Autobump korkVersion ( 0c90099a )
- dependencies: Autobump fiatVersion ( 22985a3d )
- dependencies: Autobump korkVersion ( 5921e5fc )
- dependencies: Autobump korkVersion ( 5921e5fc )
- retrofit2: upgrade code to use retrofit2 ( 769f1751 )
- retrofit2: upgrade igor-core package to retrofit2 ( 769f1751 )
- retrofit2: upgrade igor-monitor-artifactory to retrofit2 ( 769f1751 )
- retrofit2: upgrade igor-monitor-plugins to retrofit2 ( 769f1751 )
- retrofit2: upgrade igor-monitor-travis to retrofit2 ( 769f1751 )
- retrofit2: upgrade igor-web jenkins code to retrofit2 ( 769f1751 )
- retrofit2: upgrade igor-web bitbucket code to retrofit2 ( 769f1751 )
- retrofit2: upgrade igor-web github code to retrofit2 ( 769f1751 )
- retrofit2: upgrade igor-web gitlab code to retrofit2 ( 769f1751 )
- retrofit2: upgrade igor-web stash code to retrofit2 ( 769f1751 )
- retrofit2: upgrade igor-web wercker code to retrofit2 ( 769f1751 )
- retrofit2: upgrade igor-web concourse code to retrofit2 ( 769f1751 )
- retrofit2: upgrade igor-web helm code to retrofit2 ( 769f1751 )
- retrofit2: upgrade remaining misc files in igor-web to retrofit2 ( 769f1751 )
- retrofit2: add missing Retrofit2SyncCall.execute() calls ( 769f1751 )
- retrofit2: remove leading slashes in endpoints + add utility class to prevent ‘baseUrl must end in /’ error ( 769f1751 )
- retrofit2: add tests for retry behavior in GitlabCiService ( 769f1751 )
- retrofit2: fix connection refused in RetrofitUtilsTest ( 769f1751 )
- retrofit2: fix formatting ( 769f1751 )
- retrofit2: remove JenkinsOkHttpClientProvider and DefaultJenkinsOkHttpClientProvider ( 769f1751 )
Kayenta 2.46.0
Other
Orca 8.64.0
Fixes
- clouddriver/test: keep up with new Retrofit2EncodeCorrectionInterceptor argument ( d04c5186 )
- retrofit1: exclude Retrofit2EncodeCorrectionInterceptor from the retrofit1 clients ( 2fdb327a )
- retrofit1: exclude Retrofit2EncodeCorrectionInterceptor from the retrofit1 clients ( 2fdb327a )
Other
- dependencies: Autobump fiatVersion ( b61e752b )
- dependencies: Autobump korkVersion ( 139af4a0 )
- dependencies: Autobump fiatVersion ( c7f18c88 )
- dependencies: Autobump korkVersion ( c8496b5d )
- dependencies: Autobump fiatVersion ( 7071d6e9 )
- dependencies: Autobump korkVersion ( d04c5186 )
- dependencies: Autobump korkVersion ( d04c5186 )
- retrofit1: revert adding Retrofit2EncodeCorrectionInterceptor to retrofit1 clients in tests as kork is updated with new constructor ( 2fdb327a )