Skip to content

Commit 8194fbe

Browse files
committed
ci(github): remove legacy publish workflow and update test pipeline
- deleted `.github/workflows/publish.yml` (deprecated) - updated `.github/workflows/test.yml` with improved pipeline configuration - updated `Dockerfile` for compatibility with new workflow - updated `README.md` to reflect current CI/CD setup
1 parent cc3c582 commit 8194fbe

4 files changed

Lines changed: 142 additions & 143 deletions

File tree

.github/workflows/publish.yml

Whitespace-only changes.

.github/workflows/test.yml

Lines changed: 119 additions & 119 deletions
Original file line numberDiff line numberDiff line change
@@ -1,124 +1,124 @@
11
name: Test PHP API Stack
22

33
on:
4-
push:
5-
branches: [main, develop]
6-
pull_request:
7-
branches: [main]
8-
workflow_dispatch:
4+
push:
5+
branches: [main, develop]
6+
pull_request:
7+
branches: [main]
8+
workflow_dispatch:
99

1010
jobs:
11-
lint:
12-
name: Lint Dockerfile
13-
runs-on: ubuntu-latest
14-
steps:
15-
- uses: actions/checkout@v3
16-
17-
- name: Run hadolint
18-
run: make lint
19-
20-
build:
21-
name: Build Image
22-
needs: lint
23-
runs-on: ubuntu-latest
24-
steps:
25-
- uses: actions/checkout@v3
26-
27-
- name: Build production image
28-
run: make build
29-
30-
- name: Quick component tests
31-
run: make test-quick
32-
33-
- name: Save image
34-
run: docker save kariricode/php-api-stack:latest | gzip > image.tar.gz
35-
36-
- name: Upload artifact
37-
uses: actions/upload-artifact@v3
38-
with:
39-
name: docker-image
40-
path: image.tar.gz
41-
42-
test:
43-
name: Run Tests
44-
needs: build
45-
runs-on: ubuntu-latest
46-
steps:
47-
- uses: actions/checkout@v3
48-
49-
- name: Download image
50-
uses: actions/download-artifact@v3
51-
with:
52-
name: docker-image
53-
54-
- name: Load image
55-
run: docker load < image.tar.gz
56-
57-
- name: Run comprehensive tests
58-
run: make test
59-
60-
- name: Run integration tests
61-
run: |
62-
make run
63-
sleep 10
64-
curl -f http://localhost:8080
65-
curl -f http://localhost:8080/health
66-
make stop
67-
68-
test-health:
69-
name: Test Health Checks
70-
needs: build
71-
runs-on: ubuntu-latest
72-
steps:
73-
- uses: actions/checkout@v3
74-
75-
- name: Download image
76-
uses: actions/download-artifact@v3
77-
with:
78-
name: docker-image
79-
80-
- name: Load image
81-
run: docker load < image.tar.gz
82-
83-
- name: Build test image
84-
run: make build-test-image
85-
86-
- name: Run test container
87-
run: make run-test
88-
89-
- name: Test comprehensive health check
90-
run: |
91-
sleep 10
92-
make test-health
93-
curl -s http://localhost:8080/health.php | jq '.status' | grep -q "healthy"
94-
95-
- name: Stop test container
96-
run: make stop-test
97-
98-
security:
99-
name: Security Scan
100-
needs: build
101-
runs-on: ubuntu-latest
102-
steps:
103-
- uses: actions/checkout@v3
104-
105-
- name: Download image
106-
uses: actions/download-artifact@v3
107-
with:
108-
name: docker-image
109-
110-
- name: Load image
111-
run: docker load < image.tar.gz
112-
113-
- name: Run Trivy scan
114-
uses: aquasecurity/trivy-action@master
115-
with:
116-
image-ref: "kariricode/php-api-stack:latest"
117-
format: "sarif"
118-
output: "trivy-results.sarif"
119-
severity: "CRITICAL,HIGH"
120-
121-
- name: Upload Trivy results
122-
uses: github/codeql-action/upload-sarif@v2
123-
with:
124-
sarif_file: "trivy-results.sarif"
11+
lint:
12+
name: Lint Dockerfile
13+
runs-on: ubuntu-latest
14+
steps:
15+
- uses: actions/checkout@v3
16+
17+
- name: Run hadolint
18+
run: make lint
19+
20+
build:
21+
name: Build Image
22+
needs: lint
23+
runs-on: ubuntu-latest
24+
steps:
25+
- uses: actions/checkout@v3
26+
27+
- name: Build production image
28+
run: make build
29+
30+
- name: Quick component tests
31+
run: make test-quick
32+
33+
- name: Save image
34+
run: docker save kariricode/php-api-stack:latest | gzip > image.tar.gz
35+
36+
- name: Upload artifact
37+
uses: actions/upload-artifact@v3
38+
with:
39+
name: docker-image
40+
path: image.tar.gz
41+
42+
test:
43+
name: Run Tests
44+
needs: build
45+
runs-on: ubuntu-latest
46+
steps:
47+
- uses: actions/checkout@v3
48+
49+
- name: Download image
50+
uses: actions/download-artifact@v3
51+
with:
52+
name: docker-image
53+
54+
- name: Load image
55+
run: docker load < image.tar.gz
56+
57+
- name: Run comprehensive tests
58+
run: make test
59+
60+
- name: Run integration tests
61+
run: |
62+
make run
63+
sleep 10
64+
curl -f http://localhost:8080
65+
curl -f http://localhost:8080/health
66+
make stop
67+
68+
test-health:
69+
name: Test Health Checks
70+
needs: build
71+
runs-on: ubuntu-latest
72+
steps:
73+
- uses: actions/checkout@v3
74+
75+
- name: Download image
76+
uses: actions/download-artifact@v3
77+
with:
78+
name: docker-image
79+
80+
- name: Load image
81+
run: docker load < image.tar.gz
82+
83+
- name: Build test image
84+
run: make build-test-image
85+
86+
- name: Run test container
87+
run: make run-test
88+
89+
- name: Test comprehensive health check
90+
run: |
91+
sleep 10
92+
make test-health
93+
curl -s http://localhost:8080/health.php | jq '.status' | grep -q "healthy"
94+
95+
- name: Stop test container
96+
run: make stop-test
97+
98+
security:
99+
name: Security Scan
100+
needs: build
101+
runs-on: ubuntu-latest
102+
steps:
103+
- uses: actions/checkout@v3
104+
105+
- name: Download image
106+
uses: actions/download-artifact@v3
107+
with:
108+
name: docker-image
109+
110+
- name: Load image
111+
run: docker load < image.tar.gz
112+
113+
- name: Run Trivy scan
114+
uses: aquasecurity/trivy-action@master
115+
with:
116+
image-ref: "kariricode/php-api-stack:latest"
117+
format: "sarif"
118+
output: "trivy-results.sarif"
119+
severity: "CRITICAL,HIGH"
120+
121+
- name: Upload Trivy results
122+
uses: github/codeql-action/upload-sarif@v2
123+
with:
124+
sarif_file: "trivy-results.sarif"

