browsertrix/.github/workflows/release.yaml
Ilya Kreymer d6386b7051
Release Build + Versioning (#373)
- Adds version to version.txt in root
- adds update-version.sh which updates version in frontend/package.json and backend/btrixcloud/version.py
- frontend: loads version from $VERSION env var, ../version.txt or package.json
- ci: on new github release, pushes webrecorder/browsertrix-backend and webrecorder/browsertrix-frontend images to Dockerhub with current version, as well as latest.
- version set to 1.1.0-beta.0
- closes #357
2022-11-18 17:15:25 -08:00

59 lines
1.6 KiB
YAML

name: Browsertrix Cloud Release Build
on:
release:
types: [published]
jobs:
btrix-release:
runs-on: ubuntu-22.04
steps:
-
name: Checkout
uses: actions/checkout@v3
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
-
name: Login to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
-
name: Set Env Vars
run: |
echo VERSION=`cat version.txt` >> $GITHUB_ENV
echo GIT_COMMIT_HASH=`git rev-parse --short HEAD` >> $GITHUB_ENV
echo GIT_BRANCH_NAME=`git rev-parse --abbrev-ref HEAD` >> $GITHUB_ENV
-
name: Build Backend
uses: docker/build-push-action@v3
with:
context: backend
push: true
tags: ${{ env.REPO_PREFIX }}webrecorder/browsertrix-backend:${{ env.VERSION }}, webrecorder/browsertrix-backend:latest
cache-from: type=gha,scope=backend
cache-to: type=gha,scope=backend,mode=max
-
name: Build Frontend
uses: docker/build-push-action@v3
with:
context: frontend
push: true
build-args: |
VERSION=${{ env.VERSION }}
GIT_COMMIT_HASH=${{ env.GIT_COMMIT_HASH }}
GIT_BRANCH_NAME=${{ env.GIT_BRANCH_NAME }}
tags: ${{ env.REPO_PREFIX }}webrecorder/browsertrix-frontend:${{ env.VERSION }}, webrecorder/browsertrix-frontend:latest
cache-from: type=gha,scope=frontend
cache-to: type=gha,scope=frontend,mode=max