Skip to content

Commit

Permalink
chore: automatically fetch the latest versions of Taskfile and Modd t…
Browse files Browse the repository at this point in the history
…o reduce maintenance overhead
  • Loading branch information
axelpavageauekino committed Dec 20, 2024
1 parent d00347e commit ba56efe
Show file tree
Hide file tree
Showing 16 changed files with 59 additions and 63 deletions.
8 changes: 8 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,14 @@
Versions
========

2024-12-31
----------
* Chrome: using the latest versions of Taskfile and Modd
* DIND: using the latest versions of Taskfile and Modd
* Golang: using the latest versions of Taskfile and Modd
* Node: using the latest versions of Taskfile and Modd
* PHP: using the latest versions of Taskfile and Modd

2024-11-30
----------
* AWS: fixing download path for kubectl, and adding a check. We'll now use the latest version automatically
Expand Down
4 changes: 0 additions & 4 deletions base_config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,5 @@ docker_hub_namespace: ekino
DOCKER_SOCK_PATH: unix://var/run/docker.sock
DOCKER_TIMEOUT: 600

# Common build_vars
MODD_VERSION: &MODD_VERSION 0.5
TASKFILE_VERSION: &TASKFILE_VERSION 3.2.2

base_platforms: &base_platforms
- linux/amd64
5 changes: 1 addition & 4 deletions chrome/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
FROM node:10-alpine
LABEL maintainer="[email protected]"

ARG MODD_VERSION
ARG TASKFILE_VERSION

# Tell Puppeteer to skip installing Chrome. We'll be using the installed package.
ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD true

Expand All @@ -21,7 +18,7 @@ RUN apk update && apk upgrade && \
yarn add [email protected] && \
apk add --update curl git grep make ncurses tzdata && \
echo "Install Taskfile" && \
curl -sSL https://taskfile.dev/install.sh | sh -s v${TASKFILE_VERSION} && \
sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d && \
echo "Done Install Taskfile" && \
echo "Adding an up to date mime-types definition file" && \
curl -sSL https://salsa.debian.org/debian/mime-support/raw/master/mime.types -o /etc/mime.types && \
Expand Down
3 changes: 0 additions & 3 deletions chrome/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,6 @@ versions:
platforms:
- linux/amd64
- linux/arm64
build_args:
MODD_VERSION: *MODD_VERSION
TASKFILE_VERSION: *TASKFILE_VERSION
test_config:
cmd:
- google-chrome --no-sandbox --version
Expand Down
3 changes: 1 addition & 2 deletions dind/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
FROM docker:20.10.24-dind as base
LABEL maintainer="Rémi Marseille <[email protected]>"
ARG TASKFILE_VERSION
ARG TRIVY_VERSION

FROM base as base-amd64
Expand Down Expand Up @@ -32,7 +31,7 @@ RUN echo "Install AWS & Azure CLIs" && \

FROM base-$TARGETARCH
RUN echo "Install Taskfile" && \
curl -sSL https://taskfile.dev/install.sh | sh -s v${TASKFILE_VERSION} && \
sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d && \
echo "Done Install Taskfile" && \
echo "Install Docker Compose" && \
apk add --update docker-compose && \
Expand Down
1 change: 0 additions & 1 deletion dind/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@ versions:
- linux/arm64
build_args:
TRIVY_VERSION: "0.56.2"
TASKFILE_VERSION: *TASKFILE_VERSION
test_config:
cmd:
- aws --version
Expand Down
15 changes: 8 additions & 7 deletions golang/1.21/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
FROM golang:1.21.13 as base
FROM golang:1.21.13 AS base
LABEL maintainer="[email protected]"
ARG GITLEAKS_VERSION
ARG GOLANGCILINT_VERSION
ARG GOMODUPGRADE_VERSION
ARG GOSWAGGER_VERSION
ARG MIGRATE_VERSION
ARG MOCKGEN_VERSION
ARG MODD_VERSION

FROM base as base-amd64
FROM base AS base-amd64
ARG AWSCLI_ARCH="linux-x86_64"
ARG GITLEAKS_ARCH="linux_x64"
ARG GOLANGCILINT_ARCH="linux-amd64"
Expand All @@ -18,7 +17,7 @@ ARG GOMIGRATE_ARCH="linux-amd64"
ARG MOCKGEN_ARCH="linux_amd64"
ARG MODD_ARCH="linux64"

