Skip to content

Commit 309e2eb

Browse files
authored
Merge pull request #3 from tekdi/claude/frappe-hrms-cv-upload-011CV5La1ED2RTd2Ycx4vWcQ
arm build and frappe app added
2 parents 1dd9bc3 + 74200eb commit 309e2eb

32 files changed

+2288
-3
lines changed

.github/workflows/README.md

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ Automatically builds and tests the CV Analysis Service Docker image.
1616

1717
**Features:**
1818
- ✅ Builds Docker image for CV Analysis Service
19+
- ✅ Multi-architecture support (AMD64 + ARM64)
1920
- ✅ Runs health checks to verify the image works
2021
- ✅ Pushes to GitHub Container Registry (ghcr.io) on main branch
2122
- ✅ Uses layer caching for faster builds
@@ -31,16 +32,28 @@ Automatically builds and tests the CV Analysis Service Docker image.
3132
- `<branch-name>` - Latest build from specific branch
3233
- `<branch-name>-<sha>` - Specific commit from a branch
3334

35+
**Supported Platforms:**
36+
- `linux/amd64` - Intel/AMD x86_64 processors (Linux, Windows, Intel Macs)
37+
- `linux/arm64` - ARM 64-bit processors (Apple Silicon Macs, ARM servers, Raspberry Pi 4+)
38+
39+
Docker automatically pulls the correct architecture for your system.
40+
3441
## Using the Docker Images
3542

3643
### Pull from GitHub Container Registry
3744

3845
```bash
39-
# Pull latest version
46+
# Pull latest version (automatically selects correct architecture)
4047
docker pull ghcr.io/tekdi/frappe-hrms-tools/cv-analysis-service:latest
4148

4249
# Pull specific version
4350
docker pull ghcr.io/tekdi/frappe-hrms-tools/cv-analysis-service:main
51+
52+
# The image works on:
53+
# - Intel/AMD Linux servers
54+
# - Intel Macs
55+
# - Apple Silicon Macs (M1, M2, M3)
56+
# - ARM servers and development boards
4457
```
4558

4659
### Run the container

.github/workflows/docker-build.yml

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,11 @@ jobs:
4040
- name: Checkout repository
4141
uses: actions/checkout@v4
4242

43+
- name: Set up QEMU
44+
uses: docker/setup-qemu-action@v3
45+
with:
46+
platforms: linux/amd64,linux/arm64
47+
4348
- name: Set up Docker Buildx
4449
uses: docker/setup-buildx-action@v3
4550

@@ -64,11 +69,12 @@ jobs:
6469
type=semver,pattern={{version}}
6570
type=semver,pattern={{major}}.{{minor}}
6671
67-
- name: Build Docker image
72+
- name: Build Docker image for testing
6873
uses: docker/build-push-action@v5
6974
with:
7075
context: ./services/hrms-tools
7176
file: ./services/hrms-tools/Dockerfile
77+
platforms: linux/amd64
7278
push: false
7379
tags: ${{ steps.meta.outputs.tags }}
7480
labels: ${{ steps.meta.outputs.labels }}
@@ -113,12 +119,13 @@ jobs:
113119
114120
echo "✓ Docker image tests passed!"
115121
116-
- name: Push Docker image to registry
122+
- name: Build and push multi-arch Docker image
117123
if: github.event_name != 'pull_request' && (github.ref == 'refs/heads/main' || github.event.inputs.push_image == 'true')
118124
uses: docker/build-push-action@v5
119125
with:
120126
context: ./services/hrms-tools
121127
file: ./services/hrms-tools/Dockerfile
128+
platforms: linux/amd64,linux/arm64
122129
push: true
123130
tags: ${{ steps.meta.outputs.tags }}
124131
labels: ${{ steps.meta.outputs.labels }}
@@ -131,6 +138,8 @@ jobs:
131138
echo "" >> $GITHUB_STEP_SUMMARY
132139
echo "**Status:** ✅ Success" >> $GITHUB_STEP_SUMMARY
133140
echo "" >> $GITHUB_STEP_SUMMARY
141+
echo "**Architectures:** linux/amd64, linux/arm64" >> $GITHUB_STEP_SUMMARY
142+
echo "" >> $GITHUB_STEP_SUMMARY
134143
echo "**Image Tags:**" >> $GITHUB_STEP_SUMMARY
135144
echo '```' >> $GITHUB_STEP_SUMMARY
136145
echo "${{ steps.meta.outputs.tags }}" >> $GITHUB_STEP_SUMMARY
@@ -141,6 +150,7 @@ jobs:
141150
echo "" >> $GITHUB_STEP_SUMMARY
142151
echo "**Pull command:**" >> $GITHUB_STEP_SUMMARY
143152
echo '```bash' >> $GITHUB_STEP_SUMMARY
153+
echo "# Works on both Intel and Apple Silicon Macs" >> $GITHUB_STEP_SUMMARY
144154
echo "docker pull ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:latest" >> $GITHUB_STEP_SUMMARY
145155
echo '```' >> $GITHUB_STEP_SUMMARY
146156
else

frappe-apps/cv_analyzer/.gitignore

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# Python
2+
__pycache__/
3+
*.py[cod]
4+
*$py.class
5+
*.so
6+
.Python
7+
*.egg-info/
8+
dist/
9+
build/
10+
11+
# Frappe
12+
*.swp
13+
*.swo
14+
*~
15+
.DS_Store
16+
node_modules/
17+
*.compiled
18+
19+
# IDE
20+
.vscode/
21+
.idea/
22+
*.swp
23+
24+
# Logs
25+
*.log

0 commit comments

Comments
 (0)