Skip to content
Open
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
16 changes: 8 additions & 8 deletions .github/examples/backend/checkstyle.xml
Original file line number Diff line number Diff line change
Expand Up @@ -393,20 +393,20 @@
or self::RECORD_DEF or self::ENUM_DEF]
[not(./MODIFIERS/LITERAL_PUBLIC)]]"/>
</module>
<!-- <module name="MissingJavadocType">-->
<!-- <property name="scope" value="protected"/>-->
<!-- <property name="tokens"-->
<!-- value="CLASS_DEF, INTERFACE_DEF, ENUM_DEF,-->
<!-- RECORD_DEF, ANNOTATION_DEF"/>-->
<!-- <property name="excludeScope" value="nothing"/>-->
<!-- </module>-->
<!-- <module name="MissingJavadocType">
<property name="scope" value="protected"/>
<property name="tokens"
value="CLASS_DEF, INTERFACE_DEF, ENUM_DEF,
RECORD_DEF, ANNOTATION_DEF"/>
<property name="excludeScope" value="nothing"/>
</module>
<module name="WriteTag">
<property name="tag" value="@CommentLastReviewed"/>
<property name="tokens"
value="CLASS_DEF, INTERFACE_DEF, ENUM_DEF,
RECORD_DEF, ANNOTATION_DEF"/>
<property name="tagFormat" value="\d{4}-\d{2}-\d{2}"/>
</module>
</module>-->
<module name="MethodName">
<property name="format" value="^[a-z][a-z0-9][a-zA-Z0-9]*$"/>
<message key="name.invalidPattern"
Expand Down
38 changes: 37 additions & 1 deletion .github/workflows/backend_build_push_image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,17 @@ on:
required: true
type: string
description: "Version tag for the Docker image"
enable-maven-build:
required: false
default: true
type: boolean
description: "Run JDK setup, Maven cache restore, and Maven package. Set to false for images whose Dockerfile handles the build (e.g. multi-stage Node builds)."
enable-pnpm-build:
required: false
default: false
type: boolean
description: "do pnpm install and pnpm build"

secrets:
AWS_OIDC_ROLE_ARN:
description: "OIDC role ARN for AWS credentials"
Expand All @@ -37,6 +48,7 @@ on:
jobs:
# Validate secrets to match an expected regex pattern to facilitate debugging of misconfigured secrets.
validate-secret-values:
if: ${{ inputs.enable }}
runs-on: ubuntu-latest
environment: ${{ inputs.environment }}
steps:
Expand All @@ -58,9 +70,10 @@ jobs:
build-push-image:
name: "Build and push docker image to ECR ${{ inputs.environment }} - ${{ inputs.version }}"
if: ${{ inputs.enable }}
needs: validate-secret-values
runs-on: ubuntu-latest
environment: ${{ inputs.environment }}
timeout-minutes: 5
timeout-minutes: 15
outputs:
image: ${{ steps.push-image.outputs.image }}
env:
Expand Down Expand Up @@ -89,13 +102,35 @@ jobs:
with:
ref: ${{ format('v{0}', inputs.version) }}

- name: Set up pnpm
if: ${{ inputs.enable-pnpm-build }}
uses: pnpm/action-setup@v5

- name: Set up Node.js
if: ${{ inputs.enable-pnpm-build }}
uses: actions/setup-node@v6
with:
node-version: 24
cache: pnpm
cache-dependency-path: pnpm-lock.yaml

- name: Install dependencies
if: ${{ inputs.enable-pnpm-build }}
run: pnpm install --frozen-lockfile --ignore-scripts

- name: Build
if: ${{ inputs.enable-pnpm-build }}
run: pnpm build

- name: Set up JDK
if: ${{ inputs.enable-maven-build }}
uses: actions/setup-java@v5
with:
java-version: '25'
distribution: 'corretto'

- name: Restore Maven Cache
if: ${{ inputs.enable-maven-build }}
uses: actions/cache/restore@v5
with:
path: ~/.m2/repository
Expand All @@ -104,6 +139,7 @@ jobs:
${{ runner.os }}-maven-

- name: Maven package
if: ${{ inputs.enable-maven-build }}
run: mvn -B clean package -DskipTests -T 1C

- name: Set image tag to GITHUB_ENV
Expand Down
Loading