Dockerfile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ ARG VCS_REF
3737
ARG VERSION
3838

3939
# Metadata with dynamic version
40-
LABEL maintainer="kariricode <kariricode@github.com>" \
40+
LABEL maintainer="KaririCode <commuunity@kariricode.org>" \
4141
org.opencontainers.image.title="PHP API Stack" \
4242
org.opencontainers.image.description="Production-ready PHP + Nginx + Redis + Symfony stack" \
4343
org.opencontainers.image.version="${VERSION}" \

README.md

Lines changed: 22 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -310,40 +310,39 @@ This project is licensed under the MIT License. See [LICENSE](LICENSE) file.
310310
- **Discussions**: [GitHub Discussions](https://github.com/kariricode/php-api-stack/discussions)
311311
- **Docker Hub**: [kariricode/php-api-stack](https://hub.docker.com/r/kariricode/php-api-stack)
312312

313-
## 📅 Changelog
313+
---
314+
315+
## 🧭 Roadmap & Contributing
314316

315-
### [1.2.1] - 2025-10-09
316-
- 🏥 Added comprehensive health check with SOLID architecture
317-
- 📊 Detailed validation for all stack components
318-
- 🔧 Enhanced Makefile with health monitoring
319-
- 📚 Separated documentation (README, TESTING, DOCKER_HUB, IMAGE_USAGE_GUIDE)
320-
- ✅ Production and test build separation
317+
Feature requests and PRs are welcome in the source repository:
321318

322-
### [1.2.0] - 2025-10-08
323-
- ✨ Improved PHP extension installation
324-
- 🔧 Enhanced build script
325-
- 📚 Complete English documentation
326-
- 🛠 Fixed PHP-FPM socket performance
327-
- ⚡ Production optimizations
319+
* GitHub: [https://github.com/kariricode/php-api-stack](https://github.com/kariricode/php-api-stack)
328320

329-
## 💬 Author
321+
For broader ecosystem projects, visit:
330322

331-
**kariricode**
332-
- GitHub: [@kariricode](https://github.com/kariricode)
333-
- Docker Hub: [kariricode](https://hub.docker.com/u/kariricode)
323+
* KaririCode Framework: [https://github.com/KaririCode-Framework](https://github.com/KaririCode-Framework)
334324

335325
---
336326

337-
<div align="center">
327+
## 📝 Changelog (excerpt)
338328

339-
**If this project helped you, give it a star!**
329+
**1.2.0**
340330

341-
📧 **Commercial support**: kariricode@github.com
331+
* PHP 8.4, Nginx 1.27.3, Redis 7.2
332+
* Socket‑based PHP‑FPM; OPcache + JIT optimized
333+
* `/health.php` endpoint; improved entrypoint & config processor
334+
* Extensive env‑var configuration for Nginx/PHP/Redis
342335

343-
🔗 **Links**: [Docker Hub](https://hub.docker.com/r/kariricode/php-api-stack) | [GitHub](https://github.com/kariricode/php-api-stack) | [Documentation](IMAGE_USAGE_GUIDE.md)
336+
> Full release notes are available in the GitHub repository.
344337
345-
</div>
338+
---
339+
340+
## 📄 License
341+
342+
See `LICENSE` in the source repository.
346343

347344
---
348345

349-
<sub>Developed with ❤️ for the PHP community</sub>
346+
## 🙌 Credits
347+
348+
Made with 💚 by **KaririCode**[https://kariricode.org/](https://kariricode.org/)

0 commit comments

Comments
 (0)