Skip to content

Commit

Permalink
adding base container generation
Browse files Browse the repository at this point in the history
  • Loading branch information
petersilva committed Oct 31, 2023
1 parent 283eb18 commit 957eb7c
Show file tree
Hide file tree
Showing 2 changed files with 74 additions and 0 deletions.
60 changes: 60 additions & 0 deletions .github/workflows/ghcr-base.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# This workflow uses actions that are not certified by GitHub.
# They are provided by a third-party and are governed by
# separate terms of service, privacy policy, and support
# documentation.

name: build base container image to GitHub Container Registry

on:
schedule:
- cron: '17 2 1 * *'

env:
REGISTRY: ghcr.io
IMAGE_NAME: sarracenia_base

jobs:
# Push image to GitHub Packages.
# See also https://docs.docker.com/docker-hub/builds/
push:
runs-on: ubuntu-latest
permissions:
packages: write
contents: read

steps:
- name: Checkout branch
uses: actions/checkout@v3

- name: Set up QEMU
uses: docker/setup-qemu-action@v1

- name: Login to GitHub Container Registry
uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v1

- name: Rename image for publication
run: |
IMAGE_ID=ghcr.io/${{ github.repository_owner }}/$IMAGE_NAME
# Change all uppercase to lowercase
IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]')
# Strip git ref prefix from version
echo IMAGE_ID=$IMAGE_ID >> $GITHUB_ENV
- name: Build and push
uses: docker/[email protected]
with:
context: ./
file: ./Dockerfile_base
platforms: linux/arm64, linux/amd64
push: true
tags: |
${{ env.IMAGE_ID }}:latest
14 changes: 14 additions & 0 deletions Dockerfile_base
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
FROM ubuntu:latest

MAINTAINER "[email protected]"

ENV TZ="Etc/UTC" \
DEBIAN_FRONTEND="noninteractive" \
BUILD_PACKAGES="build-essential"

# deps copied from setup.py requires= ...

RUN apt-get update ; apt-get install -y python3-amqp python3-appdirs python3-dateparser python3-humanfriendly python3-humanize python3-jsonpickle python3-netifaces python3-paramiko python3-pip python3-psutil python3-watchdog

# need version >= 1.5.1 to get MQTT v5 support, not in repos of 20.04 ... so get from pip.
RUN pip3 install paho-mqtt

0 comments on commit 957eb7c

Please sign in to comment.