Skip to content

DLS-9829 Upgrade Bootstrap #182

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Jan 30, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions app/uk/gov/hmrc/helptosaveapi/auth/Auth.scala
Original file line number Diff line number Diff line change
Expand Up @@ -23,16 +23,15 @@ import uk.gov.hmrc.auth.core.retrieve.Retrieval
import uk.gov.hmrc.helptosaveapi.util.Logging
import uk.gov.hmrc.play.bootstrap.backend.controller.BackendController

import scala.concurrent.Future
import scala.concurrent.ExecutionContext.Implicits.global
import scala.concurrent.{ExecutionContext, Future}

trait Auth extends AuthorisedFunctions { this: BackendController with Logging =>

val authProviders: AuthProviders = AuthProviders(GovernmentGateway, PrivilegedApplication)

type HtsAction[A] = Request[AnyContent] => A => Future[Result]

def authorised[A](retrievals: Retrieval[A])(action: HtsAction[A]): Action[AnyContent] =
def authorised[A](retrievals: Retrieval[A])(action: HtsAction[A])(implicit ec: ExecutionContext): Action[AnyContent] =
Action.async { implicit request =>
authorised(authProviders)
.retrieve(retrievals) { action(request) }
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ class HelpToSaveController @Inject() (
)
helpToSaveApiService.createAccountUserRestricted(request, retrievedDetails).map(handleResult)
}
}(request)
}(ec)(request)

case Left(e) =>
logger.warn(s"Received create account request with unsupported credentials provider type: $e")
Expand All @@ -115,7 +115,7 @@ class HelpToSaveController @Inject() (
case Right(UserRestricted) =>
authorised(v2Nino) { _ =>
_.fold[Future[Result]](Forbidden)(getEligibility(_, correlationId))
}(request)
}(ec)(request)

case Right(PrivilegedAccess) =>
logger.warn(
Expand Down Expand Up @@ -158,7 +158,7 @@ class HelpToSaveController @Inject() (
Forbidden
}
}
}(request)
}(ec)(request)

case Right(PrivilegedAccess) =>
getEligibility(urlNino, correlationId)
Expand Down
46 changes: 2 additions & 44 deletions conf/application.conf
Original file line number Diff line number Diff line change
Expand Up @@ -21,23 +21,6 @@ appName=help-to-save-api

play.filters.enabled += "play.filters.headers.SecurityHeadersFilter"

# An ApplicationLoader that uses Guice to bootstrap the application.
play.application.loader = "uk.gov.hmrc.play.bootstrap.ApplicationLoader"

# Primary entry point for all HTTP requests on Play applications
play.http.requestHandler = "uk.gov.hmrc.play.bootstrap.http.RequestHandler"

# Provides an implementation of AuditConnector. Use `uk.gov.hmrc.play.bootstrap.AuditModule` or create your own.
# An audit connector must be provided.
play.modules.enabled += "uk.gov.hmrc.play.audit.AuditModule"

# Provides an implementation of MetricsFilter. Use `uk.gov.hmrc.play.graphite.GraphiteMetricsModule` or create your own.
# A metric filter must be provided
play.modules.enabled += "uk.gov.hmrc.play.bootstrap.graphite.GraphiteMetricsModule"

# Provides an implementation and configures all filters required by a Platform frontend microservice.
play.modules.enabled += "uk.gov.hmrc.play.bootstrap.backend.BackendModule"

play.modules.enabled += "uk.gov.hmrc.play.bootstrap.AuthModule"

play.modules.enabled += "uk.gov.hmrc.play.bootstrap.HttpClientModule"
Expand Down Expand Up @@ -97,38 +80,13 @@ controllers {
# evolutionplugin=disabled

# Metrics plugin settings - graphite reporting is configured on a per env basis
metrics {
name = ${appName}
rateUnit = SECONDS
durationUnit = SECONDS
showSamples = true
jvm = true
enabled = true
}

metrics.enabled = true

# Microservice specific config

auditing {
enabled=true
consumer {
baseUri {
host = localhost
port = 8100
}
}
}
auditing.enabled = true

microservice {
metrics {
graphite {
host = graphite
port = 2003
prefix = play.${appName}.
enabled = false
}
}

services {

auth {
Expand Down
2 changes: 1 addition & 1 deletion project/AppDependencies.scala
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import sbt.*
object AppDependencies {

val hmrc = "uk.gov.hmrc"
val hmrcBootstrapVersion = "5.25.0"
val hmrcBootstrapVersion = "7.23.0"

val compile: Seq[ModuleID] = Seq(
ws,
Expand Down
2 changes: 1 addition & 1 deletion project/plugins.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ addSbtPlugin("uk.gov.hmrc" %% "sbt-auto-build" % "3.20.0")

addSbtPlugin("uk.gov.hmrc" %% "sbt-distributables" % "2.2.0")

addSbtPlugin("com.typesafe.play" %% "sbt-plugin" % "2.8.15")
addSbtPlugin("com.typesafe.play" %% "sbt-plugin" % "2.8.20")

addSbtPlugin("org.scoverage" %% "sbt-scoverage" % "2.0.8")

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ package uk.gov.hmrc.helptosaveapi.services
import cats.data.Validated._
import cats.data.{NonEmptyList, ValidatedNel}
import org.mockito.ArgumentMatchersSugar.*
import org.scalatest.BeforeAndAfterEach
import play.api.libs.json._
import play.api.mvc.{AnyContent, AnyContentAsEmpty, AnyContentAsJson, Request}
import play.api.test.FakeRequest
Expand Down
2 changes: 0 additions & 2 deletions test/uk/gov/hmrc/helptosaveapi/util/TestSupport.scala
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,8 @@
package uk.gov.hmrc.helptosaveapi.util

import akka.stream.Materializer
import com.codahale.metrics.{Counter, Timer}
import com.typesafe.config.ConfigFactory
import controllers.Assets
import org.mockito.ArgumentMatchersSugar.*
import org.mockito.IdiomaticMockito
import play.api.http.HttpErrorHandler
import play.api.inject.guice.GuiceApplicationBuilder
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@ import play.api.http.{ContentTypes, HeaderNames}
import play.api.mvc._
import play.api.test.FakeRequest
import uk.gov.hmrc.helptosaveapi.util.TestSupport
import play.api.data.validation._

class APIHttpHeaderValidatorSpec extends TestSupport {

Expand Down