Skip to content

Commit 8693a8b

Browse files
committed
initial commit
0 parents  commit 8693a8b

32 files changed

+2175
-0
lines changed

.github/renovate.json

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
3+
"extends": ["github>xenit-eu/contentgrid-renovate-presets:renovate.json"]
4+
}

.github/workflows/ci.yml

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
name: build
2+
on:
3+
push:
4+
pull_request:
5+
6+
jobs:
7+
build:
8+
name: "build"
9+
runs-on: ubuntu-latest
10+
steps:
11+
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
12+
with:
13+
fetch-depth: 0
14+
- uses: actions/setup-java@v4
15+
with:
16+
distribution: liberica
17+
java-version: 17
18+
cache: gradle
19+
- name: Build and Test
20+
run: ./gradlew build
21+
- name: docker login
22+
env:
23+
DOCKER_USER: ${{ secrets.CLOUDSMITH_USER }}
24+
DOCKER_PASSWORD: ${{ secrets.CLOUDSMITH_APIKEY }}
25+
run: echo $DOCKER_PASSWORD | docker login docker.contentgrid.com -u $DOCKER_USER --password-stdin
26+
- name: Docker image
27+
if: ${{ github.ref == 'refs/heads/main' || startswith(github.ref, 'refs/tags/') }}
28+
run: ./gradlew jib

.gitignore

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
HELP.md
2+
.gradle
3+
build/
4+
!gradle/wrapper/gradle-wrapper.jar
5+
!**/src/main/**/build/
6+
!**/src/test/**/build/
7+
8+
*/build-gradle/
9+
10+
node_modules
11+
npm-debug.log
12+
13+
### STS ###
14+
.apt_generated
15+
.classpath
16+
.factorypath
17+
.project
18+
.settings
19+
.springBeans
20+
.sts4-cache
21+
bin/
22+
23+
### IntelliJ IDEA ###
24+
.idea
25+
*.iws
26+
*.iml
27+
*.ipr
28+
out/
29+
!**/src/main/**/out/
30+
!**/src/test/**/out/
31+
32+
### NetBeans ###
33+
/nbproject/private/
34+
/nbbuild/
35+
/dist/
36+
/nbdist/
37+
/.nb-gradle/
38+
39+
### VS Code ###
40+
.vscode/

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Sample ContentGrid app
2+
3+
This app is used for integration testing the runtime platform.

blacksmith.gradle

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
import java.time.Instant
2+
3+
initscript {
4+
repositories {
5+
gradlePluginPortal()
6+
}
7+
dependencies {
8+
classpath "com.google.cloud.tools:jib-gradle-plugin:3.4.4"
9+
}
10+
}
11+
12+
def timestamp = Instant.now().getEpochSecond();
13+
14+
allprojects {
15+
apply plugin: com.google.cloud.tools.jib.gradle.JibPlugin
16+
17+
pluginManager.withPlugin('com.google.cloud.tools.jib') {
18+
def imageNameProvider = project.provider {
19+
"${project.findProperty('com.contentgrid.docker.registry.name')}/${project.name}:${project.version}-${timestamp}"
20+
}
21+
jib {
22+
container {
23+
jvmFlags = ['-XX:+UseContainerSupport', '-XX:MaxRAMPercentage=85.0']
24+
}
25+
to {
26+
image = imageNameProvider
27+
auth {
28+
username = project.findProperty('com.contentgrid.docker.registry.username')
29+
password = project.findProperty('com.contentgrid.docker.registry.password')
30+
}
31+
}
32+
allowInsecureRegistries = Boolean.parseBoolean(project.findProperty("com.contentgrid.docker.registry.allow-insecure"))
33+
}
34+
project.tasks.named('jib').configure {
35+
doLast {
36+
def dockerImgFile = file('build/docker.image')
37+
println "writing ${jib.to.image} > ${dockerImgFile.absolutePath}"
38+
dockerImgFile.newWriter().withWriter { writer ->
39+
writer.write jib.to.image
40+
}
41+
}
42+
}
43+
}
44+
}

build.gradle

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
import java.time.Instant
2+
3+
plugins {
4+
id 'java'
5+
id 'org.springframework.boot' version '3.3.4'
6+
id 'io.spring.dependency-management' version '1.1.7'
7+
id 'com.google.cloud.tools.jib' version '3.4.4' apply false
8+
}
9+
10+
group = 'com.contentgrid.userapps.rtptestorg'
11+
version = '0.0.1-SNAPSHOT'
12+
13+
java {
14+
toolchain {
15+
languageVersion = JavaLanguageVersion.of(17)
16+
}
17+
}
18+
19+
configurations {
20+
compileOnly {
21+
extendsFrom annotationProcessor
22+
}
23+
}
24+
25+
repositories {
26+
mavenCentral()
27+
}
28+
29+
dependencies {
30+
implementation 'com.contentgrid.spring:contentgrid-spring-boot-starter:0.17.0'
31+
implementation 'org.flywaydb:flyway-core'
32+
implementation 'org.flywaydb:flyway-database-postgresql'
33+
implementation 'org.testcontainers:postgresql'
34+
annotationProcessor 'com.contentgrid.spring:contentgrid-spring-boot-starter-annotations:0.17.0'
35+
annotationProcessor 'org.projectlombok:lombok'
36+
testImplementation 'org.springframework.boot:spring-boot-starter-test'
37+
testRuntimeOnly 'org.junit.platform:junit-platform-launcher'
38+
}
39+
40+
tasks.named('bootRun') {
41+
systemProperty 'contentgrid.security.unauthenticated.allow', true
42+
systemProperty 'contentgrid.security.csrf.disabled', true
43+
systemProperty 'contentgrid.thunx.abac.source', 'none'
44+
}
45+
46+
tasks.named('test') {
47+
useJUnitPlatform()
48+
}
49+
50+
def timestamp = Instant.now().getEpochSecond();
51+
52+
allprojects {
53+
apply plugin: com.google.cloud.tools.jib.gradle.JibPlugin
54+
55+
pluginManager.withPlugin('com.google.cloud.tools.jib') {
56+
def imageNameProvider = project.provider {
57+
"${project.findProperty('com.contentgrid.docker.registry.name')}/${project.name}:${project.version}-${timestamp}"
58+
}
59+
jib {
60+
container {
61+
jvmFlags = ['-XX:+UseContainerSupport', '-XX:MaxRAMPercentage=85.0']
62+
}
63+
to {
64+
image = 'docker.contentgrid.com/rtp-test-app:latest'
65+
}
66+
allowInsecureRegistries = Boolean.parseBoolean(project.findProperty("com.contentgrid.docker.registry.allow-insecure"))
67+
}
68+
project.tasks.named('jib').configure {
69+
doLast {
70+
def dockerImgFile = file('build/docker.image')
71+
println "writing ${jib.to.image} > ${dockerImgFile.absolutePath}"
72+
dockerImgFile.newWriter().withWriter { writer ->
73+
writer.write jib.to.image
74+
}
75+
}
76+
}
77+
}
78+
}

gradle/wrapper/gradle-wrapper.jar

42.4 KB
Binary file not shown.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
distributionBase=GRADLE_USER_HOME
2+
distributionPath=wrapper/dists
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-8.8-bin.zip
4+
networkTimeout=10000
5+
validateDistributionUrl=true
6+
zipStoreBase=GRADLE_USER_HOME
7+
zipStorePath=wrapper/dists

0 commit comments

Comments
 (0)