Skip to content

Release

Release #48

Workflow file for this run

name: Release
on:
push:
branches:
- 'main'
schedule:
- cron: '0 0 * * *'
jobs:
build-and-push:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Login Github Container registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Get latest tag from AUTOMATIC1111/stable-diffusion-webui
id: get_latest_tag
run: |
LATEST_TAG=$(curl -s https://api.github.com/repos/AUTOMATIC1111/stable-diffusion-webui/tags | jq -r '.[0].name')
echo "LATEST_TAG=$LATEST_TAG" >> $GITHUB_ENV
- name: Docker meta
id: meta
uses: docker/metadata-action@v4
with:
images: |
ghcr.io/${{ github.repository_owner }}/stable-diffusion-webui
tags: |
latest
${{ env.LATEST_TAG }}
- name: Build
uses: docker/build-push-action@v4
with:
context: .
platforms: linux/amd64
push: true
provenance: false
build-args: SD_WEBUI_VERSION=${{ env.LATEST_TAG }}
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
- name: package helm
run: |-
tar -zcvf stable-diffusion-${{ env.LATEST_TAG }}.tgz stable-diffusion
- uses: actions/upload-artifact@v3
with:
path: stable-diffusion-${{ env.LATEST_TAG }}.tgz
- name: Fix chart version
id: fix-chart-version
run: |
yq -i '.version="${{ env.LATEST_TAG }}"' stable-diffusion/Chart.yaml
yq -i '.image.tag="${{ env.LATEST_TAG }}"' stable-diffusion/values.yaml
- name: Push Helm Chart to ChartMuseum
uses: bsord/[email protected]
with:
username: ${{ secrets.HELM_USERNAME }}
password: ${{ secrets.HELM_PASSWORD }}
registry-url: 'https://release.daocloud.io/chartrepo/community'
force: true
chart-folder: stable-diffusion