SimVascular / SimVascular/svMultiPhysics

Automatically build and upload Docker containers

Open
#310 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement future development
Dominant language
C++
Stars
45
Forks
60
Avg merge
5d 23h
Merged PRs (30d)
11

Description

Problem

Sometimes, we will need to rebuild the Docker images that are hosted on Docker Hub, e.g., when external versions change. This is currently done manually.

Solution

Have a GitHub workflow that automatically runs the Dockerfiles and uploads the images to Docker hub when triggered. This doesn't need to happen with every pull request since it's unnecessary and resource-consuming. Rather, the action would need to figure out for itself when it's necessary to trigger a rebuild.

4C has an action to check if a Docker rebuild is required. I think they do that by comparing the hashes of their dependencies.

Additional context

See the discussion in #308.

Code of Conduct
  • I agree to follow this project's Code of Conduct and Contributing Guidelines

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the Dockerfiles in the Docker directory and the discussion in #308, then review the linked 4C GitHub actions for dependency-hash checking. Define the workflow's rebuild trigger and Docker Hub upload steps around those inputs. Done means a triggered workflow detects when rebuilding is needed, builds the images, and uploads them successfully.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, github-actions
Domain
ci-cd, devops
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.