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
79 changes: 79 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
name: CI - Multi Compose Builder

on:
workflow_dispatch:
inputs:
compose_file:
description: 'Choose docker-compose file'
required: true
default: 'docker-compose.yml'
type: choice
options:
- docker-compose.yml
- docker-compose-partitions.yml
- dockercompose.kafka.yml

push:
branches: [main, master, patch-1]
pull_request:
branches: [main, master, patch-1]

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Set up JDK 17
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '17'

- name: Configure Maven Central Mirror
run: |
mkdir -p ~/.m2
cat > ~/.m2/settings.xml <<EOF
<settings>
<profiles>
<profile>
<id>central</id>
<repositories>
<repository>
<id>central</id>
<url>https://repo.maven.apache.org/maven2</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>false</enabled></snapshots>
</repository>
</repositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>central</activeProfile>
</activeProfiles>
</settings>
EOF

- name: 🧹 Auto-fix malformed pom.xml files
run: |
find . -name "pom.xml" | while read file; do
awk 'BEGIN{fixed=0} NR==1 && $0 !~ /^<\?xml/{fixed=1; next} {if(!fixed || $0 ~ /^<\?xml/){print}}' "$file" > "$file.fixed" && mv "$file.fixed" "$file"
done

- name: Force remove SNAPSHOT of springfox-swagger2
run: |
mvn dependency:purge-local-repository \
-DmanualInclude="io.springfox:springfox-swagger2"

- name: Build Spring Boot apps
run: mvn clean package -DskipTests --no-transfer-progress

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2

- name: Build & Run Docker Compose
run: |
COMPOSE_FILE="${{ github.event.inputs.compose_file || 'docker-compose.yml' }}"
docker-compose -f "$COMPOSE_FILE" up --build -d
127 changes: 83 additions & 44 deletions store-common/store-api/pom.xml
Original file line number Diff line number Diff line change
@@ -1,44 +1,83 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://maven.apache.org/POM/4.0.0"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>

<parent>
<groupId>com.siriusxi.ms.store</groupId>
<artifactId>store-build-chassis</artifactId>
<version>1.0-SNAPSHOT</version>
<relativePath>../../store-base/store-build-chassis/pom.xml</relativePath>
</parent>

<artifactId>store-api</artifactId>
<version>1.0-SNAPSHOT</version>
<name>Store APIs</name>
<description>Project that define all Springy Store DTOs and REST APIs contracts</description>
<packaging>jar</packaging>

<properties>
<!-- Libraries versions -->
<spring.boot.dependencies.version>2.3.0.M4</spring.boot.dependencies.version>
</properties>

<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>${spring.boot.dependencies.version}</version>
<scope>import</scope>
<type>pom</type>
</dependency>
</dependencies>
</dependencyManagement>

<dependencies>
<!-- Start - API documentation dependencies -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
</dependency>
</dependencies>
</project>
name: CI - Multi Compose Builder

Choose a reason for hiding this comment

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

Hi @ArpithaJK4,

Can you please check this file. looks like a wrong commit.


on:
workflow_dispatch:
inputs:
compose_file:
description: 'Choose docker-compose file'
required: true
default: 'docker-compose.yml'
type: choice
options:
- docker-compose.yml
- docker-compose-partitions.yml
- dockercompose.kafka.yml

push:
branches: [main, master, patch-1]
pull_request:
branches: [main, master, patch-1]

jobs:
build:
runs-on: ubuntu-latest

steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Set up JDK 17
uses: actions/setup-java@v3
with:
distribution: 'temurin'
java-version: '17'

- name: Configure Maven Central Mirror
run: |
mkdir -p ~/.m2
cat > ~/.m2/settings.xml <<EOF
<settings>
<profiles>
<profile>
<id>central</id>
<repositories>
<repository>
<id>central</id>
<url>https://repo.maven.apache.org/maven2</url>
<releases><enabled>true</enabled></releases>
<snapshots><enabled>false</enabled></snapshots>
</repository>
</repositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>central</activeProfile>
</activeProfiles>
</settings>
EOF

- name: Force remove invalid SNAPSHOT of springfox-swagger2
run: |
mvn dependency:purge-local-repository \
-DmanualInclude="io.springfox:springfox-swagger2"

- name: Fix Springfox version in pom.xml
run: |
find . -name "pom.xml" -exec sed -i 's/<version>3.0.0-SNAPSHOT<\/version>/<version>3.0.0<\/version>/g' {} \;

- name: Ensure Java 17 compatibility in compiler plugin
run: |
find . -name "pom.xml" -exec sed -i 's/<source>15<\/source>/<source>17<\/source>/g' {} \;
find . -name "pom.xml" -exec sed -i 's/<target>15<\/target>/<target>17<\/target>/g' {} \;
find . -name "pom.xml" -exec sed -i '/--enable-preview/d' {} \;

- name: Build Spring Boot apps
run: mvn clean package -DskipTests --no-transfer-progress

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2

- name: Build & Run Docker Compose
run: |
COMPOSE_FILE="${{ github.event.inputs.compose_file || 'docker-compose.yml' }}"
docker-compose -f "$COMPOSE_FILE" up --build -d