Skip to content
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
11 changes: 11 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -67,8 +67,12 @@ jobs:
run: |
mkdir -p /tmp/gradle_test_reports/core
mkdir -p /tmp/gradle_test_reports/schema-loader
mkdir -p /tmp/gradle_test_reports/data-loader/core
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added here and not in separate data loader ci file as it seems easier to manage in this file like this.

mkdir -p /tmp/gradle_test_reports/data-loader/cli
cp -a core/build/reports/tests/test /tmp/gradle_test_reports/core/
cp -a schema-loader/build/reports/tests/test /tmp/gradle_test_reports/schema-loader/
cp -a data-loader/core/build/reports/tests/test /tmp/gradle_test_reports/data-loader/core/
cp -a data-loader/cli/build/reports/tests/test /tmp/gradle_test_reports/data-loader/cli/
- name: Upload Gradle test reports
if: always()
Expand All @@ -83,9 +87,13 @@ jobs:
mkdir -p /tmp/gradle_spotbugs_reports/core
mkdir -p /tmp/gradle_spotbugs_reports/schema-loader
mkdir -p /tmp/gradle_spotbugs_reports/integration-test
mkdir -p /tmp/gradle_spotbugs_reports/data-loader/core
mkdir -p /tmp/gradle_spotbugs_reports/data-loader/cli
cp -a core/build/reports/spotbugs /tmp/gradle_spotbugs_reports/core/
cp -a schema-loader/build/reports/spotbugs /tmp/gradle_spotbugs_reports/schema-loader/
cp -a integration-test/build/reports/spotbugs /tmp/gradle_spotbugs_reports/integration-test/
cp -a data-loader/core/build/reports/spotbugs /tmp/gradle_spotbugs_reports/data-loader/core/
cp -a data-loader/cli/build/reports/spotbugs /tmp/gradle_spotbugs_reports/data-loader/cli/
- name: Upload Spotbugs reports
if: always()
Expand Down Expand Up @@ -113,6 +121,9 @@ jobs:
- name: Dockerfile Lint for ScalarDB Schema Loader
run: ./gradlew schema-loader:dockerfileLint

- name: Dockerfile Lint for ScalarDB Data Loader CLI
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For the same reason as the above. If required can still be all moved to a separate file though.

run: ./gradlew data-loader:cli:dockerfileLint

integration-test-for-cassandra-3-0:
name: Cassandra 3.0 integration test (${{ matrix.mode.label }})
runs-on: ubuntu-latest
Expand Down
13 changes: 13 additions & 0 deletions .github/workflows/create-release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -77,3 +77,16 @@ jobs:
asset_path: schema-loader/build/libs/scalardb-schema-loader-${{ steps.version.outputs.version }}.jar
asset_name: scalardb-schema-loader-${{ steps.version.outputs.version }}.jar
asset_content_type: application/java-archive

- name: Build scalardb-data-loader-cli jar
run: ./gradlew :data-loader:cli:shadowJar

- name: Upload scalardb-data-loader-cli jar
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GH_PROJECT_ACCESS_TOKEN }}
with:
upload_url: ${{ steps.create_release.outputs.upload_url }}
asset_path: data-loader/cli/build/libs/scalardb-data-loader-cli-${{ steps.version.outputs.version }}.jar
asset_name: scalardb-data-loader-cli-${{ steps.version.outputs.version }}.jar
asset_content_type: application/java-archive
1 change: 1 addition & 0 deletions .github/workflows/release-snapshot.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -56,3 +56,4 @@ jobs:
if: contains(steps.version.outputs.version, '-SNAPSHOT')
run: |
docker push ghcr.io/scalar-labs/scalardb-schema-loader:${{ steps.version.outputs.version }}
docker push ghcr.io/scalar-labs/scalardb-data-loader-cli:${{ steps.version.outputs.version }}
6 changes: 6 additions & 0 deletions .github/workflows/remove-untagged-images.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,9 @@ jobs:
with:
github-token: ${{ secrets.CR_PAT }}
package-name: scalardb-schema-loader

- name: scalardb-data-loader-cli
uses: camargo/delete-untagged-action@v1
with:
github-token: ${{ secrets.CR_PAT }}
package-name: scalardb-data-loader-cli
1 change: 1 addition & 0 deletions .github/workflows/upload-artifacts.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ jobs:
- name: Push containers
run: |
docker push ghcr.io/scalar-labs/scalardb-schema-loader:${{ steps.version.outputs.version }}
docker push ghcr.io/scalar-labs/scalardb-data-loader-cli:${{ steps.version.outputs.version }}
- name: Upload scalardb, scalardb-schema-loader, scalardb-data-loader-core, and scalardb-integration-test to Maven Central Repository
run: |
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/vuln-check.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ jobs:
with:
target-ref: ${{ inputs.target-ref }}
find-latest-release: ${{ inputs.find-latest-release }}
images: '[["ScalarDB Schema Loader", "scalardb-schema-loader"]]'
images: '[["ScalarDB Schema Loader", "scalardb-schema-loader"], ["ScalarDB Data Loader CLI", "scalardb-data-loader-cli"]]'
version-command: "./gradlew :core:properties -q | grep version: | awk '{print $2}'"
secrets:
CR_PAT: ${{ secrets.CR_PAT }}
Expand Down
13 changes: 13 additions & 0 deletions data-loader/cli/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
FROM eclipse-temurin:8-jre-jammy

RUN apt-get update && apt-get upgrade -y --no-install-recommends \
&& rm -rf /var/lib/apt/lists/*

COPY scalardb-data-loader-*.jar /app.jar

RUN groupadd -r --gid 201 scalar && \
useradd -r --uid 201 -g scalar scalar

USER 201

ENTRYPOINT ["java", "-jar", "/app.jar"]
20 changes: 20 additions & 0 deletions data-loader/cli/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -59,3 +59,23 @@ spotbugsTest.reports {
html.enabled = true
}
spotbugsTest.excludeFilter = file("${project.rootDir}/gradle/spotbugs-exclude.xml")

task dockerfileLint(type: Exec) {
description 'Lint the Dockerfile'
commandLine "${project.rootDir}/ci/dockerfile_lint.sh"
}

task copyFilesToDockerBuildContextDir(type: Copy) {
description 'Copy files to a temporary folder to build the Docker image'
dependsOn shadowJar
from("Dockerfile")
from(tasks.shadowJar.archiveFile)
into('build/docker')
}

task docker(type: Exec) {
description 'Build ScalarDB Data Loader Docker CLI image'
dependsOn copyFilesToDockerBuildContextDir
workingDir 'build/docker'
commandLine 'docker', 'build', "--tag=ghcr.io/scalar-labs/scalardb-data-loader-cli:${project.version}", "."
}