Skip to content

Tags: zaryflo/front50

Tags

version-0.26.0

Toggle version-0.26.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
chore(kotlin): move to new kotlin version and upgrade kork (spinnaker…

…#981)

version-0.25.1

Toggle version-0.25.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
fix(gcs): Fix startup error when bucketLocation is not specified (spi…

…nnaker#934) (spinnaker#938)

* test(gcs): Add some implementations to FakeStorageRpc

In an upcoming commit, we'll need to also support getting a bucket;
to prepare for that let's update the FakeStorageRpc to:
* Keep track of what bucket objects are in (rather than now where it
assumes they are all in the same bucket)
* Handle creating and getting a bucket

We'll add an additional Map around the blobs data structure that
maps the bucket to a Map of blobs.  (This is a bit of a complex
data structure that in production code might be better expressed
as classes, but for this single fake in a test it's porbably fine.)

Creating a bucket initializes its blobs to an empty map; we know
if a bucket exists by whether it has an entry in the map.

I used the documentation on the interface we're mocking to decide
how to handle a missing bucket; in some cases we just return null
(when getting an object or a bucket) while in others we propagate
the 404.

This required one small change to the existing tests, which is that
we'll need to create the bucket before we use them in the tests.

* test(gcs): Add test to demonstrate NPE on missing bucketLocation

This commit adds a broken test to demostrate the NPE that occurs
on startup when the bucketLocation is not specified.

* fix(gcs): Fix startup error when bucketLocation is not specified

There was a regression in 1.22 where omitting bucketLocation from
one's GCS config now causes an error on startup. Prior to the
rewrite of GcsStorageService, we accepted either null or empty
string as the bucket location; now that GcsStorageService is in
kotlin and does not use a String? for the field, an error occurs
on trying to create the GcsStorageService.

The fix is just to default the string to "" in the config properties.

* style(gcs): Use Bucket.of intead of builder

* test(gcs): Replace nested map with classes

To simplify the nested map, define a Buckets class and a
BucketContents class, with operation names that make it more
clear what is happening.

Also, I realized that before my changes we were appending the bucket
name to the object name before putting it into the map, but now we
don't need to do that anymore because we have a separate map for
each bucket, so remove some unecessary calls to fullPath (which is
now only used in printing error messages).

* style(gcs): Fix typo

* style(gcs): Fix constructor

There's no need to accept the map in a private constructor then
separately define a no-arg constructor that passes an empty map,
just make the map a val in the class.

(cherry picked from commit ba4b061)

Co-authored-by: Eric Zimanyi <[email protected]>

version-0.25.0

Toggle version-0.25.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
chore(dependencies): Autobump spinnakerGradleVersion (spinnaker#926)

Co-authored-by: root <root@6a807b439d68>

version-0.24.1

Toggle version-0.24.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
fix(provider/Oracle): Cache issue related to Oracle Object Storage (bp 

…spinnaker#886) (spinnaker#923)

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: CyrusKOCI <[email protected]>

version-0.23.3

Toggle version-0.23.3's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
fix(provider/Oracle): Cache issue related to Oracle Object Storage (bp 

…spinnaker#886) (spinnaker#924)

version-0.22.2

Toggle version-0.22.2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
fix(provider/Oracle): Cache issue related to Oracle Object Storage sp…

…innaker#886 (spinnaker#913)

version-0.24.0

Toggle version-0.24.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
fix(docs): Update broken link (spinnaker#878)

This commit fixes a broken link to the documentation on how to submit a patch.

v2.21.0

Toggle v2.21.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
chore(dependencies): Autobump clouddriverVersion (spinnaker#876)

Co-authored-by: root <root@aaa8c20672e1>

version-0.23.2

Toggle version-0.23.2's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
fix(sql): `/ServiceAccounts` fails when sql is only active provider (s…

…pinnaker#839) (spinnaker#848)

* fix(sql): `/ServiceAccounts` fails when sql is only active provider (spinnaker#839)

Cherry pick of 225688b

* This was a bit of a weird error. After we turned off the S3 provider in Front50, the `/serviceAccounts` endpoint stopped working, failing with the following error message: "Configured storage service does not support service account permissions".
This happens when there's no `ServiceAccountsService` bean (which it really wasn't). This bean is autoconfigured using `@ConditionalOnBean(ServiceAccountDAO.class)`, and according to Spring there's no ServiceAccountDAO in the context. But when inspecting the context, it actually _is_ a `ServiceAccountDAO` present. I think that for some reason the `ServiceAccountDAO` bean is created _after_ Spring tries to wire up `ServiceAccountsService`, but this doesn't happen with the other providers. I have no idea why. The only thing I can think of is that `SqlConfiguration.kt` is the first provider config written in Kotlin, but I don't really understand why that should matter. I'd appreciate any insight into the matter.

I have fixed the issue by creating a new `@ConditionalOnAnyProviderExceptRedisIsEnabled` annotation that returns true if any of the providers except Redis are enabled. I've tested running the app with only SQL enabled, only Redis enabled*, and both SQL and Redis enabled. All works now.

\* This didn't work before, as @robzienert correctly theorised.

* Add back @ConditionalOnBean and fix visibility of two functions

+ some minor Java style fixes

* Added new conditional annotation and applied it in relevant places

The new @ConditionalOnAnyProviderExceptRedisIsEnabled will be true if any of the providers except Redis are enabled. Whether Redis is enabled or not does not matter.

* Conditionally wire up ServiceAccountsController

Co-authored-by: Cameron Fieber <[email protected]>

* refactor(core): Use nested conditions in AnyProviderExceptRedisCondition (spinnaker#858)

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
(cherry picked from commit ffdb595)

Co-authored-by: Cameron Fieber <[email protected]>

v2.20.0

Toggle v2.20.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
chore(dependencies): Autobump clouddriverVersion (spinnaker#864)

Co-authored-by: root <root@ba7e6b7195f5>