Add Flask shopping app with Nomad deployment
Some checks failed
deploy / deploy (push) Has been cancelled
Some checks failed
deploy / deploy (push) Has been cancelled
Flask app serving the Citti shopping list with SQLite persistence, per-category item addition, dynamic custom categories, photo upload, and a post-trip price analysis page. - Port 9756, DATA_DIR env var for persistent volume in Nomad - Gitea Actions pipeline builds Docker image and deploys via Nomad API - Makefile targets: run, install, build, push Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
41
.gitea/workflows/deploy.yml
Normal file
41
.gitea/workflows/deploy.yml
Normal file
@@ -0,0 +1,41 @@
|
||||
name: deploy
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [main]
|
||||
|
||||
env:
|
||||
IMAGE: gea.i80.dk/hjess/citti
|
||||
|
||||
jobs:
|
||||
deploy:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- name: Login to Gitea registry
|
||||
run: |
|
||||
echo "${{ secrets.GITEA_TOKEN }}" | \
|
||||
docker login gea.i80.dk -u ${{ github.actor }} --password-stdin
|
||||
|
||||
- name: Build & push image
|
||||
run: |
|
||||
docker build \
|
||||
-t ${{ env.IMAGE }}:latest \
|
||||
-t ${{ env.IMAGE }}:${{ github.sha }} .
|
||||
docker push ${{ env.IMAGE }}:latest
|
||||
docker push ${{ env.IMAGE }}:${{ github.sha }}
|
||||
|
||||
- name: Deploy to Nomad
|
||||
env:
|
||||
NOMAD_ADDR: ${{ secrets.NOMAD_ADDR }}
|
||||
NOMAD_TOKEN: ${{ secrets.NOMAD_TOKEN }}
|
||||
run: |
|
||||
JOB_JSON=$(curl -sf "${NOMAD_ADDR}/v1/jobs/parse" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d "{\"JobHCL\": $(jq -Rs . < citti.nomad)}")
|
||||
curl -sf -X POST "${NOMAD_ADDR}/v1/jobs" \
|
||||
-H "X-Nomad-Token: ${NOMAD_TOKEN}" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d "{\"Job\": ${JOB_JSON}}"
|
||||
echo "✓ Deployed"
|
||||
Reference in New Issue
Block a user