Skip to content

Bump webpack-dev-middleware from 8.0.4 to 8.3.0 #3914

Bump webpack-dev-middleware from 8.0.4 to 8.3.0

Bump webpack-dev-middleware from 8.0.4 to 8.3.0 #3914

Workflow file for this run

name: Registry Client CI
on:
push:
branches:
- '**'
tags:
- 'v*'
pull_request:
permissions:
contents: read
packages: write
concurrency:
group: registry-client-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ !startsWith(github.ref, 'refs/tags/') }}
jobs:
btp:
name: Build-Tag-Push
runs-on: ubuntu-latest
env:
COMPONENT: registry
IMAGE_NAME: registry-client
# Frequent internal and branch builds.
INTERNAL_IMAGE: ghcr.io/ds-wizard/registry-client
# Public Docker Hub image.
PUBLIC_IMAGE: datastewardshipwizard/registry-client
DOCKER_HUB_USERNAME: ${{ secrets.DOCKER_HUB_USERNAME }}
DOCKER_META_CONTEXT: '.'
DOCKER_META_FILE: './app-registry/docker/Dockerfile'
DOCKER_META_PLATFORMS: 'linux/amd64,linux/arm64'
steps:
- name: '[setup] Checkout Project'
uses: actions/checkout@v7
- name: '[setup] Node.js 24'
uses: actions/setup-node@v7
with:
node-version: 24
cache: npm
- name: '[app] Elm Kernel Replacements'
run: npm run replace-kernel-packages
- name: '[app] Install'
run: npm ci
- name: '[app] Test'
run: npm run test:${COMPONENT}
- name: '[app] Build'
run: npm run build:${COMPONENT}
- name: '[setup] QEMU'
uses: docker/setup-qemu-action@v4
- name: '[setup] Docker Buildx'
uses: docker/setup-buildx-action@v4
# Branch builds are published to GHCR.
- name: '[docker] Login to GHCR'
if: >-
github.event_name == 'push' &&
startsWith(github.ref, 'refs/heads/')
uses: docker/login-action@v4
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
# Docker Hub is only needed for main and release tags.
- name: '[docker] Login to Docker Hub'
if: >-
github.event_name == 'push' &&
env.DOCKER_HUB_USERNAME != '' &&
(
github.ref == 'refs/heads/main' ||
startsWith(github.ref, 'refs/tags/v')
)
uses: docker/login-action@v4
with:
username: ${{ secrets.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKER_HUB_PASSWORD }}
# Internal GHCR tags.
#
# Examples:
# ghcr.io/ds-wizard/registry-client:develop
# ghcr.io/ds-wizard/registry-client:main
# ghcr.io/ds-wizard/registry-client:feature-example
# ghcr.io/ds-wizard/registry-client:sha-abcdef1
- name: '[docker-internal] Metadata'
id: meta-internal
if: >-
github.event_name == 'push' &&
startsWith(github.ref, 'refs/heads/')
uses: docker/metadata-action@v6
with:
images: |
${{ env.INTERNAL_IMAGE }}
tags: |
type=ref,event=branch
type=sha
flavor: |
latest=false
labels: |
org.opencontainers.image.source=${{ github.server_url }}/${{ github.repository }}
# Public Docker Hub tags.
#
# main:
# datastewardshipwizard/registry-client:latest
#
# tag v4.20.1:
# datastewardshipwizard/registry-client:4.20.1
# datastewardshipwizard/registry-client:4.20
# datastewardshipwizard/registry-client:4
- name: '[docker-public] Metadata'
id: meta-public
if: >-
github.event_name == 'push' &&
env.DOCKER_HUB_USERNAME != '' &&
(
github.ref == 'refs/heads/main' ||
startsWith(github.ref, 'refs/tags/v')
)
uses: docker/metadata-action@v6
with:
images: |
${{ env.PUBLIC_IMAGE }}
tags: |
type=raw,value=latest,enable=${{ github.ref == 'refs/heads/main' }}
type=semver,pattern={{version}}
type=semver,pattern={{major}}.{{minor}}
type=semver,pattern={{major}},enable=${{ !startsWith(github.ref, 'refs/tags/v0.') }}
flavor: |
latest=false
labels: |
org.opencontainers.image.source=${{ github.server_url }}/${{ github.repository }}
# Pull requests are built and validated but never published.
- name: '[docker] Build pull request'
if: github.event_name == 'pull_request'
uses: docker/build-push-action@v7
with:
context: ${{ env.DOCKER_META_CONTEXT }}
file: ${{ env.DOCKER_META_FILE }}
platforms: ${{ env.DOCKER_META_PLATFORMS }}
push: false
cache-from: type=gha,scope=${{ env.IMAGE_NAME }}
cache-to: type=gha,mode=max,scope=${{ env.IMAGE_NAME }}
# Build once and push all generated tags.
#
# Regular branch:
# pushes only to GHCR
#
# main:
# pushes branch and SHA tags to GHCR
# pushes latest to Docker Hub
#
# version tag:
# pushes semantic-version tags only to Docker Hub
- name: '[docker] Build and push'
if: >-
github.event_name == 'push' &&
(
startsWith(github.ref, 'refs/heads/') ||
(
env.DOCKER_HUB_USERNAME != '' &&
startsWith(github.ref, 'refs/tags/v')
)
)
uses: docker/build-push-action@v7
with:
context: ${{ env.DOCKER_META_CONTEXT }}
file: ${{ env.DOCKER_META_FILE }}
platforms: ${{ env.DOCKER_META_PLATFORMS }}
push: true
tags: |
${{ steps.meta-internal.outputs.tags }}
${{ steps.meta-public.outputs.tags }}
labels: |
${{ steps.meta-public.outputs.labels || steps.meta-internal.outputs.labels }}
cache-from: type=gha,scope=${{ env.IMAGE_NAME }}
cache-to: type=gha,mode=max,scope=${{ env.IMAGE_NAME }}