Skip to content
Open
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
7 changes: 7 additions & 0 deletions .github/workflows/docker.build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,10 @@ jobs:
images: ghcr.io/${{ github.repository }}
tags: |
type=sha
-
name: Set image build timestamp
id: build_metadata
run: echo "build_date=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" >> "$GITHUB_OUTPUT"
-
name: Set up QEMU
uses: docker/setup-qemu-action@v4.2.0
Expand Down Expand Up @@ -55,6 +59,9 @@ jobs:
push: ${{ github.event_name != 'pull_request' }}
tags: ${{ steps.docker_meta.outputs.tags }}
labels: ${{ steps.docker_meta.outputs.labels }}
build-args: |
WBSTACK_IMAGE_BUILD_DATE=${{ steps.build_metadata.outputs.build_date }}
WBSTACK_IMAGE_REVISION=${{ github.sha }}
-
name: Check out `wmde/wbaas-deploy` repository in staging child directory
if: github.event_name != 'pull_request'
Expand Down
6 changes: 6 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -134,4 +134,10 @@ ARG LOCALIZATION_CACHE_THREAD_COUNT=1
ARG LOCALIZATION_CACHE_ADDITIONAL_PARAMS
RUN WBS_DOMAIN=maint php ./w/maintenance/rebuildLocalisationCache.php --threads=${LOCALIZATION_CACHE_THREAD_COUNT} ${LOCALIZATION_CACHE_ADDITIONAL_PARAMS}

# Preserve build provenance in the runtime environment for MediaWiki hooks.
ARG WBSTACK_IMAGE_BUILD_DATE=unknown
ARG WBSTACK_IMAGE_REVISION=unknown
ENV WBSTACK_IMAGE_BUILD_DATE=${WBSTACK_IMAGE_BUILD_DATE} \
WBSTACK_IMAGE_REVISION=${WBSTACK_IMAGE_REVISION}

LABEL org.opencontainers.image.source="https://github.com/wbstack/mediawiki"
11 changes: 11 additions & 0 deletions dist-persist/wbstack/src/Settings/Hooks.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,17 @@

use MediaWiki\MediaWikiServices;

//// Expose immutable image build provenance on Special:Version.
$wgHooks['SoftwareInfo'][] = static function ( &$software ) {
foreach ( [
'WBStack image build' => 'WBSTACK_IMAGE_BUILD_DATE',
'WBStack image version' => 'WBSTACK_IMAGE_REVISION',
] as $name => $environmentVariable ) {
$value = getenv( $environmentVariable );
$software[$name] = $value === false || trim( $value ) === '' ? 'unknown' : trim( $value );
}
};

//// CUSTOM Sidebar for WBStack
// https://www.mediawiki.org/wiki/Manual:Hooks/SkinBuildSidebar
$wgHooks['SkinBuildSidebar'][] = function ( $skin, &$sidebar ) use ( $wikiInfo ) {
Expand Down
11 changes: 11 additions & 0 deletions dist/wbstack/src/Settings/Hooks.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,17 @@

use MediaWiki\MediaWikiServices;

//// Expose immutable image build provenance on Special:Version.
$wgHooks['SoftwareInfo'][] = static function ( &$software ) {
foreach ( [
'WBStack image build' => 'WBSTACK_IMAGE_BUILD_DATE',
'WBStack image version' => 'WBSTACK_IMAGE_REVISION',
] as $name => $environmentVariable ) {
$value = getenv( $environmentVariable );
$software[$name] = $value === false || trim( $value ) === '' ? 'unknown' : trim( $value );
}
};

//// CUSTOM Sidebar for WBStack
// https://www.mediawiki.org/wiki/Manual:Hooks/SkinBuildSidebar
$wgHooks['SkinBuildSidebar'][] = function ( $skin, &$sidebar ) use ( $wikiInfo ) {
Expand Down
Loading