Skip to content

Monthly Image Publish #1

Monthly Image Publish

Monthly Image Publish #1

Workflow file for this run

name: Monthly Image Publish
on:
schedule:
- cron: "0 0 1 * *"
workflow_dispatch:
permissions:
contents: read
packages: write
jobs:
publish_container:
runs-on: ubuntu-latest
steps:
- name: Check out latest release tag
uses: actions/checkout@v6
with:
fetch-depth: 0
ref: refs/tags/latest
- name: Compute image tags
id: tags
run: |
echo "image_name=ghcr.io/${GITHUB_REPOSITORY,,}" >> "$GITHUB_OUTPUT"
echo "monthly_tag=monthly-$(date -u +%Y-%m)" >> "$GITHUB_OUTPUT"
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Set up QEMU
uses: docker/setup-qemu-action@v3
- name: Log in to GHCR
uses: docker/login-action@v4
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Smoke test builder environment
run: |
docker build --target builder -t office-docs-to-md-sync-builder-smoke .
docker run --rm office-docs-to-md-sync-builder-smoke python -c "import app.converter, markitdown_no_magika"
- name: Build and push Docker image
uses: docker/build-push-action@v7
with:
context: .
file: ./Dockerfile
platforms: linux/amd64,linux/arm64
push: true
tags: |
${{ steps.tags.outputs.image_name }}:latest
${{ steps.tags.outputs.image_name }}:${{ steps.tags.outputs.monthly_tag }}