Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 3.8.0 #321

Merged
merged 29 commits into from
Apr 19, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
27e7d45
updates tools
shelane Feb 9, 2024
c1f9190
Switch to bats-core/[email protected] for CI tests
lmakarov Feb 12, 2024
54f946b
Merge pull request #316 from docksal/feature/version-bumps
lmakarov Feb 12, 2024
80d6d41
updates platformsh 4.14.1 => 4.15.3
shelane Feb 22, 2024
5d38df8
updates yq 4.40.7 => 4.42.1
shelane Feb 26, 2024
58eb65e
updates terminus 3.3.3 => 3.3.5
shelane Feb 29, 2024
b915e9d
updates platformsh 4.15.3 => 4.16.0
shelane Mar 5, 2024
7b68ea6
updates composer 2.7.1 => 2.7.2
shelane Mar 11, 2024
b819b6e
updates acli 2.22.2 => 2.23.0
shelane Mar 14, 2024
55e71a3
updates acli 2.23.0 => 2.23.1
shelane Mar 20, 2024
f97d252
updates platformsh 4.16.0 => 4.17.0
shelane Mar 22, 2024
e2d8ff9
updates yq 4.42.1 => 4.43.1
shelane Mar 25, 2024
2ce3b75
updates acli 2.23.1 => 2.23.2
shelane Mar 25, 2024
14f70bf
updates acli 2.23.2 => 2.24.0
shelane Apr 3, 2024
2b50361
updates platformsh 4.17.0 => 4.18.0
shelane Apr 12, 2024
08f955c
updates acli 2.24.0 => 2.25.0
shelane Apr 18, 2024
7c3492a
Merge pull request #318 from docksal/feature/version-bumps
lmakarov Apr 18, 2024
620f17e
Minor CI updates
lmakarov Apr 19, 2024
e222fda
PHP version bumps (8.1.28, 8.2.18, 8.3.6)
lmakarov Apr 19, 2024
efd053e
Reduce noise in runtime logs
lmakarov Apr 19, 2024
ef185cf
CI fixes
lmakarov Apr 19, 2024
51482a6
Fix platform.sh integration test
lmakarov Apr 19, 2024
05484b1
Merge pull request #319 from docksal/feature/logs
lmakarov Apr 19, 2024
27a4a40
Support for corepack yarn installation
lmakarov Apr 19, 2024
944a7e1
Merge pull request #320 from docksal/feature/corepack-yarn
lmakarov Apr 19, 2024
eda3f74
Node.js v20.12.2 LTS
lmakarov Apr 19, 2024
52fc885
Set PHP 8.3 image as default/latest
lmakarov Apr 19, 2024
b91ccf4
README.md refresh
lmakarov Apr 19, 2024
ae8d449
VS Code version bumps
lmakarov Apr 19, 2024
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
2 changes: 1 addition & 1 deletion .github/scripts/docker-tags.sh
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ set_output() {
# Print with new lines for output in build logs
(IFS=$'\n'; echo "${outputArr[*]}")
# Using newlines in output variables does not seem to work, so we'll use comas
(IFS=$','; echo "::set-output name=tags::${outputArr[*]}")
(IFS=$','; echo tags="${outputArr[*]}" | tee -a ${GITHUB_OUTPUT})
}

# Image tags
Expand Down
48 changes: 24 additions & 24 deletions .github/workflows/default.yaml
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
name: Docker Build and Push
name: Build, Test, Push