FROM base as base-arm64
FROM base AS base-arm64
ARG AWSCLI_ARCH="linux-aarch64"
ARG GITLEAKS_ARCH="linux_arm64"
ARG GOLANGCILINT_ARCH="linux-arm64"
Expand Down Expand Up @@ -65,9 +64,11 @@ RUN apt-get update -q && \
mv mock_${MOCKGEN_VERSION}_${MOCKGEN_ARCH}/mockgen /usr/local/bin && \
rm -rf mock* && \
# Install modd
wget -q https://github.com/cortesi/modd/releases/download/v${MODD_VERSION}/modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
tar -xzf modd-${MODD_VERSION}-${MODD_ARCH}.tgz && mv modd-${MODD_VERSION}-${MODD_ARCH}/modd /usr/local/bin && \
rm -rf modd-${MODD_VERSION}-${MODD_ARCH}* && \
MODD_VERSION=$(curl -s https://api.github.com/repos/cortesi/modd/releases/latest | grep '"tag_name":' | sed -E 's/.*"v([^"]+)".*/\1/') && \
curl -LO https://github.com/cortesi/modd/releases/download/v${MODD_VERSION}/modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
tar -xf modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
mv modd-${MODD_VERSION}-${MODD_ARCH}/modd /usr/local/bin && \
rm modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
# Install go tools
go install golang.org/x/tools/cmd/[email protected] && \
go install github.com/boumenot/gocover-cobertura@latest
15 changes: 8 additions & 7 deletions golang/1.22/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
FROM golang:1.22.10 as base
FROM golang:1.22.10 AS base
LABEL maintainer="[email protected]"
ARG GITLEAKS_VERSION
ARG GOLANGCILINT_VERSION
ARG GOMODUPGRADE_VERSION
ARG GOSWAGGER_VERSION
ARG MIGRATE_VERSION
ARG MOCKGEN_VERSION
ARG MODD_VERSION

FROM base as base-amd64
FROM base AS base-amd64
ARG AWSCLI_ARCH="linux-x86_64"
ARG GITLEAKS_ARCH="linux_x64"
ARG GOLANGCILINT_ARCH="linux-amd64"
Expand All @@ -18,7 +17,7 @@ ARG GOMIGRATE_ARCH="linux-amd64"
ARG MOCKGEN_ARCH="linux_amd64"
ARG MODD_ARCH="linux64"

FROM base as base-arm64
FROM base AS base-arm64
ARG AWSCLI_ARCH="linux-aarch64"
ARG GITLEAKS_ARCH="linux_arm64"
ARG GOLANGCILINT_ARCH="linux-arm64"
Expand Down Expand Up @@ -66,9 +65,11 @@ RUN apt-get update -q && \
mv mock_${MOCKGEN_VERSION}_${MOCKGEN_ARCH}/mockgen /usr/local/bin && \
rm -rf mock* && \
# Install modd
wget -q https://github.com/cortesi/modd/releases/download/v${MODD_VERSION}/modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
tar -xzf modd-${MODD_VERSION}-${MODD_ARCH}.tgz && mv modd-${MODD_VERSION}-${MODD_ARCH}/modd /usr/local/bin && \
rm -rf modd-${MODD_VERSION}-${MODD_ARCH}* && \
MODD_VERSION=$(curl -s https://api.github.com/repos/cortesi/modd/releases/latest | grep '"tag_name":' | sed -E 's/.*"v([^"]+)".*/\1/') && \
curl -LO https://github.com/cortesi/modd/releases/download/v${MODD_VERSION}/modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
tar -xf modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
mv modd-${MODD_VERSION}-${MODD_ARCH}/modd /usr/local/bin && \
rm modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
# Install go tools
go install golang.org/x/tools/cmd/goimports@latest && \
go install github.com/boumenot/gocover-cobertura@latest
15 changes: 8 additions & 7 deletions golang/1.23/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
FROM golang:1.23.4 as base
FROM golang:1.23.4 AS base
LABEL maintainer="[email protected]"
ARG GITLEAKS_VERSION
ARG GOLANGCILINT_VERSION
ARG GOMODUPGRADE_VERSION
ARG GOSWAGGER_VERSION
ARG MIGRATE_VERSION
ARG MOCKGEN_VERSION
ARG MODD_VERSION

FROM base as base-amd64
FROM base AS base-amd64
ARG AWSCLI_ARCH="linux-x86_64"
ARG GITLEAKS_ARCH="linux_x64"
ARG GOLANGCILINT_ARCH="linux-amd64"
Expand All @@ -18,7 +17,7 @@ ARG GOMIGRATE_ARCH="linux-amd64"
ARG MOCKGEN_ARCH="linux_amd64"
ARG MODD_ARCH="linux64"

FROM base as base-arm64
FROM base AS base-arm64
ARG AWSCLI_ARCH="linux-aarch64"
ARG GITLEAKS_ARCH="linux_arm64"
ARG GOLANGCILINT_ARCH="linux-arm64"
Expand Down Expand Up @@ -66,9 +65,11 @@ RUN apt-get update -q && \
mv mock_${MOCKGEN_VERSION}_${MOCKGEN_ARCH}/mockgen /usr/local/bin && \
rm -rf mock* && \
# Install modd
wget -q https://github.com/cortesi/modd/releases/download/v${MODD_VERSION}/modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
tar -xzf modd-${MODD_VERSION}-${MODD_ARCH}.tgz && mv modd-${MODD_VERSION}-${MODD_ARCH}/modd /usr/local/bin && \
rm -rf modd-${MODD_VERSION}-${MODD_ARCH}* && \
MODD_VERSION=$(curl -s https://api.github.com/repos/cortesi/modd/releases/latest | grep '"tag_name":' | sed -E 's/.*"v([^"]+)".*/\1/') && \
curl -LO https://github.com/cortesi/modd/releases/download/v${MODD_VERSION}/modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
tar -xf modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
mv modd-${MODD_VERSION}-${MODD_ARCH}/modd /usr/local/bin && \
rm modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
# Install go tools
go install golang.org/x/tools/cmd/goimports@latest && \
go install github.com/boumenot/gocover-cobertura@latest
3 changes: 0 additions & 3 deletions golang/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ versions:
GOSWAGGER_VERSION: 0.30.5
MIGRATE_VERSION: 4.17.0
MOCKGEN_VERSION: 1.6.0
MODD_VERSION: 0.8
"1.22":
platforms:
- linux/amd64
Expand All @@ -36,7 +35,6 @@ versions:
GOSWAGGER_VERSION: 0.30.5
MIGRATE_VERSION: 4.17.0
MOCKGEN_VERSION: 1.6.0
MODD_VERSION: 0.8
"1.23":
platforms:
- linux/amd64
Expand All @@ -49,4 +47,3 @@ versions:
GOSWAGGER_VERSION: 0.30.5
MIGRATE_VERSION: 4.17.0
MOCKGEN_VERSION: 1.6.0
MODD_VERSION: 0.8
19 changes: 10 additions & 9 deletions node/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM debian:11.11-slim as base
FROM debian:11.11-slim AS base
LABEL maintainer="[email protected]"
ENV DEBIAN_FRONTEND=noninteractive \
LANG=C.UTF-8 \
Expand All @@ -7,14 +7,12 @@ ENV DEBIAN_FRONTEND=noninteractive \
ARG NODE_VERSION
ARG NPM_VERSION
ARG NVM_VERSION
ARG MODD_VERSION
ARG TASKFILE_VERSION

FROM base as base-amd64
FROM base AS base-amd64
ARG MODD_ARCH="linux64"
ARG AWSCLI_ARCH="linux-x86_64"

FROM base as base-arm64
FROM base AS base-arm64
ARG MODD_ARCH="linuxARM"
ARG AWSCLI_ARCH="linux-aarch64"

Expand All @@ -25,13 +23,16 @@ RUN echo "Starting ..." && \
libmcrypt-dev libreadline-dev ruby-full openssh-client ocaml libelf-dev bzip2 gcc g++ jq && \
gem install rb-inotify:'~> 0.9.10' sass --verbose && \
gem install scss_lint:'~> 0.57.1' --verbose && \
echo "Done base install!" && \
echo "Done base install!" && \
echo "Install Modd" && \
curl -sSL https://github.com/cortesi/modd/releases/download/v${MODD_VERSION}/modd-${MODD_VERSION}-${MODD_ARCH}.tgz | tar -xOvzf - modd-${MODD_VERSION}-${MODD_ARCH}/modd > /usr/bin/modd && \
chmod 755 /usr/bin/modd && \
MODD_VERSION=$(curl -s https://api.github.com/repos/cortesi/modd/releases/latest | grep '"tag_name":' | sed -E 's/.*"v([^"]+)".*/\1/') && \
curl -LO https://github.com/cortesi/modd/releases/download/v${MODD_VERSION}/modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
tar -xf modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
mv modd-${MODD_VERSION}-${MODD_ARCH}/modd /usr/local/bin && \
rm modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
echo "Done Install Modd" && \
echo "Install Taskfile" && \
curl -sSL https://taskfile.dev/install.sh | sh -s v${TASKFILE_VERSION} && \
sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d && \
echo "Done Install Taskfile" && \
echo "Starting Javascript..." && \
git clone https://github.com/creationix/nvm.git /root/.nvm && cd /root/.nvm && git checkout v${NVM_VERSION} && \
Expand Down
6 changes: 0 additions & 6 deletions node/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,6 @@ versions:
NODE_VERSION: 18.20.4
NPM_VERSION: 10.9.0
NVM_VERSION: 0.40.1
MODD_VERSION: *MODD_VERSION
TASKFILE_VERSION: *TASKFILE_VERSION
test_config: *test_config
"20":
platforms:
Expand All @@ -28,8 +26,6 @@ versions:
NODE_VERSION: 20.18.0
NPM_VERSION: 10.9.0
NVM_VERSION: 0.40.1
MODD_VERSION: *MODD_VERSION
TASKFILE_VERSION: *TASKFILE_VERSION
test_config: *test_config
"22":
platforms:
Expand All @@ -39,6 +35,4 @@ versions:
NODE_VERSION: 22.11.0
NPM_VERSION: 10.9.0
NVM_VERSION: 0.40.1
MODD_VERSION: *MODD_VERSION
TASKFILE_VERSION: *TASKFILE_VERSION
test_config: *test_config
8 changes: 5 additions & 3 deletions php/8.1/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ LABEL maintainer="Rémi Marseille <[email protected]>"
ARG APCU_VERSION
ARG COMPOSER_VERSION
ARG MEMCACHED_VERSION
ARG MODD_VERSION
ARG PHP_CS_FIXER_VERSION
ARG REDIS_VERSION
ARG SSH2_VERSION
Expand Down Expand Up @@ -32,8 +31,11 @@ RUN version=$(php -r "echo PHP_MAJOR_VERSION.PHP_MINOR_VERSION;") && \
libmcrypt-dev libmemcached-dev libpng-dev libssh2-dev libxml2-dev libxslt-dev libzip-dev linux-headers make \
mysql-client openssh-client patch postgresql-client postgresql-dev rsync tzdata && \
# Install Modd"
curl -sSL https://github.com/cortesi/modd/releases/download/v${MODD_VERSION}/modd-${MODD_VERSION}-${MODD_ARCH}.tgz | tar -xOvzf - modd-${MODD_VERSION}-${MODD_ARCH}/modd > /usr/bin/modd && \
chmod 755 /usr/bin/modd && \
MODD_VERSION=$(curl -s https://api.github.com/repos/cortesi/modd/releases/latest | grep '"tag_name":' | sed -E 's/.*"v([^"]+)".*/\1/') && \
curl -LO https://github.com/cortesi/modd/releases/download/v${MODD_VERSION}/modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
tar -xf modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
mv modd-${MODD_VERSION}-${MODD_ARCH}/modd /usr/local/bin && \
rm modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
echo "Starting PHP with $version" && \
docker-php-ext-configure gd --with-freetype=/usr/include/ --with-jpeg=/usr/include/ && \
CFLAGS_PREVIOUS=$CFLAGS && \
Expand Down
8 changes: 5 additions & 3 deletions php/8.2/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ LABEL maintainer="Rémi Marseille <[email protected]>"
ARG APCU_VERSION
ARG COMPOSER_VERSION
ARG MEMCACHED_VERSION
ARG MODD_VERSION
ARG PHP_CS_FIXER_VERSION
ARG REDIS_VERSION
ARG SSH2_VERSION
Expand Down Expand Up @@ -32,8 +31,11 @@ RUN version=$(php -r "echo PHP_MAJOR_VERSION.PHP_MINOR_VERSION;") && \
libmcrypt-dev libmemcached-dev libpng-dev libssh2-dev libxml2-dev libxslt-dev libzip-dev linux-headers make \
mysql-client openssh-client patch postgresql-client postgresql-dev rsync tzdata && \
# Install Modd"
curl -sSL https://github.com/cortesi/modd/releases/download/v${MODD_VERSION}/modd-${MODD_VERSION}-${MODD_ARCH}.tgz | tar -xOvzf - modd-${MODD_VERSION}-${MODD_ARCH}/modd > /usr/bin/modd && \
chmod 755 /usr/bin/modd && \
MODD_VERSION=$(curl -s https://api.github.com/repos/cortesi/modd/releases/latest | grep '"tag_name":' | sed -E 's/.*"v([^"]+)".*/\1/') && \
curl -LO https://github.com/cortesi/modd/releases/download/v${MODD_VERSION}/modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
tar -xf modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
mv modd-${MODD_VERSION}-${MODD_ARCH}/modd /usr/local/bin && \
rm modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
echo "Starting PHP with $version" && \
docker-php-ext-configure gd --with-freetype=/usr/include/ --with-jpeg=/usr/include/ && \
CFLAGS_PREVIOUS=$CFLAGS && \
Expand Down
8 changes: 5 additions & 3 deletions php/8.3/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ LABEL maintainer="Rémi Marseille <[email protected]>"
ARG APCU_VERSION
ARG COMPOSER_VERSION
ARG MEMCACHED_VERSION
ARG MODD_VERSION
ARG PHP_CS_FIXER_VERSION
ARG REDIS_VERSION
ARG SSH2_VERSION
Expand All @@ -31,8 +30,11 @@ RUN version=$(php -r "echo PHP_MAJOR_VERSION.PHP_MINOR_VERSION;") && \
libmcrypt-dev libmemcached-dev libpng-dev libssh2-dev libxml2-dev libxslt-dev libzip-dev linux-headers make \
mysql-client openssh-client patch postgresql-client postgresql-dev rsync tzdata && \
# Install Modd"
curl -sSL https://github.com/cortesi/modd/releases/download/v${MODD_VERSION}/modd-${MODD_VERSION}-${MODD_ARCH}.tgz | tar -xOvzf - modd-${MODD_VERSION}-${MODD_ARCH}/modd > /usr/bin/modd && \
chmod 755 /usr/bin/modd && \
MODD_VERSION=$(curl -s https://api.github.com/repos/cortesi/modd/releases/latest | grep '"tag_name":' | sed -E 's/.*"v([^"]+)".*/\1/') && \
curl -LO https://github.com/cortesi/modd/releases/download/v${MODD_VERSION}/modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
tar -xf modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
mv modd-${MODD_VERSION}-${MODD_ARCH}/modd /usr/local/bin && \
rm modd-${MODD_VERSION}-${MODD_ARCH}.tgz && \
echo "Starting PHP with $version" && \
docker-php-ext-configure gd --with-freetype=/usr/include/ --with-jpeg=/usr/include/ && \
CFLAGS_PREVIOUS=$CFLAGS && \
Expand Down
1 change: 0 additions & 1 deletion php/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@ build_args: &build_args
APCU_VERSION: 5.1.22
COMPOSER_VERSION: 2.7.2
MEMCACHED_VERSION: 3.2.0
MODD_VERSION: *MODD_VERSION
PHP_CS_FIXER_VERSION: 3.41.1
REDIS_VERSION: 5.3.7
XDEBUG_VERSION: 3.3.1
Expand Down

0 comments on commit ba56efe

Please sign in to comment.