Add Container build
This commit is contained in:
committed by
Greg Hellings
parent
f4bf1c5569
commit
2556cba4e5
@@ -0,0 +1,54 @@
|
||||
name: Container Build
|
||||
|
||||
env:
|
||||
# 🖊️ EDIT to change the image registry settings.
|
||||
# Registries such as GHCR, Quay.io, and Docker Hub are supported.
|
||||
IMAGE_REGISTRY: ghcr.io/${{ github.repository_owner }}
|
||||
IMAGE_REGISTRY_USER: ${{ github.actor }}
|
||||
IMAGE_REGISTRY_PASSWORD: ${{ github.token }}
|
||||
|
||||
# 🖊️ EDIT to specify custom tags for the container image, or default tags will be generated below.
|
||||
IMAGE_TAGS: ""
|
||||
|
||||
on:
|
||||
# https://docs.github.com/en/actions/reference/events-that-trigger-workflows
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
|
||||
jobs:
|
||||
container-build:
|
||||
name: Build and deploy to OpenShift
|
||||
runs-on: ubuntu-20.04
|
||||
|
||||
steps:
|
||||
|
||||
- name: Check out repository
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
submodules: true
|
||||
|
||||
- name: Determine timestamp
|
||||
id: time
|
||||
uses: nanzm/get-time-action@v1.1
|
||||
with:
|
||||
format: 'YYYYMMDDHHmm' # Minute granularity timestamp for versioning
|
||||
|
||||
- name: Build from Containerfile
|
||||
id: build-image
|
||||
uses: redhat-actions/buildah-build@v2
|
||||
with:
|
||||
image: homepage
|
||||
tags: ${{ steps.time.outputs.time }} latest
|
||||
containerfiles: |
|
||||
./Containerfile
|
||||
|
||||
- name: Push to registry
|
||||
id: push-image
|
||||
uses: redhat-actions/push-to-registry@v2
|
||||
with:
|
||||
image: ${{ steps.build-image.outputs.image }}
|
||||
tags: ${{ steps.build-image.outputs.tags }}
|
||||
registry: ${{ env.IMAGE_REGISTRY }}
|
||||
username: ${{ env.IMAGE_REGISTRY_USER }}
|
||||
password: ${{ env.IMAGE_REGISTRY_PASSWORD }}
|
||||
@@ -0,0 +1,10 @@
|
||||
FROM fedora:latest AS build
|
||||
|
||||
RUN dnf install -y hugo
|
||||
RUN mkdir /build
|
||||
WORKDIR /build
|
||||
COPY . /build/
|
||||
RUN hugo -v
|
||||
|
||||
FROM nginx:latest
|
||||
COPY --from=build /build/public/ /usr/share/nginx/html/
|
||||
Reference in New Issue
Block a user