on:
schedule:
- cron: '0 10 * * 0' # Every Sunday at 10AM
- cron: "0 10 * * 0" # Every Sunday at 10AM
push:
branches:
- master
- develop
- feature/*
tags:
- 'v*.*.*'
- "v*.*.*"
workflow_dispatch: # Allow manually triggering a build

defaults:
Expand All @@ -19,7 +19,7 @@ defaults:
env:
IMAGE: docksal/cli
UPSTREAM_IMAGE: debian
LATEST_VERSION: '8.2'
LATEST_VERSION: "8.3"
DOCKSAL_VERSION: develop

jobs:
Expand All @@ -34,27 +34,27 @@ jobs:
-
platform: linux/amd64
arch: amd64
version: '8.1'
version: "8.1"
-
platform: linux/amd64
arch: amd64
version: '8.2'
version: "8.2"
-
platform: linux/amd64
arch: amd64
version: '8.3'
version: "8.3"
-
platform: linux/arm64
arch: arm64
version: '8.1'
version: "8.1"
-
platform: linux/arm64
arch: arm64
version: '8.2'
version: "8.2"
-
platform: linux/arm64
arch: arm64
version: '8.3'
version: "8.3"

env:
ARCH: ${{ matrix.arch }}
Expand All @@ -76,9 +76,10 @@ jobs:
echo ARM64_HOST_SSH_CERT="$(ssh-keyscan -t rsa ${{ secrets.ARM64_HOST }} 2>/dev/null)" | tee -a ${GITHUB_ENV}
-
# Switch docker context to a remote arm64 host
# Used for building heavy images that take too long to build using QEMU + for native arm64 testing.
name: Switch to arm64 builder host
if: ${{ env.ARCH == 'arm64' }}
uses: arwynfr/actions-docker-context@v2
uses: docksal/actions/docker-context@main
with:
docker_host: "ssh://build-agent@${{ secrets.ARM64_HOST }}"
context_name: arm64-host
Expand Down Expand Up @@ -123,27 +124,27 @@ jobs:
-
platform: linux/amd64
arch: amd64
version: '8.1'
version: "8.1"
-
platform: linux/amd64
arch: amd64
version: '8.2'
version: "8.2"
-
platform: linux/amd64
arch: amd64
version: '8.3'
version: "8.3"
-
platform: linux/arm64
arch: arm64
version: '8.1'
version: "8.1"
-
platform: linux/arm64
arch: arm64
version: '8.2'
version: "8.2"
-
platform: linux/arm64
arch: arm64
version: '8.3'
version: "8.3"

env:
ARCH: ${{ matrix.arch }}
Expand All @@ -153,9 +154,7 @@ jobs:
steps:
-
name: Setup Bats
uses: mig4/setup-bats@v1
with:
bats-version: '1.3.0'
uses: bats-core/[email protected]
-
name: Checkout
uses: actions/checkout@v4
Expand All @@ -170,9 +169,10 @@ jobs:
echo ARM64_HOST_SSH_CERT="$(ssh-keyscan -t rsa ${{ secrets.ARM64_HOST }} 2>/dev/null)" | tee -a ${GITHUB_ENV}
-
# Switch docker context to a remote arm64 host
# Used for building heavy images that take too long to build using QEMU + for native arm64 testing.
name: Switch to arm64 builder host
if: ${{ env.ARCH == 'arm64' }}
uses: arwynfr/actions-docker-context@v2
uses: docksal/actions/docker-context@main
with:
docker_host: "ssh://build-agent@${{ secrets.ARM64_HOST }}"
context_name: arm64-host
Expand Down Expand Up @@ -219,9 +219,9 @@ jobs:
strategy:
matrix:
version:
- '8.1'
- '8.2'
- '8.3'
- "8.1"
- "8.2"
- "8.3"

env:
VERSION_PREFIX: php
Expand Down
33 changes: 18 additions & 15 deletions 8.1/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM php:8.1.27-fpm-bookworm as cli
FROM php:8.1.28-fpm-bookworm as cli

ARG TARGETARCH
ARG DEBIAN_FRONTEND=noninteractive
Expand Down Expand Up @@ -240,16 +240,16 @@ RUN set -xe; \
ENV \
COMPOSER_DEFAULT_VERSION=2 \
COMPOSER_VERSION=1.10.27 \
COMPOSER2_VERSION=2.7.0 \
COMPOSER2_VERSION=2.7.2 \
DRUSH_VERSION=8.4.12 \
DRUPAL_CONSOLE_LAUNCHER_VERSION=1.9.7 \
WPCLI_VERSION=2.9.0 \
WPCLI_VERSION=2.10.0 \
# platformsh/legacy-cli
PLATFORMSH_CLI_VERSION=4.14.1 \
ACQUIA_CLI_VERSION=2.22.1 \
TERMINUS_VERSION=3.3.3 \
PLATFORMSH_CLI_VERSION=4.18.0 \
ACQUIA_CLI_VERSION=2.25.0 \
TERMINUS_VERSION=3.3.5 \
JQ_VERSION=1.7.1 \
YQ_VERSION=4.40.5
YQ_VERSION=4.43.1
RUN set -xe; \
# Composer 1.x
curl -fsSL "https://github.com/composer/composer/releases/download/${COMPOSER_VERSION}/composer.phar" -o /usr/local/bin/composer1; \
Expand Down Expand Up @@ -326,19 +326,22 @@ $HOME/.composer/vendor/phpcompatibility/phpcompatibility-paragonie/PHPCompatibil
# Node.js (installed as user)
ENV \
NVM_VERSION=0.39.7 \
NODE_VERSION=20.11.0 \
# yarn releases above 1.22.19 don't install
YARN_VERSION=1.22.19
NODE_VERSION=20.12.2 \
# Yarn (Classic v1)
# https://github.com/yarnpkg/yarn/releases
YARN_VERSION=1.22.22
# Don't use -x here, as the output may be excessive
RUN set -e; \
# NVM and a defaut Node.js version
export PROFILE="$HOME/.profile"; \
curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v${NVM_VERSION}/install.sh | bash >/dev/null; \
# Reload profile to load nvm (needed by Yarn installation below)
. $HOME/.profile; \
# Yarn
export YARN_PROFILE="$HOME/.profile"; \
curl -fsSL https://yarnpkg.com/install.sh | bash -s -- --version ${YARN_VERSION} >/dev/null
# Yarn (Classic v1)
# Installing via npm to allow fore override with never versions via corepack
npm install -g yarn@${YARN_VERSION}; \
# Enable corepack (allows installing project level yarn v2+ via yarn)
corepack enable

## Ruby bundler
## Don't use -x here, as the output may be excessive
Expand Down Expand Up @@ -414,8 +417,8 @@ USER docker
ARG HOME=/home/docker

ENV \
CODE_SERVER_VERSION=4.20.1 \
VSCODE_GITLENS_VERSION=14.7.0 \
CODE_SERVER_VERSION=4.23.1 \
VSCODE_GITLENS_VERSION=14.9.0 \
VSCODE_XDEBUG_VERSION=1.34.0 \
VSCODE_HOME="${HOME}/code-server"

Expand Down
4 changes: 4 additions & 0 deletions 8.1/config/php/zz-php-fpm.conf
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,16 @@
[global]
; This pid file is used for Docker healthcheck
pid = /run/php-fpm.pid
; Reduce noise in logs
log_level = error

[www]
user = docker
catch_workers_output = yes
listen = 0.0.0.0:9000
clear_env = no
; Do not log php-fpm accesses (see web container for http access)
access.log = /dev/null

; PHP (FPM) settings
; See zz-php.ini for global (CLI and FPM) PHP settings
Expand Down
6 changes: 6 additions & 0 deletions 8.1/config/supervisor/supervisord.conf
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,9 @@ nodaemon = true
# This way logs can be reviewed with docker logs.
# Additionalluy, logs from specific services are forwarded to individual files on disk.
loglevel = debug
# Mute the "CRIT Supervisor is running as root" warning in logs.
user=root
# Mute the "CRIT Server 'unix_http_server' running without any HTTP authentication checking" warning in logs
[unix_http_server]
username = dummy
password = dummy
33 changes: 18 additions & 15 deletions 8.2/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM php:8.2.15-fpm-bookworm as cli
FROM php:8.2.18-fpm-bookworm as cli

ARG TARGETARCH
ARG DEBIAN_FRONTEND=noninteractive
Expand Down Expand Up @@ -241,16 +241,16 @@ RUN set -xe; \
ENV \
COMPOSER_DEFAULT_VERSION=2 \
COMPOSER_VERSION=1.10.27 \
COMPOSER2_VERSION=2.7.0 \
COMPOSER2_VERSION=2.7.2 \
DRUSH_VERSION=8.4.12 \
DRUPAL_CONSOLE_LAUNCHER_VERSION=1.9.7 \
WPCLI_VERSION=2.9.0 \
WPCLI_VERSION=2.10.0 \
# platformsh/legacy-cli
PLATFORMSH_CLI_VERSION=4.14.1 \
ACQUIA_CLI_VERSION=2.22.1 \
TERMINUS_VERSION=3.3.3 \
PLATFORMSH_CLI_VERSION=4.18.0 \
ACQUIA_CLI_VERSION=2.25.0 \
TERMINUS_VERSION=3.3.5 \
JQ_VERSION=1.7.1 \
YQ_VERSION=4.40.5
YQ_VERSION=4.43.1
RUN set -xe; \
# Composer 1.x
curl -fsSL "https://github.com/composer/composer/releases/download/${COMPOSER_VERSION}/composer.phar" -o /usr/local/bin/composer1; \
Expand Down Expand Up @@ -327,19 +327,22 @@ $HOME/.composer/vendor/phpcompatibility/phpcompatibility-paragonie/PHPCompatibil
# Node.js (installed as user)
ENV \
NVM_VERSION=0.39.7 \
NODE_VERSION=20.11.0 \
# yarn releases above 1.22.19 don't install
YARN_VERSION=1.22.19
NODE_VERSION=20.12.2 \
# Yarn (Classic v1)
# https://github.com/yarnpkg/yarn/releases
YARN_VERSION=1.22.22
# Don't use -x here, as the output may be excessive
RUN set -e; \
# NVM and a defaut Node.js version
export PROFILE="$HOME/.profile"; \
curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v${NVM_VERSION}/install.sh | bash >/dev/null; \
# Reload profile to load nvm (needed by Yarn installation below)
. $HOME/.profile; \
# Yarn
export YARN_PROFILE="$HOME/.profile"; \
curl -fsSL https://yarnpkg.com/install.sh | bash -s -- --version ${YARN_VERSION} >/dev/null
# Yarn (Classic v1)
# Installing via npm to allow fore override with never versions via corepack
npm install -g yarn@${YARN_VERSION}; \
# Enable corepack (allows installing project level yarn v2+ via yarn)
corepack enable

## Ruby bundler
## Don't use -x here, as the output may be excessive
Expand Down Expand Up @@ -415,8 +418,8 @@ USER docker
ARG HOME=/home/docker

ENV \
CODE_SERVER_VERSION=4.20.1 \
VSCODE_GITLENS_VERSION=14.7.0 \
CODE_SERVER_VERSION=4.23.1 \
VSCODE_GITLENS_VERSION=14.9.0 \
VSCODE_XDEBUG_VERSION=1.34.0 \
VSCODE_HOME="${HOME}/code-server"

Expand Down
4 changes: 4 additions & 0 deletions 8.2/config/php/zz-php-fpm.conf
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,16 @@
[global]
; This pid file is used for Docker healthcheck
pid = /run/php-fpm.pid
; Reduce noise in logs
log_level = error

[www]
user = docker
catch_workers_output = yes
listen = 0.0.0.0:9000
clear_env = no
; Do not log php-fpm accesses (see web container for http access)
access.log = /dev/null

; PHP (FPM) settings
; See zz-php.ini for global (CLI and FPM) PHP settings
Expand Down
6 changes: 6 additions & 0 deletions 8.2/config/supervisor/supervisord.conf
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,9 @@ nodaemon = true
# This way logs can be reviewed with docker logs.
# Additionalluy, logs from specific services are forwarded to individual files on disk.
loglevel = debug
# Mute the "CRIT Supervisor is running as root" warning in logs.
user=root
# Mute the "CRIT Server 'unix_http_server' running without any HTTP authentication checking" warning in logs
[unix_http_server]
username = dummy
password = dummy
Loading
Loading