profile
viewpoint
Rob Fletcher robfletcher Netflix Los Gatos, CA http://blog.freeside.co/ Member of the @spinnaker team at Netflix

betamaxteam/betamax 447

Betamax is a tool for mocking external HTTP resources such as web services and REST APIs in your tests. The project was inspired by the VCR library for Ruby.

robfletcher/discordian-calendar 4

An implementation of the Discordian Calendar for the Java 8 time API.

robfletcher/adhockery-tumblr 3

Tumblr theme for Ad-Hockery

robfletcher/backchat 2

Hi-resilience Grails commenting app

robfletcher/awesome-java 1

A curated list of awesome Java frameworks, libraries and software. Inspired by awesome-python.

robfletcher/colorspace 1

A tool for experimenting with LESS color transformation functions

robfletcher/dukebox 1

Simple collaborative music player

robfletcher/fongo-persistor 1

A Vert.x busmod for mocking out the mongo-persistor using fongo

Pull request review commentspinnaker/keel

Extension registry

 import org.springframework.stereotype.Component  */ @Component class ConstraintModelConverter(-  evaluators: List<ConstraintEvaluator<*>>+  private val extensionRegistry: ExtensionRegistry ) : SubtypesModelConverter<Constraint>(Constraint::class.java) { -  override val subTypes = evaluators.map { it.supportedType.type }+  override val subTypes: List<Class<out Constraint>>+    get() = mapping.values.toList()    override val discriminator: String? = Constraint::type.name -  override val mapping: Map<String, Class<out Constraint>> = evaluators.associate {-    it.supportedType.name to it.supportedType.type-  }+  override val mapping: Map<String, Class<out Constraint>>+    get() = extensionRegistry.extensionsOf() }

I'd like to unify all these implementations as they're basically all the same. I'll probably do another commit to this PR.

robfletcher

comment created time in 2 hours

Pull request review commentspinnaker/keel

