Skip to content

Commit

Permalink
chore(sql): replace SqlInstrumentedExecutionRepository
Browse files Browse the repository at this point in the history
with kork-sql's automagic InstrumentedProxy
  • Loading branch information
dreynaud committed Nov 14, 2019
1 parent 7acad78 commit 98ec538
Show file tree
Hide file tree
Showing 6 changed files with 30 additions and 295 deletions.
1 change: 1 addition & 0 deletions orca-core/orca-core.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ dependencies {
api("com.netflix.spinnaker.kork:kork-exceptions")
api("com.netflix.spinnaker.kork:kork-expressions")
api("com.netflix.spinnaker.kork:kork-plugins")
api("com.netflix.spinnaker.kork:kork-telemetry")
api("io.reactivex:rxjava")

implementation(project(":orca-api"))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@

import static java.util.stream.Collectors.toList;

import com.netflix.spinnaker.kork.telemetry.Instrumented;
import com.netflix.spinnaker.orca.ExecutionStatus;
import com.netflix.spinnaker.orca.pipeline.model.Execution;
import com.netflix.spinnaker.orca.pipeline.model.Execution.ExecutionType;
Expand All @@ -38,6 +39,7 @@ public interface ExecutionRepository {

void addStage(@Nonnull Stage stage);

@Instrumented(metricName = "cancelNullReason")
void cancel(@Nonnull ExecutionType type, @Nonnull String id);

void cancel(
Expand All @@ -48,6 +50,7 @@ void cancel(

void pause(@Nonnull ExecutionType type, @Nonnull String id, @Nullable String user);

@Instrumented(metricName = "resumeNoIgnore")
void resume(@Nonnull ExecutionType type, @Nonnull String id, @Nullable String user);

void resume(
Expand All @@ -61,15 +64,18 @@ void resume(
void updateStatus(ExecutionType type, @Nonnull String id, @Nonnull ExecutionStatus status);

@Nonnull
@Instrumented(metricName = "retrieveById")
Execution retrieve(@Nonnull ExecutionType type, @Nonnull String id)
throws ExecutionNotFoundException;

void delete(@Nonnull ExecutionType type, @Nonnull String id);

@Nonnull
@Instrumented(metricName = "retrieveByType")
Observable<Execution> retrieve(@Nonnull ExecutionType type);

@Nonnull
@Instrumented(metricName = "retrieveByCriteria")
Observable<Execution> retrieve(@Nonnull ExecutionType type, @Nonnull ExecutionCriteria criteria);

@Nonnull
Expand Down Expand Up @@ -110,6 +116,7 @@ List<Execution> retrieveAllPipelinesForPipelineConfigIdsBetweenBuildTimeBoundary

@Deprecated // Use the non-rx interface instead
@Nonnull
@Instrumented(metricName = "retrieveOrchestrationsForApplicationSortedAsc")
Observable<Execution> retrieveOrchestrationsForApplication(
@Nonnull String application, @Nonnull ExecutionCriteria criteria);

Expand Down Expand Up @@ -141,6 +148,7 @@ Execution retrievePipelineForCorrelationId(@Nonnull String correlationId)
List<String> retrieveAllApplicationNames(@Nullable ExecutionType executionType);

@Nonnull
@Instrumented(metricName = "retrieveAllApplicationNamesWithMinExecutions")
List<String> retrieveAllApplicationNames(
@Nullable ExecutionType executionType, int minExecutions);

Expand Down
1 change: 1 addition & 0 deletions orca-sql/orca-sql.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ dependencies {
implementation(project(":orca-queue"))

implementation("com.netflix.spinnaker.kork:kork-sql")
implementation("com.netflix.spinnaker.kork:kork-telemetry")
implementation("com.netflix.spectator:spectator-api")
implementation("com.netflix.spinnaker.keiko:keiko-core:$keikoVersion")
implementation("com.netflix.spinnaker.kork:kork-core")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,14 @@ import com.netflix.spectator.api.Registry
import com.netflix.spinnaker.kork.dynamicconfig.DynamicConfigService
import com.netflix.spinnaker.kork.sql.config.DefaultSqlConfiguration
import com.netflix.spinnaker.kork.sql.config.SqlProperties
import com.netflix.spinnaker.kork.telemetry.InstrumentedProxy
import com.netflix.spinnaker.orca.notifications.NotificationClusterLock
import com.netflix.spinnaker.orca.notifications.SqlNotificationClusterLock
import com.netflix.spinnaker.orca.pipeline.persistence.ExecutionRepository
import com.netflix.spinnaker.orca.sql.SpringLiquibaseProxy
import com.netflix.spinnaker.orca.sql.SqlHealthIndicator
import com.netflix.spinnaker.orca.sql.SqlHealthcheckActivator
import com.netflix.spinnaker.orca.sql.pipeline.persistence.SqlExecutionRepository
import com.netflix.spinnaker.orca.sql.telemetry.SqlInstrumentedExecutionRepository
import liquibase.integration.spring.SpringLiquibase
import org.jooq.DSLContext
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean
Expand Down Expand Up @@ -58,17 +59,16 @@ class SqlConfiguration {
properties: SqlProperties,
orcaSqlProperties: OrcaSqlProperties
) =
SqlInstrumentedExecutionRepository(
SqlExecutionRepository(
orcaSqlProperties.partitionName,
dsl,
mapper,
properties.retries.transactions,
orcaSqlProperties.batchReadSize,
orcaSqlProperties.stageReadSize
),
registry
)
SqlExecutionRepository(
orcaSqlProperties.partitionName,
dsl,
mapper,
properties.retries.transactions,
orcaSqlProperties.batchReadSize,
orcaSqlProperties.stageReadSize
).let {
InstrumentedProxy.proxy(registry, it, "sql.executionRepository", mapOf()) as ExecutionRepository
}

@Bean fun sqlHealthcheckActivator(dsl: DSLContext, registry: Registry) =
SqlHealthcheckActivator(dsl, registry)
Expand Down

This file was deleted.

Loading

0 comments on commit 98ec538

Please sign in to comment.