Skip to content

Commit

Permalink
Merge pull request #349 from guardian/upgrade-to-scala-v2.13
Browse files Browse the repository at this point in the history
Upgrade to Play v2.9, Scala 2.13, Java 11
  • Loading branch information
rtyley committed Feb 14, 2024
2 parents 4e25b67 + 6eee1b8 commit 5ac7972
Show file tree
Hide file tree
Showing 13 changed files with 28 additions and 31 deletions.
14 changes: 4 additions & 10 deletions .github/workflows/ci.yml
Expand Up @@ -24,17 +24,11 @@ jobs:
aws-region: eu-west-1
- uses: guardian/actions-setup-node@v2.4.1
- name: Set up JDK
uses: actions/setup-java@v2
uses: actions/setup-java@v4
with:
java-version: 8
distribution: adopt
- name: Cache SBT
uses: actions/cache@v2
with:
path: |
~/.ivy2/cache
~/.sbt
key: ${{ runner.os }}-sbt-${{ hashFiles('**/build.sbt') }}
distribution: corretto
java-version: 11
cache: sbt
- name: CI yarn
shell: bash
run: |
Expand Down
1 change: 1 addition & 0 deletions .gitignore
Expand Up @@ -8,3 +8,4 @@ node_modules/
public/build
ensime-langserver.log
pc.stdout.log
.bsp/
1 change: 0 additions & 1 deletion .java-version

This file was deleted.

