DAN-168 Build Push Docker Images on Tag (#150)

This commit is contained in:
Yuhong Sun
2023-07-08 16:31:59 -07:00
committed by GitHub
parent 367330d27a
commit 452a9f0ad6
2 changed files with 98 additions and 0 deletions

View File

@@ -0,0 +1,50 @@
name: Build and Push Docker Images on Tagging
on:
push:
tags:
- '*'
jobs:
build-and-push:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Login to Docker Hub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_TOKEN }}
- name: Web Server Docker Build and Push
uses: docker/build-push-action@v2
with:
context: ./web
file: ./web/Dockerfile
platforms: linux/amd64,linux/arm64
push: true
tags: danswer/danswer-web-server:${{ github.ref_name }}
- name: Api Server Docker Build and Push
uses: docker/build-push-action@v2
with:
context: ./backend
file: ./backend/Dockerfile
platforms: linux/amd64,linux/arm64
push: true
tags: danswer/danswer-backend:${{ github.ref_name }}
- name: Background Job Docker Build and Push
uses: docker/build-push-action@v2
with:
context: ./backend
file: ./backend/Dockerfile.background
platforms: linux/amd64,linux/arm64
push: true
tags: danswer/danswer-backend-background:${{ github.ref_name }}

48
.github/workflows/docker-tag-latest.yml vendored Normal file
View File

@@ -0,0 +1,48 @@
name: Tag Latest Version
on:
workflow_dispatch:
inputs:
version:
description: 'The version (ie v0.0.1) to tag as latest'
required: true
jobs:
tag:
runs-on: ubuntu-latest
steps:
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Login to Docker Hub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_TOKEN }}
- name: Enable Docker CLI experimental features
run: echo "DOCKER_CLI_EXPERIMENTAL=enabled" >> $GITHUB_ENV
- name: Pull, Tag and Push Web Server Image
run: |
docker pull danswer/danswer-web-server:${{ github.event.inputs.version }}
docker tag danswer/danswer-web-server:${{ github.event.inputs.version }} danswer/danswer-web-server:latest
docker push danswer/danswer-web-server:latest
docker manifest create danswer/danswer-web-server:latest danswer/danswer-web-server:latest
docker manifest push danswer/danswer-web-server:latest
- name: Pull, Tag and Push API Server Image
run: |
docker pull danswer/danswer-backend:${{ github.event.inputs.version }}
docker tag danswer/danswer-backend:${{ github.event.inputs.version }} danswer/danswer-backend:latest
docker push danswer/danswer-backend:latest
docker manifest create danswer/danswer-backend:latest danswer/danswer-backend:latest
docker manifest push danswer/danswer-backend:latest
- name: Pull, Tag and Push Background Job Image
run: |
docker pull danswer/danswer-backend-background:${{ github.event.inputs.version }}
docker tag danswer/danswer-backend-background:${{ github.event.inputs.version }} danswer/danswer-backend-background:latest
docker push danswer/danswer-backend-background:latest
docker manifest create danswer/danswer-backend-background:latest danswer/danswer-backend-background:latest
docker manifest push danswer/danswer-backend-background:latest