Add logo, hero image, and update binder links #1
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: "GHCR: Binder Base Image" | |
| # Builds the Underworld3 binder-ready Docker image and pushes to GHCR | |
| # The image is used by mybinder.org via the uw3-binder-launcher repository | |
| # | |
| # This is separate from docker-image.yml which builds command-line Docker | |
| # images for DockerHub. | |
| on: | |
| push: | |
| branches: [main, uw3-release-candidate, development] | |
| paths: | |
| # Only rebuild when these files change (Cython/dependencies require rebuild) | |
| - 'container/Dockerfile.base.optimized' | |
| - 'pixi.toml' | |
| - 'pixi.lock' | |
| - 'src/**/*.pyx' | |
| - 'src/**/*.c' | |
| - 'setup.py' | |
| workflow_dispatch: | |
| inputs: | |
| force_rebuild: | |
| description: 'Force full rebuild (no cache)' | |
| type: boolean | |
| default: false | |
| jobs: | |
| build-and-push: | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: read | |
| packages: write | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Set up Docker Buildx | |
| uses: docker/setup-buildx-action@v3 | |
| - name: Login to GHCR | |
| uses: docker/login-action@v3 | |
| with: | |
| registry: ghcr.io | |
| username: ${{ github.actor }} | |
| password: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Extract branch name | |
| run: echo "BRANCH=${GITHUB_REF##*/}" >> $GITHUB_ENV | |
| - name: Build and push Docker image | |
| uses: docker/build-push-action@v5 | |
| with: | |
| context: . | |
| file: container/Dockerfile.base.optimized | |
| push: true | |
| platforms: linux/amd64 | |
| no-cache: ${{ inputs.force_rebuild || false }} | |
| tags: | | |
| ghcr.io/underworldcode/uw3-base:${{ env.BRANCH }}-slim | |
| ghcr.io/underworldcode/uw3-base:latest-slim | |
| # Trigger launcher repo to update its Dockerfile reference | |
| # Requires LAUNCHER_PAT secret (Personal Access Token with repo scope) | |
| - name: Trigger launcher update | |
| if: success() | |
| uses: peter-evans/repository-dispatch@v2 | |
| with: | |
| token: ${{ secrets.LAUNCHER_PAT }} | |
| repository: underworldcode/uw3-binder-launcher | |
| event-type: image-updated | |
| client-payload: '{"branch": "${{ env.BRANCH }}"}' |