1 change: 1 addition & 0 deletions .tool-versions
@@ -0,0 +1 @@
java corretto-11.0.22.7.1
13 changes: 9 additions & 4 deletions README.md
Expand Up @@ -9,10 +9,15 @@ for both the composer and capi AWS accounts from [janus](https://janus.gutools.c

This project requires Node, so we recommend you use [node version manager](https://github.com/nvm-sh/nvm) `nvm`. Run `brew install nvm` if you do not have it. Run `nvm use` in the root of the project to ensure you are using the right version of node. The project's node version is set in the `.nvmrc` file.

The project also requires Java version `1.8.0.232` (or lower). The easiest way to set this is with `jenv`:
- `brew install jenv`
- Download and install the appopriate Java version: [jdk8u232-b09](https://adoptopenjdk.net/archive.html)
- `jenv add /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/`
The project also requires Java 11. The [easiest](https://docs.google.com/document/d/1ZR-YnaXCT5_gLVmTCeGs0mWd3KPaAozPjQK8uUzHZ9w/edit#heading=h.kgqqi53p3ltt)
way to install this is with `asdf install`, which will install the version of `java` specified in our
[.tool-versions](.tool-versions) file:

```shell
$ brew install asdf
$ asdf plugin add java
$ asdf install
```

You will then need to:

Expand Down
2 changes: 1 addition & 1 deletion app/AppLoader.scala
Expand Up @@ -26,7 +26,7 @@ class AppLoader extends ApplicationLoader {
FileConfigurationLocation(new File(s"$home/.gu/$appName.conf"))
}

new AppComponents(context.copy(initialConfiguration = context.initialConfiguration ++ Configuration(loadedConfig)), identity).application
new AppComponents(context.copy(initialConfiguration = context.initialConfiguration.withFallback(Configuration(loadedConfig))), identity).application
}

private def startLogging(context: Context): Unit = {
Expand Down
3 changes: 1 addition & 2 deletions build.sbt
Expand Up @@ -3,7 +3,7 @@ import Dependencies._
name := "atom-workshop"
version := "1.0"

scalaVersion := "2.12.16"
scalaVersion := "2.13.12"

libraryDependencies ++= dependencies

Expand All @@ -22,7 +22,6 @@ lazy val root = (project in file(".")).enablePlugins(PlayScala, RiffRaffArtifact

riffRaffPackageType := (Debian / packageBin).value,

debianPackageDependencies := Seq("openjdk-8-jre-headless"),
maintainer := "Editorial Tools <digitalcms.dev@guardian.co.uk>",
packageSummary := "Atom Workshop",
packageDescription := """A single place for atoms of all types""",
Expand Down
4 changes: 2 additions & 2 deletions conf/application.conf
Expand Up @@ -2,10 +2,10 @@ play.application.name="atom-workshop"

play.application.loader=AppLoader

play.http.secret.key="changeme"
play.http.secret.key="Value must be >9 chars. If the PLAY_SESSION cookie is *used*, use https://github.com/guardian/play-secret-rotation"

panda.system="atom-workshop"

parsers.text.maxLength=200kB
play.http.parser.maxMemoryBuffer=200K

play.filters.headers.contentSecurityPolicy="default-src 'self' 'unsafe-eval' 'unsafe-inline' data: https: wss:"
6 changes: 2 additions & 4 deletions conf/logback.xml
Expand Up @@ -2,12 +2,10 @@
<contextName>atom-workshop</contextName>

<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${application.home}/logs/application.log</file>
<file>logs/application.log</file>

<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<fileNamePattern>
${application.home}/logs/application.log.%i
</fileNamePattern>
<fileNamePattern>logs/application.log.%i</fileNamePattern>
<minIndex>1</minIndex>
<maxIndex>30</maxIndex>
</rollingPolicy>
Expand Down
8 changes: 4 additions & 4 deletions project/Dependencies.scala
Expand Up @@ -3,7 +3,7 @@ import sbt._

object Dependencies {
lazy val awsVersion = "1.11.678"
lazy val atomLibVersion = "1.4.0"
lazy val atomLibVersion = "2.0.0"
lazy val jacksonVersion = "2.13.4"
lazy val jacksonDatabindVersion = "2.13.4.2"

Expand All @@ -30,10 +30,10 @@ object Dependencies {
"com.amazonaws" % "aws-java-sdk-kinesis" % awsVersion,
"com.gu" %% "atom-manager-play" % atomLibVersion,
"com.gu" %% "atom-publisher-lib" % atomLibVersion,
"com.gu" %% "editorial-permissions-client" % "2.0",
"com.gu" %% "editorial-permissions-client" % "2.15",
"com.gu" %% "simple-configuration-ssm" % "1.5.6",
"com.gu" %% "fezziwig" % "1.2",
"com.gu" %% "pan-domain-auth-play_2-8" % "1.2.0",
"com.gu" %% "fezziwig" % "1.6",
"com.gu" %% "pan-domain-auth-play_2-9" % "3.0.1",
"io.circe" %% "circe-parser" % "0.14.5",
"net.logstash.logback" % "logstash-logback-encoder" % "6.6",
"com.gu" %% "content-api-client-aws" % "0.7",
Expand Down
2 changes: 1 addition & 1 deletion project/build.properties
@@ -1 +1 @@
sbt.version=1.8.0
sbt.version=1.9.8
2 changes: 1 addition & 1 deletion project/plugins.sbt
Expand Up @@ -2,7 +2,7 @@ logLevel := Level.Warn

libraryDependencies += "org.vafer" % "jdeb" % "1.6" artifacts Artifact("jdeb", "jar", "jar")

addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.8.8")
addSbtPlugin("com.typesafe.play" % "sbt-plugin" % "2.9.1")

addSbtPlugin("com.gu" % "sbt-riffraff-artifact" % "1.1.18")

Expand Down
2 changes: 1 addition & 1 deletion riff-raff.yaml
Expand Up @@ -12,7 +12,7 @@ deployments:
parameters:
amiTags:
BuiltBy: amigo
Recipe: editorial-tools-focal-java8-ARM-WITH-cdk-base
Recipe: editorial-tools-focal-java11-ARM-WITH-cdk-base
AmigoStage: PROD
amiEncrypted: true
amiParameter: ImageId

0 comments on commit 5ac7972

Please sign in to comment.