Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
58 changes: 0 additions & 58 deletions .github/workflows/devcontainer-build+deploy.yaml

This file was deleted.

112 changes: 112 additions & 0 deletions .github/workflows/release-base-build+deploy.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,112 @@
on:
push:
branches:
- 'master'
paths:
- 'release-base/**'
pull_request:
branches:
- 'master'
paths:
- 'release-base/**'

jobs:
build:
name: Build & deploy ``release-base`` images
strategy:
fail-fast: false
matrix:
include:
- { platform: linux/amd64, arch: x86_64, runner: ubuntu-24.04 }
- { platform: linux/arm64, arch: aarch64, runner: ubuntu-24.04-arm }
runs-on: ${{ matrix.runner }}
steps:
-
name: Checkout
uses: actions/checkout@v7
-
name: Docker meta
id: meta
uses: docker/metadata-action@v6
with:
images: eoshep/release-base
tags: |
type=raw,value={{date 'YYYY-MM-DD'}}-{{sha}}
type=raw,value=latest
-
name: Set up QEMU
uses: docker/setup-qemu-action@v4
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v4
-
name: Login to DockerHub
uses: docker/login-action@v4
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
-
name: Build and push
id: build
uses: docker/build-push-action@v7
with:
push: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
context: release-base/${{ matrix.arch }}
platforms: ${{ matrix.platform }}
labels: ${{ steps.meta.outputs.labels }}
outputs: type=image,name=eoshep/release-base,push-by-digest=true,name-canonical=true,push=true
-
name: Export digest
run: |
mkdir -p /tmp/digests
digest="${{ steps.build.outputs.digest }}"
touch "/tmp/digests/${digest#sha256:}"
-
name: Upload digest
uses: actions/upload-artifact@v7
with:
name: digest-${{ matrix.arch }}
path: /tmp/digests/*
if-no-files-found: error
retention-days: 1

merge:
runs-on: ubuntu-latest
needs:
- build
steps:
-
name: Download digests
uses: actions/download-artifact@v8
with:
pattern: digest-*
path: /tmp/digests
merge-multiple: true
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v4
-
name: Docker meta
id: meta
uses: docker/metadata-action@v6
with:
images: eoshep/release-base
tags: |
type=raw,value={{date 'YYYY-MM-DD'}}-{{sha}}
type=raw,value=latest
-
name: Login to Docker Hub
uses: docker/login-action@v4
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
-
name: Create manifest list and push
working-directory: /tmp/digests
run: |
docker buildx imagetools create $(jq -cr '.tags | map("-t " + .) | join(" ")' <<< "$DOCKER_METADATA_OUTPUT_JSON") \
$(printf 'eoshep/release-base@sha256:%s ' *)
-
name: Inspect image
run: |
docker buildx imagetools inspect eoshep/release-base:${{ steps.meta.outputs.version }}
25 changes: 0 additions & 25 deletions devcontainer/aarch64/Dockerfile

This file was deleted.

22 changes: 0 additions & 22 deletions devcontainer/x86_64/Dockerfile

This file was deleted.

14 changes: 14 additions & 0 deletions release-base/aarch64/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
FROM arm64v8/ubuntu:resolute-20260912
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get -qq update
RUN apt-get install -y python3 python3-venv \
texlive-latex-base \
texlive-latex-extra cm-super dvipng

# switch to ubuntu user and setup python virtual environment
USER ubuntu
ENV VIRTUAL_ENV=/home/ubuntu/.venv
RUN python3 -m venv $VIRTUAL_ENV
ENV PATH="$VIRTUAL_ENV/bin:$PATH"
# install / upgrade pip and wheel
RUN pip3 install --upgrade pip wheel
14 changes: 14 additions & 0 deletions release-base/x86_64/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
FROM amd64/ubuntu:resolute-20260912
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get -qq update
RUN apt-get install -y python3 python3-venv \
texlive-latex-base \
texlive-latex-extra cm-super dvipng

# switch to ubuntu user and setup python virtual environment
USER ubuntu
ENV VIRTUAL_ENV=/home/ubuntu/.venv
RUN python3 -m venv $VIRTUAL_ENV
ENV PATH="$VIRTUAL_ENV/bin:$PATH"
# install / upgrade pip and wheel
RUN pip3 install --upgrade pip wheel