Extension registry

 class KeelConfigurationFinalizer(     (resourceHandlers.map { it.supportedKind } + specMigrators.map { it.input })       .forEach { (kind, specClass) ->         log.info("Registering ResourceSpec sub-type {}: {}", kind, specClass.simpleName)-        val namedType = NamedType(specClass, kind.toString())-        objectMappers.forEach { it.registerSubtypes(namedType) }+        extensionRegistry.register(specClass, kind.toString())

Example use, here replacing explicit Jackson configuration

robfletcher

comment created time in 2 hours

Pull request review commentspinnaker/keel

Extension registry

+package com.netflix.spinnaker.keel.extensions++import com.fasterxml.jackson.databind.ObjectMapper+import com.fasterxml.jackson.databind.jsontype.NamedType+import com.netflix.spinnaker.keel.api.support.ExtensionRegistry+import org.slf4j.LoggerFactory+import org.springframework.stereotype.Component++@Component+class DefaultExtensionRegistry(+  private val mappers: List<ObjectMapper>+) : ExtensionRegistry {+  private val baseToExtensionTypes = mutableMapOf<Class<*>, MutableMap<String, Class<*>>>()++  override fun <BASE : Any> register(+    baseType: Class<BASE>,+    extensionType: Class<out BASE>,+    discriminator: String+  ) {+    baseToExtensionTypes+      .getOrPut(baseType, ::mutableMapOf)+      .also { it[discriminator] = extensionType }+    log.info("Registering extension \"$discriminator\" for ${baseType.simpleName} using ${extensionType.simpleName}")+    mappers.forEach {+      it.registerSubtypes(NamedType(extensionType, discriminator))+    }+  }

Default implementation does the Jackson registration right away and stores the subtype mapping for later use.

robfletcher

comment created time in 2 hours

Pull request review commentspinnaker/keel

Extension registry

+package com.netflix.spinnaker.keel.api.support++/**+ * Registers an extension to a model so that it may be used in a delivery config.+ */+interface ExtensionRegistry {+  fun <BASE : Any> register(+    baseType: Class<BASE>,+    extensionType: Class<out BASE>,+    discriminator: String+  )++  fun <BASE : Any> extensionsOf(baseType: Class<BASE>): Map<String, Class<out BASE>>+}

This interface is part of keel-api so plugins can use it to add additional sub-types that will get properly registered with Jackson and springdoc-openapi without requiring the plugin to have either of those as dependencies.

robfletcher

comment created time in 2 hours

push eventrobfletcher/keel

Rob Fletcher

commit sha 6fc018c4c3ce91dfde338a31cde325291e0bc102

refactor(extensions): removed some unused cruft

view details

push time in 2 hours

PR opened spinnaker/keel

Extension registry

Currently identification of sub-types for generating API docs is completely decoupled from registering them with Jackson in order to support deserialization. This is particularly awkward for plugins as there is no convenient way to augment API doc generation. This PR gives us a simple central registry of extensions to things like ResourceSpec that can be used to drive both Jackson and API doc configuration.

+173 -56

0 comment

9 changed files

pr created time in 2 hours

push eventrobfletcher/keel

Gal Yardeni

commit sha 938e71a2f7a89873bc6baa95f08260ce05ce9018

fix(artifactType): resolve mixing between artifact types and version (#1399) * fix(artifactType): resolve mixing between artifact types and version * fix(artifactType): add type to environment_artifact_constraint table * fix(artifactType): addressing some comments * fix(artifactType): changing type into artifact reference * fix(artifactType): spotless check * fix(artifactType): fix test * fix(type): using reference instead of type, remove rollback

view details

Rob Fletcher

commit sha 94b069f17235e8b5d8f63fe8ce581be2c563c8ac

refactor(extensions): central mechanism for registering extensions

view details

Rob Fletcher

commit sha 84190ff6d20536c65c0e925448852c173a1d3530

refactor(extensions): use ExtensionRegistry to do API docs

view details

Rob Fletcher

commit sha b3088c47af3ad385178bc74a0c90c0f83a272306

refactor(extensions): model converter for InstanceProvider sub-types

view details

push time in 2 hours

create barnchrobfletcher/keel

branch : extension-registry

created branch time in 2 hours

push eventrobfletcher/keel

Rob Fletcher

commit sha 53ea5068ddadb35f8a9b7e04a2e6ff3266c132af

fix(titus): overrides for map properties were backwards (#1397)

view details

push time in 7 hours

push eventrobfletcher/strikt

Rob Fletcher

commit sha 79828bfb965b55d922e3a0d7ed672c77a0b61e4c

bump Jackson

view details

push time in 7 hours

Pull request review commentspinnaker/keel

fix(artifactType): resolve mixing between artifact types and version

 internal class EnvironmentConstraintRunnerTests : JUnit5Minutests {       deliveryConfig.name,       environment.name,       "1.2",+      artifact.type,
      artifact.reference,
gal-yardeni

comment created time in 2 days

Pull request review commentspinnaker/keel

fix(artifactType): resolve mixing between artifact types and version

 internal class EnvironmentConstraintRunnerTests : JUnit5Minutests {       deliveryConfig.name,       environment.name,       "2.0",+      artifact.type,
      artifact.reference,
gal-yardeni

comment created time in 2 days

Pull request review commentspinnaker/keel

fix(artifactType): resolve mixing between artifact types and version

 internal class ManualJudgementConstraintEvaluatorTests : JUnit5Minutests {       deliveryConfigName = configName,       environmentName = env.name,       artifactVersion = version,+      artifactReference = artifact.type,
      artifactReference = artifact.reference,
gal-yardeni

comment created time in 2 days

Pull request review commentspinnaker/keel

fix(artifactType): resolve mixing between artifact types and version

+databaseChangeLog:+  - changeSet:+      id: add-artifact-type-column+      author: gyardeni+      changes:+        - addColumn:+            tableName: environment_artifact_queued_approval+            columns:+              - name: artifact_reference+                type: varchar(255)+                afterColumn: artifact_version+                constraints:+                  nullable: true+        - addColumn:+            tableName: environment_artifact_constraint+            columns:+              - name: artifact_reference+                type: varchar(255)+                afterColumn: artifact_version+                constraints:+                  nullable: true+      rollback:+        - dropColumn:+            tableName: environment_artifact_constraint+            columnName: artifact_reference+        - dropColumn:+            tableName: environment_artifact_queued_approval+            columnName: artifact_reference

I don't think you need this. Most Liquibase migrations have auto-rollback. It's only really when you're doing something unusual (e.g. with sql) that you need an explicit rollback.

gal-yardeni

comment created time in 2 days

Pull request review commentspinnaker/keel

fix(artifactType): resolve mixing between artifact types and version

+databaseChangeLog:+  - changeSet:+      id: add-artifact-type-column+      author: lpollo+      changes:+        - addColumn:+            tableName: environment_artifact_queued_approval+            columns:+              - name: artifact_type+                type: varchar(255)

Sounds like it should be added into that index then, no?

gal-yardeni

comment created time in 3 days

delete branch robfletcher/keel

delete branch : fix-titus-overrides

delete time in 5 days

push eventrobfletcher/keel

Rob Fletcher

commit sha ab1a81cd2398ded89d4d9fda3a939ff739029263

fix(titus): overrides for map properties were backwards

view details

push time in 5 days

push eventrobfletcher/keel

Rob Fletcher

commit sha 0f19344b45cc21201a687b7232eb5639df6531e1

fix(titus): overrides for map properties were backwards

view details

push time in 5 days

PR opened spinnaker/keel

Fix overrides for Titus cluster map properties

There was a subtle bug where the default took precedence over the override in map properties of Titus clusters. This fixes it.

+159 -2

0 comment

3 changed files

pr created time in 5 days

create barnchrobfletcher/keel

branch : fix-titus-overrides

created branch time in 5 days

push eventrobfletcher/strikt

Rob Fletcher

commit sha 74f61a1a4b5883014ecf58d22c1c5f4d5a79cc5c

dependency updates

view details

push time in 5 days

push eventrobfletcher/keel

spinnakerbot

commit sha e5f42e9f024bfe158eab158932e27d40752dd31f

chore(dependencies): Autobump korkVersion (#1382) Co-authored-by: root <root@8d7c1f8eef3c>

view details

spinnakerbot

commit sha 1a2c87396be2209a2ccea5ed6c797af32070930b

chore(dependencies): Autobump korkVersion (#1385) Co-authored-by: root <root@8442b11a4c18>

view details

Luis Pollo

commit sha 5fa487f688d61d61d5715bf822e2a81e73fbec89

Add support for NPM artifacts (#1387) * refactor(artifacts): Rename package for consistency * feat(artifacts): Add support for NPM artifacts * feat(artifacts): Generalize processing of incoming artifact events from Echo * fix(tests): Fix ApiDocTests * fix(tests): Fix leaky test * fix(pr): Rename NPM_VERSION_REGEX to NETFLIX_VERSION_REGEX * fix(artifacts): Lookup only relevant statuses for Debian * fix(naming): Fix left-over ArtifactPublisher -> ArtifactSupplier occurrences * fix(pr): Adjust NETFLIX_VERSION_REGEX to match Rocket * fix(pr): Fix broken tests * fix(pr): Add NpmArtifactSupplier to default artifact suppliers * fix(tests): Skip API doc tests until we can fix bean ordering issues * fix(pr): Added FIXMEs on temporarily disabled API doc tests

view details

Gal Yardeni

commit sha fa281b871715ccaf2be10e97e8037c15665a08e2

fix(Comment length): throw bad request if comment length > 256 (#1389) * fix(comment): throw bad request if comment length>256 * adding tests * fix(message): fixing error message to be clearer * fix(message): adding a centrlized validation func * fix(message): shorning comment

view details

Rob Fletcher

commit sha 581ddf68f2b4afa8201d8a4b4092be71a80dfeab

EC2 API enhancements (#1388) * refactor(API): expose resource types to plugins * refactor(API): JSON type info for instance provider

view details

Luis Pollo

commit sha 0b70458c2d6b20a491d64c3bbdd06725829e179e

debug(artifacts): Add more debug logs (#1393) * debug(artifacts): Add more debug logs * fix(pr): Dump event in the debug log

view details

Luis Pollo

commit sha f1c95b8051cde06b2637e7e3ec2e6a33cc5b44f1

fix(artifacts): Fix artifact event publishing (#1394)

view details

Luis Pollo

commit sha 85fc802ae8f2c437cf968d0e7a294aad18bc8c34

feat(plugins): Expose ResourceHandler as a SpinnakerExtensionPoint (#1395)

view details

push time in 5 days

delete branch robfletcher/keel

delete branch : ec2-api-enhancements

delete time in 5 days

push eventrobfletcher/orca

Cameron Fieber

commit sha 5240a42d564979ead24016fb776982d1fcd6b3ce

chore(build): gradle 6.5 (#3766)

view details

spinnakerbot

commit sha 17e4528e7ff9a8019769a7ea4af2ff617a6ba639

chore(dependencies): Autobump spinnakerGradleVersion (#3767) Co-authored-by: root <root@977a36312434>

view details

spinnakerbot

commit sha 423ffff3cd331ff3dbdac2213662902802e98baf

chore(dependencies): Autobump korkVersion (#3768) Co-authored-by: root <root@59d9c736198e>

view details

spinnakerbot

commit sha 4f6eec6e8451262b7f01f84fc1635656eda80181

chore(dependencies): Autobump fiatVersion (#3769) Co-authored-by: root <root@3d8bb27683f8>

view details

spinnakerbot

commit sha 26fe16f19bf2137efc55463a9e19554e98e85274

chore(dependencies): Autobump keikoVersion (#3773) Co-authored-by: root <root@98fd56a1ebe3>

view details

Eric Zimanyi

commit sha 4a26d90ea171c057d806f5542b7d0cf157e920a8

test(appengine): Add tests demonstrating AppEngine artifact bug (#3772) * fix(provider/appengine): Temporarily revert fix This reverts commit 711c21aa346936c6021bf33397cff77614b5450c. After adding tests to demonstrate the bug and fix, we'll re-apply. * test(appengine): Add tests demonstrating AppEngine artifact bug This commit adds tests to demonstrate the regression in the AppEngine artifact handling. The next commit will fix the bug and update the tests. * fix(provider/appengine): Fix for issue spinnaker/spinnaker#5836 (#3755) groovy.lang.MissingMethodException when referencing github config artifact for GAE deploy. The config artifacts were of instance of HashMap not an Artifact object. Added logic to translate HashMap to Artifact. Co-Authored-By: Eric Zimanyi <ezimanyi@google.com> Co-authored-by: guido9j <james_guido@homedepot.com>

view details

spinnakerbot

commit sha 5dadb78b3cfbc0c8af10cf68cce0c717fbb85ac6

chore(dependencies): Autobump korkVersion (#3779) Co-authored-by: root <root@a8f3fe14fb2c>

view details

Chris Smalley

commit sha aea369533eb6a31640bf973b1839bba26a0b7cae

fix(plugins): Do not configure orca-api with dependencies from subproject configuration in root build.gradle (#3761)

view details

Mark Vulfson

commit sha ad31b48d70ac81bdff271a850cd755eee669e035

fix(log noise - mptv2): denoise some MPTv2 errors (#3770) Currently, if there are any templated pipelines that are not fully specified (which is very common as users are iterating on pipeline design) planning those pipelines will generate lots of noise logs. This is expecially annoying when this is done as part of dependentpipeline starter and so it looks like an exception occured during an execution when in fact it had nothing to do with this particular execution. This change silences those logs for dependent pipeline starter, there will be a part 2 of this change where better logic is applied to `/v2/pipelineTemplates/plan` to not log exceptions for similar cases (this EP is called by echo alot) Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

view details

Mark Vulfson

commit sha acb584dee9f84f3e0a23c86b0900ca4412fb83b6

fix(plugins): make new trigger params optional (#3781) Follow up from: https://github.com/spinnaker/orca/pull/3756 to remove NPE when deserializing `descrption` or `provider` from past pipelines that didn't have these fields

view details

Glauco Vinicius

commit sha 438758f9ace00b80cde78e8b1d56855eadb08f72

fix(docs): Update broken link (#3780) This commit fixes a broken link to the documentation on how to submit a patch. Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

view details

Zach Smith

commit sha b5e13f29e256160580ad65e2e5f0d7f8f0b81ca1

fix(provider/cf): adding test to a fix (#3782) * fix(provider/cf): fix form based manifest resolution in deploy stage * added verbosity to the error message * empty commit * added test * fix(provider/cf): adding test to a fix Co-authored-by: Zach Smith <zachsmith@Zachs-MacBook-Pro-2.local> Co-authored-by: Zach Smith <zachsmith@ip-10-0-0-212.us-west-2.compute.internal> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com> Co-authored-by: Zach Smith <zachsmith@Zachs-MBP-2.attlocal.net> Co-authored-by: Zach Smith <zachsmith@ip-192-168-1-69.us-west-2.compute.internal>

view details

Mark Vulfson

commit sha cd4da9d9794d993861da1b3cb0117bd6856aa0a9

fix(monitored): split up resize and unpin operations for monitored deploy (#3776) In the situations when the user is deploying via monitored to, say, [min:1, desired:100, max:100] capacity and there is downward pressure at the end of deploy (due to reduced traffic) we might fail the deploy because we will never reach the desired state at the last (100%) step since we unpin at the same time as we scale up to 100%. This change removes the "unpin" part of the 100% step of monitored and introduces a separate unpin operation after the deploy reaches 100% healthy Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

view details

Daniel Reynaud

commit sha 54a0ff8586433905e9d1d4a93023ff9ecd33cef2

feat(echo): add a dynamic toggle for full executions (#3777) * feat(echo): add a dynamic toggle for full executions Big executions can generate a lot of tasks, which means a lot of echo traffic that all include the _full_ execution payload. I think we can definitely skip these at least for task events as a first step. We can also probably be more selective with stage events, but leaving that for later. * chore(events): rename includeFullExecution property Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

view details

Mark Vulfson

commit sha e04508d174d194a34198bd94ad6f7d23600528d1

fix(runjob): Only cancel runjob if one was started succfully (#3759) If there is no `jobStatus` object there was no job and we will NPE Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

view details

Mark Vulfson

commit sha 64315e183b8dabbecf6a2b40cd141b49ec20e4db

fix(jenkins): Only cancel a job that has started (#3778) If orca fails to kick off a jenkins job the stage will fail and thus go through the cancellation flow. Ironically, the cancel will throw an exception because tehre is no job to cancel. Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

view details

dwest-netflix

commit sha 889d5787a741d02bf0bd682547327be913191824

fix(mine): Correcting class namespace (#3783) Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

view details

Patrik Greco

commit sha 1826063e5001f44ab526bc6a65be0598cf4e8eba

fix(redis): New a JedisPoolConfig instead of GenericObjectPoolConfig (#3784) Similarly to the change in Fiat (spinnaker/fiat#309) this switches us over to using JedisPoolConfig. This, among other things, lowers the minEvictableIdleTimeMillis to 60 sec from 30 min.

view details

Vignesh Murugesan

commit sha 5280801b5d4140b3ce1b0c4f28d167aceceb887c

fix(resizeServerGroup): Use targetHealthyDeployPercentage when available (#3785) Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

view details

Luis Pollo

commit sha 83961bd77aa2160e0f906602ba0d52a9dc7e1dcd

feat(bake): Toggleable pausing for bake stage (#3787) * feat(bake): Toggleable pausing for bake stage * fix(pr): Better logging statement formatting * fix(tests): Gotta love Groovy * fix(pr): Address review feedback * fix(pr): Address more review feedback * fix(pr): Update class doc. Co-authored-by: Mark Vulfson <markvu@live.com> Co-authored-by: Mark Vulfson <markvu@live.com>

view details

push time in 11 days

created tagspinnaker/keel

tagv0.157.0

Spinnaker's declarative service

created time in 11 days

release spinnaker/keel

v0.157.0

released time in 11 days

push eventrobfletcher/keel

Luis Pollo

commit sha 5fa487f688d61d61d5715bf822e2a81e73fbec89

Add support for NPM artifacts (#1387) * refactor(artifacts): Rename package for consistency * feat(artifacts): Add support for NPM artifacts * feat(artifacts): Generalize processing of incoming artifact events from Echo * fix(tests): Fix ApiDocTests * fix(tests): Fix leaky test * fix(pr): Rename NPM_VERSION_REGEX to NETFLIX_VERSION_REGEX * fix(artifacts): Lookup only relevant statuses for Debian * fix(naming): Fix left-over ArtifactPublisher -> ArtifactSupplier occurrences * fix(pr): Adjust NETFLIX_VERSION_REGEX to match Rocket * fix(pr): Fix broken tests * fix(pr): Add NpmArtifactSupplier to default artifact suppliers * fix(tests): Skip API doc tests until we can fix bean ordering issues * fix(pr): Added FIXMEs on temporarily disabled API doc tests

view details

Gal Yardeni

commit sha fa281b871715ccaf2be10e97e8037c15665a08e2

fix(Comment length): throw bad request if comment length > 256 (#1389) * fix(comment): throw bad request if comment length>256 * adding tests * fix(message): fixing error message to be clearer * fix(message): adding a centrlized validation func * fix(message): shorning comment

view details

Rob Fletcher

commit sha 6db8fe63c9bc8ba2382673f4f3f657c6607e2830

refactor(API): expose resource types to plugins

view details

Rob Fletcher

commit sha a28e8fe9cc87064e0fc34241e7aa088e74dbe916

refactor(API): JSON type info for instance provider

view details

push time in 11 days

push eventrobfletcher/keel

push time in 11 days

push eventrobfletcher/keel

Rob Fletcher

commit sha 65eeb58649bb212b05d145df7537ea433e45c0e3

chore(tests): debug CI test failures

view details

push time in 11 days

Pull request review commentspinnaker/keel

EC2 API enhancements

  * See the License for the specific language governing permissions and  * limitations under the License.  */-package com.netflix.spinnaker.keel.ec2+package com.netflix.spinnaker.keel.api.ec2 -import com.netflix.spinnaker.keel.api.ec2.ApplicationLoadBalancerSpec-import com.netflix.spinnaker.keel.api.ec2.ClassicLoadBalancerSpec-import com.netflix.spinnaker.keel.api.ec2.ClusterSpec-import com.netflix.spinnaker.keel.api.ec2.SecurityGroupSpec import com.netflix.spinnaker.keel.api.ec2.old.ApplicationLoadBalancerV1Spec import com.netflix.spinnaker.keel.api.plugins.kind 

Moved this file to keel-ec2-api so plugins can see it.

robfletcher

comment created time in 12 days

Pull request review commentspinnaker/keel

EC2 API enhancements

+package com.netflix.spinnaker.keel.ec2.jackson.mixins++import com.fasterxml.jackson.annotation.JsonTypeInfo+import com.fasterxml.jackson.annotation.JsonTypeInfo.As+import com.fasterxml.jackson.annotation.JsonTypeInfo.Id++@JsonTypeInfo(use = Id.NAME, include = As.EXISTING_PROPERTY, property = "type")+interface InstanceProviderMixin

Mixin so Jackson is configured for sub-types of this that plugin will provide

robfletcher

comment created time in 12 days

Pull request review commentspinnaker/keel

EC2 API enhancements

 package com.netflix.spinnaker.keel.api.ec2  * Extensible mechanism allowing for abstraction of details of the VM instance (e.g.  * [LaunchConfigurationSpec.instanceType], [LaunchConfigurationSpec.ebsOptimized], etc.)  */-interface InstanceProvider+interface InstanceProvider {+  val type: String+}

Added a discriminator field we can use to identify sub-types

robfletcher

comment created time in 12 days

PR opened spinnaker/keel

EC2 API enhancements
  1. Expose resource kind definitions to plugins
  2. Add @JsonTypeInfo for ImageProvider
+64 -55

0 comment

28 changed files

pr created time in 12 days

create barnchrobfletcher/keel

branch : ec2-api-enhancements

created branch time in 12 days

created tagspinnaker/keel

tagv0.156.0

Spinnaker's declarative service

created time in 14 days

release spinnaker/keel

v0.156.0

released time in 14 days

create barnchrobfletcher/keel

branch : dependency-update-plugin

created branch time in 14 days

push eventrobfletcher/strikt

Rob Fletcher

commit sha 0249ae4c53d461e550dce36b863f8284410a321b

improve dependency regex

view details

push time in 14 days

push eventrobfletcher/strikt

Rob Fletcher

commit sha f938fafc1e094b5da462608406b577cdbf65a6c7

dependency updates

view details

push time in 14 days

push eventrobfletcher/keel

Rob Fletcher

commit sha d6380b421ee10d96e6e76a0a46e2055ff5a0f95f

Use a generated application column on event table (#1378) * refactor(DB): use a generated application column on event table * refactor(DB): change to virtual generated column * refactor(DB): created separate indices

view details

push time in 18 days

delete branch robfletcher/keel

delete branch : event-application-column

delete time in 19 days

Pull request review commentspinnaker/keel

Use a generated application column on event table

+databaseChangeLog:+- changeSet:+    id: add-event-application-column+    author: fletch+    changes:+    - sql:+        sql: |+          alter table event add column application varchar(255) generated always as (json ->> '$.application') stored;+    - createIndex:+        tableName: event+        indexName: event_ref_scope_application_timestamp_idx+        columns:

With my original index: "query_cost": "53658.80" With revised 2 indices: "query_cost": "146.21"

I think you were right @lorin !

robfletcher

comment created time in 19 days

push eventrobfletcher/keel

Rob Fletcher

commit sha f924c9c4e48073c31e8d33aacfa479611de1fb77

refactor(DB): created separate indices

view details

push time in 19 days

Pull request review commentspinnaker/keel

Use a generated application column on event table

+databaseChangeLog:+- changeSet:+    id: add-event-application-column+    author: fletch+    changes:+    - sql:+        sql: |+          alter table event add column application varchar(255) generated always as (json ->> '$.application') stored;

I've changed it to virtual because we never actually select the value from that column, thus there's no point storing the value outside of the index. Testing locally with a dump of real data I could not see any significant difference in time to run the migration. Either way it was sub-second.

robfletcher

comment created time in 19 days

push eventrobfletcher/keel

Rob Fletcher

commit sha f9cde6cce8b854a860faa8c5e72cebe4739e26e3

refactor(DB): change to virtual generated column

view details

push time in 19 days

startedmichaelom/strikt-assertion-generator

started time in 19 days

push eventrobfletcher/keel

Rob Fletcher

commit sha 2a59ef7832f1160a6917406cd1f867f05a574c5d

Refactor cluster spec (#1368) * refactor(cluster): doesn't make sense to have UnhappyControl properties on constructor * refactor(cluster): EC2 cluster artifact type is always DEBIAN * refactor(cluster): No longer need special handling for certain fields in API docs

view details

spinnakerbot

commit sha f54b35d8d8d2caead6c656e55777e3837d23ce28

chore(dependencies): Autobump korkVersion (#1381) Co-authored-by: root <root@e1aaa35720ec>

view details

push time in 19 days

push eventrobfletcher/keel

spinnakerbot

commit sha f54b35d8d8d2caead6c656e55777e3837d23ce28

chore(dependencies): Autobump korkVersion (#1381) Co-authored-by: root <root@e1aaa35720ec>

view details

Rob Fletcher

commit sha 3cd828c01dd151919affccd47c8835a7f88d0f40

refactor(DB): use a generated application column on event table

view details

push time in 19 days

push eventrobfletcher/keel

spinnakerbot

commit sha 30d8c03370349c27eb62d6a4f48a6c50d353d981

chore(dependencies): Autobump korkVersion (#1367) Co-authored-by: root <root@caa32d04095a>

view details

Emily Burns

commit sha c28e7ca89b55870c70ba0cde4f5679de57ded54f

fix(delete): delete without deserialization (#1365)

view details

spinnakerbot

commit sha 4dd253c74f1922703d37f58cc5613ea120fec87a

chore(dependencies): Autobump korkVersion (#1369) Co-authored-by: root <root@1435b8821276>

view details

Luis Pollo

commit sha bd82b06d7a9522fbe7813fec09525c9d2cd7c21f

fix(api): Fix delete delivery config API (#1370)

view details

Lorin Hochstein

commit sha 2aa5443888f7fc25cfeced0a105131edcbf7952b

fix(eureka): revert kork bump and eureka change (#1372) This reverts commit aa2edeecf78b765aa4f9f62822ee49272cd2b94b.

view details

Lorin Hochstein

commit sha 71f5b9369c16b937e250cbbedc3ab86fbc0e53d9

fix(deps): revert fiat version (#1375) Revert fiat version to prevent fiat from bringing in a newer version of kork. We want kork 7.50.0, but fiat-api 1.22.0 brings in kork 7.51.2.

view details

Cameron Fieber

commit sha 1cb2a1d0568585d30dd973233f920243687e23d0

chore(dependencies): replace kork dependencies with kork-runtime (#1374)

view details

Cameron Fieber

commit sha a42fc2de31ddbe522a9dbf5f31c910a0727b6bcf

chore(dependencies): kork 7.53.0 (#1376) Brings kork back up to latest version, reverting some reverts. * Revert "fix(deps): revert fiat version (#1375)" This reverts commit 71f5b9369c16b937e250cbbedc3ab86fbc0e53d9. * Revert "fix(eureka): revert kork bump and eureka change (#1372)" This reverts commit 2aa5443888f7fc25cfeced0a105131edcbf7952b.

view details

Rob Fletcher

commit sha f1ebd0288e741c39c1c0f7126b3053a114857999

fix(API): fix serialization of pinned and vetoed fields (#1377)

view details

Rob Fletcher

commit sha 2a59ef7832f1160a6917406cd1f867f05a574c5d

Refactor cluster spec (#1368) * refactor(cluster): doesn't make sense to have UnhappyControl properties on constructor * refactor(cluster): EC2 cluster artifact type is always DEBIAN * refactor(cluster): No longer need special handling for certain fields in API docs

view details

Rob Fletcher

commit sha b572f573578754de992620305712c6807081c47c

feat(plugins): move some titus stuff around

view details

Rob Fletcher

commit sha e22cfbdd3357b9a4fb3bde459d2408fa348aeeac

feat(plugins): move titus resource spec types to keel-titus-api

view details

Rob Fletcher

commit sha f45109f7d00b5dcdc446f1b513ee2a3816b56611

feat(plugins): got Jackson dependency out of keel-titus-api

view details

Rob Fletcher

commit sha 812d7fef5c2abc2a0a140142457012378f615352

feat(plugins): break titus-api dependency on clouddriver

view details

Rob Fletcher

commit sha c70a860e3fbe778225a55235ae31b7bd9426b535

fix(titus): handle environment-level locations

view details

push time in 19 days

Pull request review commentspinnaker/keel

Use a generated application column on event table

+databaseChangeLog:+- changeSet:+    id: add-event-application-column+    author: fletch+    changes:+    - sql:+        sql: |+          alter table event add column application varchar(255) generated always as (json ->> '$.application') stored;+    - createIndex:+        tableName: event+        indexName: event_ref_scope_application_timestamp_idx+        columns:

That's how I always thought indices worked but @marchello2000 suggested that queries can benefit from using a subset of the columns in an index. Would be interested in his take on this.

robfletcher

comment created time in 19 days

Pull request review commentspinnaker/keel

Use a generated application column on event table

+databaseChangeLog:+- changeSet:+    id: add-event-application-column+    author: fletch+    changes:+    - sql:+        sql: |+          alter table event add column application varchar(255) generated always as (json ->> '$.application') stored;+    - createIndex:+        tableName: event+        indexName: event_ref_scope_application_timestamp_idx+        columns:+        - column:+            name: ref+        - column:+            name: scope+        - column:+            name: application+        - column:+            name: timestamp+            descending: true+    - dropIndex:+        tableName: event+        indexName: event_uid_scope_timestamp_idx+    rollback:

You get auto-rollback when you use Liquibase's defined migration types

robfletcher

comment created time in 19 days

Pull request review commentspinnaker/keel

Use a generated application column on event table

+databaseChangeLog:+- changeSet:+    id: add-event-application-column+    author: fletch+    changes:+    - sql:+        sql: |+          alter table event add column application varchar(255) generated always as (json ->> '$.application') stored;

Good question. Running a query to extract that data from the event table takes under a second so I don't think there should be any significant impact.

robfletcher

comment created time in 19 days

push eventrobfletcher/dotfiles

Rob Fletcher

commit sha b628a77686d1e4f94e07fe19eea3bdd5b09e7ec3

git recent

view details

push time in 19 days

push eventrobfletcher/dotfiles

Rob Fletcher

commit sha 85ee44eb3e00f8337cd8ac9da31c9012dfcd8a03

better sync output

view details

push time in 19 days

push eventrobfletcher/keel

Rob Fletcher

commit sha 2a59ef7832f1160a6917406cd1f867f05a574c5d

Refactor cluster spec (#1368) * refactor(cluster): doesn't make sense to have UnhappyControl properties on constructor * refactor(cluster): EC2 cluster artifact type is always DEBIAN * refactor(cluster): No longer need special handling for certain fields in API docs

view details

Rob Fletcher

commit sha 869a8af89ec8aa93647bc332f4f97eb3e6720817

refactor(DB): use a generated application column on event table

view details

push time in 20 days

delete branch robfletcher/keel

delete branch : refactor-cluster-spec

delete time in 20 days

Pull request review commentspinnaker/keel

Use a generated application column on event table

+databaseChangeLog:+- changeSet:+    id: add-event-application-column+    author: fletch+    changes:+    - sql:+        sql: |+          alter table event add column application varchar(255) generated always as (json ->> '$.application') stored;+    - createIndex:+        tableName: event+        indexName: event_ref_scope_application_timestamp_idx+        columns:+        - column:+            name: ref+        - column:+            name: scope+        - column:+            name: application+        - column:+            name: timestamp+            descending: true+    - dropIndex:+        tableName: event+        indexName: event_uid_scope_timestamp_idx

Drop the old index that has one fewer columns

robfletcher

comment created time in 20 days

Pull request review commentspinnaker/keel

Use a generated application column on event table

+databaseChangeLog:+- changeSet:+    id: add-event-application-column+    author: fletch+    changes:+    - sql:+        sql: |+          alter table event add column application varchar(255) generated always as (json ->> '$.application') stored;+    - createIndex:+        tableName: event+        indexName: event_ref_scope_application_timestamp_idx+        columns:+        - column:+            name: ref+        - column:+            name: scope+        - column:+            name: application+        - column:+            name: timestamp+            descending: true

Create a new index the relevant queries can use

robfletcher

comment created time in 20 days

Pull request review commentspinnaker/keel

Use a generated application column on event table

+databaseChangeLog:+- changeSet:+    id: add-event-application-column+    author: fletch+    changes:+    - sql:+        sql: |+          alter table event add column application varchar(255) generated always as (json ->> '$.application') stored;

See https://www.compose.com/articles/mysql-for-json-generated-columns-and-indexing/

I'm not sure we really need to use stored since the column will be part of an index. Any opinions?

robfletcher

comment created time in 20 days

Pull request review commentspinnaker/keel

Use a generated application column on event table

 open class SqlResourceRepository(   private val sqlRetry: SqlRetry ) : ResourceRepository { -  companion object {-    val EVENT_JSON_APPLICATION: Field<String> = field("json->'$.application'")-  }

I'm basically replacing this with an actual column

robfletcher

comment created time in 20 days

push eventrobfletcher/keel

Rob Fletcher

commit sha 244bebdf5379d2d4c2517803465038a354aaf9dc

refactor(DB): use a generated application column on event table

view details

push time in 20 days

PR opened spinnaker/keel

Use a generated application column on event table

See #1359

+17 -7

0 comment

3 changed files

pr created time in 20 days

create barnchrobfletcher/keel

branch : event-application-column

created branch time in 20 days

push eventrobfletcher/keel

Lorin Hochstein

commit sha 71f5b9369c16b937e250cbbedc3ab86fbc0e53d9

fix(deps): revert fiat version (#1375) Revert fiat version to prevent fiat from bringing in a newer version of kork. We want kork 7.50.0, but fiat-api 1.22.0 brings in kork 7.51.2.

view details

Cameron Fieber

commit sha 1cb2a1d0568585d30dd973233f920243687e23d0

chore(dependencies): replace kork dependencies with kork-runtime (#1374)

view details

Cameron Fieber

commit sha a42fc2de31ddbe522a9dbf5f31c910a0727b6bcf

chore(dependencies): kork 7.53.0 (#1376) Brings kork back up to latest version, reverting some reverts. * Revert "fix(deps): revert fiat version (#1375)" This reverts commit 71f5b9369c16b937e250cbbedc3ab86fbc0e53d9. * Revert "fix(eureka): revert kork bump and eureka change (#1372)" This reverts commit 2aa5443888f7fc25cfeced0a105131edcbf7952b.

view details

Rob Fletcher

commit sha f1ebd0288e741c39c1c0f7126b3053a114857999

fix(API): fix serialization of pinned and vetoed fields (#1377)

view details

Rob Fletcher

commit sha 0840c1c769f1f471db0a85182d08b9c7374ec8cf

refactor(cluster): doesn't make sense to have UnhappyControl properties on constructor

view details

Rob Fletcher

commit sha f3499c8b8a55e059b3e1e352601e827b0ecfbc97

refactor(cluster): EC2 cluster artifact type is always DEBIAN

view details

Rob Fletcher

commit sha 0b2b619a156f74990ce902f6be0d7e77cbbdfb66

refactor(cluster): No longer need special handling for certain fields in API docs

view details

push time in 20 days

push eventrobfletcher/keel

Lorin Hochstein

commit sha 71f5b9369c16b937e250cbbedc3ab86fbc0e53d9

fix(deps): revert fiat version (#1375) Revert fiat version to prevent fiat from bringing in a newer version of kork. We want kork 7.50.0, but fiat-api 1.22.0 brings in kork 7.51.2.

view details

Cameron Fieber

commit sha 1cb2a1d0568585d30dd973233f920243687e23d0

chore(dependencies): replace kork dependencies with kork-runtime (#1374)

view details

Cameron Fieber

commit sha a42fc2de31ddbe522a9dbf5f31c910a0727b6bcf

chore(dependencies): kork 7.53.0 (#1376) Brings kork back up to latest version, reverting some reverts. * Revert "fix(deps): revert fiat version (#1375)" This reverts commit 71f5b9369c16b937e250cbbedc3ab86fbc0e53d9. * Revert "fix(eureka): revert kork bump and eureka change (#1372)" This reverts commit 2aa5443888f7fc25cfeced0a105131edcbf7952b.

view details

Rob Fletcher

commit sha f1ebd0288e741c39c1c0f7126b3053a114857999

fix(API): fix serialization of pinned and vetoed fields (#1377)

view details

push time in 20 days

delete branch robfletcher/keel

delete branch : fix-pinned-vetoed-serialization

delete time in 20 days

pull request commentspinnaker/keel

Fix serialization of pinned and vetoed fields

Yep looks right to me - thanks for getting it resolved! I'm hopeful there is a way to prevent backend folks from having to deal with this property overriding business in the future 🤞

Yeah, I think I'm going to raise an issue on the jackson-module-kotlin repo

robfletcher

comment created time in 20 days

pull request commentspinnaker/keel

Fix serialization of pinned and vetoed fields

@erikmunson does this look like the format that will un-fuck the environments view?

robfletcher

comment created time in 20 days

pull request commentspinnaker/keel

Fix serialization of pinned and vetoed fields

There was a change made in a recent version of Jackson so that those field definitions conflict. It started serializing pinned as isPinned and because there was already an isPinned property, one overrode the other.

The change in behavior seems to have be prompted by this issue: https://github.com/FasterXML/jackson-module-kotlin/issues/80 unfortunately the "fix" was a breaking change. The only way I could successfully get both properties to serialize was to annotate each twice with @JsonProperty (once on the property itself, once on the getter, i.e. using @get:JsonProperty syntax). Anything less that 2 annotations on each property either results in one property overriding the other in the serialized output, or Jackson throwing an exception because it detects the ambiguity.

robfletcher

comment created time in 20 days

push eventrobfletcher/keel

Rob Fletcher

commit sha 08371c3a1acc3202af87c98d1290dc652012f3ef

fix(API): fix serialization of pinned and vetoed fields

view details

push time in 20 days

Pull request review commentspinnaker/keel

Fix serialization of pinned and vetoed fields

 abstract class ArtifactRepositoryTests<T : ArtifactRepository> : JUnit5Minutests             )             expect {               that(envArtifactSummary).isNotNull()-              that(envArtifactSummary?.isPinned).isTrue()

The next line does an isEqualTo on the same field so testing it's not null explicitly doesn't really add anything.

robfletcher

comment created time in 20 days

Pull request review commentspinnaker/keel

Fix serialization of pinned and vetoed fields

+package com.netflix.spinnaker.keel.serialization++import com.fasterxml.jackson.databind.node.ObjectNode+import com.netflix.spinnaker.keel.core.api.ActionMetadata+import com.netflix.spinnaker.keel.core.api.ArtifactSummaryInEnvironment+import dev.minutest.junit.JUnit5Minutests+import dev.minutest.rootContext+import java.time.Instant.now+import strikt.api.expectThat+import strikt.jackson.at+import strikt.jackson.has+import strikt.jackson.isObject+import strikt.jackson.path++class BooleanPropertySerializationTests : JUnit5Minutests {

Yes, I'll do that. Good point.

robfletcher

comment created time in 20 days

push eventrobfletcher/keel

Lorin Hochstein

commit sha 71f5b9369c16b937e250cbbedc3ab86fbc0e53d9

fix(deps): revert fiat version (#1375) Revert fiat version to prevent fiat from bringing in a newer version of kork. We want kork 7.50.0, but fiat-api 1.22.0 brings in kork 7.51.2.

view details

Cameron Fieber

commit sha 1cb2a1d0568585d30dd973233f920243687e23d0

chore(dependencies): replace kork dependencies with kork-runtime (#1374)

view details

Cameron Fieber

commit sha a42fc2de31ddbe522a9dbf5f31c910a0727b6bcf

chore(dependencies): kork 7.53.0 (#1376) Brings kork back up to latest version, reverting some reverts. * Revert "fix(deps): revert fiat version (#1375)" This reverts commit 71f5b9369c16b937e250cbbedc3ab86fbc0e53d9. * Revert "fix(eureka): revert kork bump and eureka change (#1372)" This reverts commit 2aa5443888f7fc25cfeced0a105131edcbf7952b.

view details

Rob Fletcher

commit sha e657d99a0cbb53d1f34bf6fe64a15d10d9afbc7d

fix(API): fix serialization of pinned and vetoed fields

view details

push time in 21 days

PR opened spinnaker/keel

Fix serialization of pinned and vetoed fields

Fixes serialization of fields in artifact/environment summary. Instead of boolean fields and objects now there are just the objects.

+36 -7

0 comment

3 changed files

pr created time in 21 days

create barnchrobfletcher/keel

branch : fix-pinned-vetoed-serialization

created branch time in 21 days

push eventrobfletcher/keel

Luis Pollo

commit sha d0b83ce4aa2896bb556fd1d1ba37a3ee3a25a048

fix(resources): Register ALB v1.1 resource kind (#1358)

view details

Rob Fletcher

commit sha 616efa90054bdf44ae42a4757c23231b43b713db

chore(dependencies): Upgrade kork, and fix stuff it breaks (#1362)

view details

Emily Burns

commit sha d8f8106c00a21179d32888e7bbd10baea385b48f

feat(docker): don't allow a/a/a format (#1361)

view details

Rob Zienert

commit sha aa2edeecf78b765aa4f9f62822ee49272cd2b94b

refactor(eureka): Bump kork; remove keel-eureka (#1360)

view details

Rob Fletcher

commit sha 70247158686554bf6d6b546792f0349f1e381de6

fix(clusters): Fix environment level locations for clusters (#1364)

view details

spinnakerbot

commit sha 947aab247b324838eeb4bd7a2fb206ea34030be7

chore(dependencies): Autobump fiatVersion (#1366) Co-authored-by: root <root@d0c358514126>

view details

spinnakerbot

commit sha 30d8c03370349c27eb62d6a4f48a6c50d353d981

chore(dependencies): Autobump korkVersion (#1367) Co-authored-by: root <root@caa32d04095a>

view details

Emily Burns

commit sha c28e7ca89b55870c70ba0cde4f5679de57ded54f

fix(delete): delete without deserialization (#1365)

view details

spinnakerbot

commit sha 4dd253c74f1922703d37f58cc5613ea120fec87a

chore(dependencies): Autobump korkVersion (#1369) Co-authored-by: root <root@1435b8821276>

view details

Luis Pollo

commit sha bd82b06d7a9522fbe7813fec09525c9d2cd7c21f

fix(api): Fix delete delivery config API (#1370)

view details

Lorin Hochstein

commit sha 2aa5443888f7fc25cfeced0a105131edcbf7952b

fix(eureka): revert kork bump and eureka change (#1372) This reverts commit aa2edeecf78b765aa4f9f62822ee49272cd2b94b.

view details

push time in 21 days

push eventrobfletcher/keel

Lorin Hochstein

commit sha 2aa5443888f7fc25cfeced0a105131edcbf7952b

fix(eureka): revert kork bump and eureka change (#1372) This reverts commit aa2edeecf78b765aa4f9f62822ee49272cd2b94b.

view details

Rob Fletcher

commit sha d70391a04dae108888ef5677960175ca961aa326

refactor(cluster): doesn't make sense to have UnhappyControl properties on constructor

view details

Rob Fletcher

commit sha 6cf9a8dc330021500e6681ca8239a23619370ceb

refactor(cluster): EC2 cluster artifact type is always DEBIAN

view details

Rob Fletcher

commit sha 54a213b3d17f1fcc6c8b497aacd40d954c72c257

refactor(cluster): No longer need special handling for certain fields in API docs

view details

push time in 21 days

push eventrobfletcher/keel

spinnakerbot

commit sha 4dd253c74f1922703d37f58cc5613ea120fec87a

chore(dependencies): Autobump korkVersion (#1369) Co-authored-by: root <root@1435b8821276>

view details

Luis Pollo

commit sha bd82b06d7a9522fbe7813fec09525c9d2cd7c21f

fix(api): Fix delete delivery config API (#1370)

view details

Rob Fletcher

commit sha 88047e4e9a8af5fa2608604698a971040a2e795d

refactor(cluster): doesn't make sense to have UnhappyControl properties on constructor

view details

Rob Fletcher

commit sha cd4d365889710237eca6c35173c89991e7d939a6

refactor(cluster): EC2 cluster artifact type is always DEBIAN

view details

Rob Fletcher

commit sha 938caa7d72f15ca2863458895bb1033b6650aab7

refactor(cluster): No longer need special handling for certain fields in API docs

view details

push time in 21 days

push eventrobfletcher/keel

spinnakerbot

commit sha 30d8c03370349c27eb62d6a4f48a6c50d353d981

chore(dependencies): Autobump korkVersion (#1367) Co-authored-by: root <root@caa32d04095a>

view details

Emily Burns

commit sha c28e7ca89b55870c70ba0cde4f5679de57ded54f

fix(delete): delete without deserialization (#1365)

view details

Rob Fletcher

commit sha 4332a644c056609368d2db380df48eb4fc2aca7c

refactor(cluster): doesn't make sense to have UnhappyControl properties on constructor

view details

Rob Fletcher

commit sha c61f8f884dc040786f0eaf4ca71c59128b628657

refactor(cluster): EC2 cluster artifact type is always DEBIAN

view details

Rob Fletcher

commit sha 50c0df11f247712564b0356df39d779002f91853

refactor(cluster): No longer need special handling for certain fields in API docs

view details

push time in 24 days

PR opened spinnaker/keel

Refactor cluster spec

I'm trying to eliminate the need for a custom deserializer. Also found a couple of other things:

  1. There's no need to expose properties from UnhappyControl in the constructor.
  2. Likewise for artifactType -- it is always DEBIAN.
+7 -24

0 comment

3 changed files

pr created time in 24 days

push eventrobfletcher/keel

Rob Fletcher

commit sha f4208063b45135a2f4d577e20f765add36a277ba

refactor(cluster): doesn't make sense to have UnhappyControl properties on constructor

view details

Rob Fletcher

commit sha c312f804cb9bec203dca6dd1df48b7520c4e48fb

refactor(cluster): EC2 cluster artifact type is always DEBIAN

view details

Rob Fletcher

commit sha 5d0240a731c08558297ea4540227dd16811a576a

refactor(cluster): No longer need special handling for certain fields in API docs

view details

push time in 24 days

create barnchrobfletcher/keel

branch : refactor-cluster-spec

created branch time in 24 days

Pull request review commentspinnaker/keel

fix(delete): delete without serialization

 abstract class DeliveryConfigRepositoryTests<T : DeliveryConfigRepository, R : R     }      fun delete() {-      repository.deleteByApplication(deliveryConfig.application)+      repository.deleteWithoutSerialization(deliveryConfig.application)

Shouldn't we just remove this side effect without necessarily calling it out in the name of the function?

emjburns

comment created time in 24 days

push eventrobfletcher/keel

spinnakerbot

commit sha 947aab247b324838eeb4bd7a2fb206ea34030be7

chore(dependencies): Autobump fiatVersion (#1366) Co-authored-by: root <root@d0c358514126>

view details

Rob Fletcher

commit sha 7264b26959d2d859a7389c4a5688e945c72e85be

feat(plugins): move some titus stuff around

view details

Rob Fletcher

commit sha 34a2615f33c83eb7711a4c09afd123afd3047481

feat(plugins): move titus resource spec types to keel-titus-api

view details

Rob Fletcher

commit sha 51f645ecd8f588132c79c3a82e70ab4ebe48bf9f

feat(plugins): got Jackson dependency out of keel-titus-api

view details

Rob Fletcher

commit sha 69a7d9d9e006d5990147027f2e0b26fa597cfb3a

feat(plugins): break titus-api dependency on clouddriver

view details

Rob Fletcher

commit sha c8eb54f72ec60c3875167ae8384913f59a3a03dd

fix(titus): handle environment-level locations

view details

push time in 24 days

push eventrobfletcher/keel

Rob Fletcher

commit sha 70247158686554bf6d6b546792f0349f1e381de6

fix(clusters): Fix environment level locations for clusters (#1364)

view details

Rob Fletcher

commit sha 0923048a8725c9d7819c7a6c9fcd849b2cc44b07

feat(plugins): move some titus stuff around

view details

Rob Fletcher

commit sha 76bc47da61027190efa988faf7e5f3f061cc3614

feat(plugins): move titus resource spec types to keel-titus-api

view details

Rob Fletcher

commit sha 2194a11175eba2213896d939a7f68279536a5893

feat(plugins): got Jackson dependency out of keel-titus-api

view details

Rob Fletcher

commit sha 17294f8ddc4c6a184bf28c3d25579a79fc660482

feat(plugins): break titus-api dependency on clouddriver

view details

Rob Fletcher

commit sha 82db2750ba29526508e927d946043e750f36e3b4

fix(titus): handle environment-level locations

view details

push time in 24 days

push eventrobfletcher/keel

Luis Pollo

commit sha d0b83ce4aa2896bb556fd1d1ba37a3ee3a25a048

fix(resources): Register ALB v1.1 resource kind (#1358)

view details

Rob Fletcher

commit sha 616efa90054bdf44ae42a4757c23231b43b713db

chore(dependencies): Upgrade kork, and fix stuff it breaks (#1362)

view details

Emily Burns

commit sha d8f8106c00a21179d32888e7bbd10baea385b48f

feat(docker): don't allow a/a/a format (#1361)

view details

Rob Zienert

commit sha aa2edeecf78b765aa4f9f62822ee49272cd2b94b

refactor(eureka): Bump kork; remove keel-eureka (#1360)

view details

Rob Fletcher

commit sha b755f63405410ac8e6d657cc2d2dd93950e7d805

feat(plugins): move some titus stuff around

view details

Rob Fletcher

commit sha 20bbe83124b632633b6440cb951939943e5e058d

feat(plugins): move titus resource spec types to keel-titus-api

view details

Rob Fletcher

commit sha 5ff67d3a66107f171f577bf5e9319fcb38d8c9ad

feat(plugins): got Jackson dependency out of keel-titus-api

view details

Rob Fletcher

commit sha c0b8e669802f037fa365904e9f6bd24e16c00713

feat(plugins): break titus-api dependency on clouddriver

view details

push time in 24 days

Pull request review commentspinnaker/keel

Fix environment level locations for clusters

 class ClusterSpecDeserializer : StdNodeBasedDeserializer<ClusterSpec>(ClusterSpe       )     } +  private fun DeserializationContext.findInjectableLocations() =+    findInjectableValue("locations", BeanProperty.Bogus(), null) as SubnetAwareLocations?

In SubmittedEnvironmentDeserializer we store locations (if it is defined there) in this injectable values thing. This retrieves it. For most resource specs we do this with @JacksonInject (see LocatableMixin). The problem @emjburns discovered yesterday where our delivery config was not being imported was because that annotation wasn't working for ClusterSpec resources because we're now using a custom deserializer.

Long term, I'd like to figure out how to not need to use the custom deserializer but that's going to take a little longer.

robfletcher

comment created time in 24 days

push eventrobfletcher/keel

Rob Zienert

commit sha aa2edeecf78b765aa4f9f62822ee49272cd2b94b

refactor(eureka): Bump kork; remove keel-eureka (#1360)

view details

Rob Fletcher

commit sha a94eb2f18cf4d8ede42a312c1594a04253b3baad

fix(clusters): Fix environment level locations for clusters

view details

push time in 24 days

PR opened spinnaker/keel

Fix environment level locations for clusters

Using a custom deserializer for ClusterSpec broke assignment of locations based on the environment.

+41 -12

0 comment

2 changed files

pr created time in 25 days

create barnchrobfletcher/keel

branch : fix-cluster-spec-locations

created branch time in 25 days

delete branch robfletcher/keel

delete branch : kork-upgrade

delete time in 25 days

PR closed spinnaker/keel

chore(dependencies): Autobump korkVersion autobump-korkVersion
+1 -1

0 comment

1 changed file

spinnakerbot

pr closed time in 25 days

Pull request review commentspinnaker/keel

refactor(eureka): Bump kork; remove keel-eureka

-package com.netflix.spinnaker.keel.eureka+package com.netflix.spinnaker.keel.activation -import com.netflix.appinfo.InstanceInfo.InstanceStatus.UP-import com.netflix.spinnaker.keel.activation.ApplicationDown-import com.netflix.spinnaker.keel.activation.ApplicationUp-import com.netflix.spinnaker.kork.eureka.RemoteStatusChangedEvent+import com.netflix.spinnaker.kork.discovery.InstanceStatus.UP+import com.netflix.spinnaker.kork.discovery.RemoteStatusChangedEvent import org.slf4j.LoggerFactory import org.springframework.context.ApplicationEventPublisher import org.springframework.context.ApplicationListener+import org.springframework.stereotype.Component +@Component class DiscoveryActivator(

Oh sweet. I think we just created our own event types to decouple things from directly depending on Eureka. I'll see if I can get rid of this class.

robzienert

comment created time in 25 days

Pull request review commentspinnaker/keel

refactor(eureka): Bump kork; remove keel-eureka

-package com.netflix.spinnaker.keel.eureka+package com.netflix.spinnaker.keel.activation -import com.netflix.appinfo.InstanceInfo.InstanceStatus.UP-import com.netflix.spinnaker.keel.activation.ApplicationDown-import com.netflix.spinnaker.keel.activation.ApplicationUp-import com.netflix.spinnaker.kork.eureka.RemoteStatusChangedEvent+import com.netflix.spinnaker.kork.discovery.InstanceStatus.UP+import com.netflix.spinnaker.kork.discovery.RemoteStatusChangedEvent import org.slf4j.LoggerFactory import org.springframework.context.ApplicationEventPublisher import org.springframework.context.ApplicationListener+import org.springframework.stereotype.Component +@Component class DiscoveryActivator(

How does this continue to work? What happens when running locally and there's no Eureka?

robzienert

comment created time in 25 days

push eventrobfletcher/keel

Luis Pollo

commit sha d0b83ce4aa2896bb556fd1d1ba37a3ee3a25a048

fix(resources): Register ALB v1.1 resource kind (#1358)

view details

Rob Fletcher

commit sha 75de781323101b0c66e34f2a76de42df5c3e91c0

chore(dependencies): Upgrade kork, and fix stuff it breaks

view details

push time in 25 days

PR opened spinnaker/keel

Upgrade kork, and fix stuff it breaks

Apparently behavior around boolean properties in API docs changed

+2 -14

0 comment

2 changed files

pr created time in 25 days

create barnchrobfletcher/keel

branch : kork-upgrade

created branch time in 25 days

issue openedspinnaker/keel

Improve SQL performance of querying event by application

May make sense to use a generated column to denormalize application on the event table. See https://www.compose.com/articles/mysql-for-json-generated-columns-and-indexing/

created time in 25 days

push eventrobfletcher/keel

Cameron Fieber

commit sha 1218c94aba3cfd89128b927f22a0d9e5c467acfc

chore(build): gradle 6.5.1 (#1354)

view details

spinnakerbot

commit sha 8fcf1dfc7634ef19a2fca7b701e374ae8734b84a

chore(dependencies): Autobump spinnakerGradleVersion (#1355) Co-authored-by: root <root@68a551283b83>

view details

Rob Fletcher

commit sha 83e75f3fe9ab8f9dcd1c53d09f38b7a1b67360bf

Update JOOQ Modelator plugin (#1356) * chore(build): update jooq modelator plugin * chore(build): update Liquibase plugin

view details

push time in a month

more