feat: /version endpoint; fix deploy action inputs
Build and Deploy / Build Image (push) Successful in 32s
Build and Deploy / Deploy (push) Successful in 6s

- Bake the commit SHA into the image (GIT_SHA build arg) and serve it at
  /version, so a deploy can be verified end to end. This repo is the
  dockerloid deploy test service.
- cssnr/portainer-stack-deploy-action@v1 reads `endpoint` and `pull`;
  `endpoint_id` / `pull_image` were silently ignored.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
rmancinasandClaude Opus 5.5 committed 2026-10-13 15:09:37 -07:00
1 parent c74a193d7d
commit 8dc6a973ce
3 files changed
+16 -3

No files matched your search

+5 -3
View File
@@ -51,9 +51,11 @@ jobs:
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
platforms: linux/amd64
build-args: |
GIT_SHA=${{ github.sha }}
deploy:
name: Deploy to Portainer
name: Deploy
needs: [build]
runs-on: docker
container:
@@ -68,8 +70,8 @@ jobs:
name: ${{ secrets.PORTAINER_STACK_NAME }}
file: docker-compose.yml
type: file
pull_image: true
endpoint_id: ${{ secrets.PORTAINER_ENDPOINT_ID }}
pull: true
endpoint: ${{ secrets.PORTAINER_ENDPOINT_ID }}
env_data: |
{
"IMAGE": "${{ env.REGISTRY }}/${{ github.repository_owner }}/ascii-art-app:latest"
+4
View File
@@ -10,6 +10,10 @@ COPY app.py ascii_engine.py ./
COPY templates ./templates
COPY static ./static
# Build provenance, served at /version so deploys can be verified
ARG GIT_SHA=unknown
ENV GIT_SHA=$GIT_SHA
# Expose port
EXPOSE 5000
+7
View File
@@ -1,3 +1,5 @@
import os
from flask import Flask, jsonify, render_template, request
import ascii_engine
@@ -15,6 +17,11 @@ def index():
)
@app.route("/version")
def version():
return jsonify(gitSha=os.environ.get("GIT_SHA", "unknown"))
@app.route("/api/random")
def api_random():
category = request.args.get("category")