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
11 changes: 7 additions & 4 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# base image should be a PHP Debian container, such as php:7.4-buster
ARG PHP_IMG
FROM $PHP_IMG

Check warning on line 3 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.1-bullseye)

Default value for global ARG results in an empty or invalid base image name

InvalidDefaultArgInFrom: Default value for ARG $PHP_IMG results in empty or invalid base image name More info: https://docs.docker.com/go/dockerfile/rule/invalid-default-arg-in-from/

Check warning on line 3 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:7.4-bullseye)

Default value for global ARG results in an empty or invalid base image name

InvalidDefaultArgInFrom: Default value for ARG $PHP_IMG results in empty or invalid base image name More info: https://docs.docker.com/go/dockerfile/rule/invalid-default-arg-in-from/

Check warning on line 3 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.2-bullseye)

Default value for global ARG results in an empty or invalid base image name

InvalidDefaultArgInFrom: Default value for ARG $PHP_IMG results in empty or invalid base image name More info: https://docs.docker.com/go/dockerfile/rule/invalid-default-arg-in-from/

Check warning on line 3 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.4-bullseye)

Default value for global ARG results in an empty or invalid base image name

InvalidDefaultArgInFrom: Default value for ARG $PHP_IMG results in empty or invalid base image name More info: https://docs.docker.com/go/dockerfile/rule/invalid-default-arg-in-from/

Check warning on line 3 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.3-bullseye)

Default value for global ARG results in an empty or invalid base image name

InvalidDefaultArgInFrom: Default value for ARG $PHP_IMG results in empty or invalid base image name More info: https://docs.docker.com/go/dockerfile/rule/invalid-default-arg-in-from/

Check warning on line 3 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.0-bullseye)

Default value for global ARG results in an empty or invalid base image name

InvalidDefaultArgInFrom: Default value for ARG $PHP_IMG results in empty or invalid base image name More info: https://docs.docker.com/go/dockerfile/rule/invalid-default-arg-in-from/

RUN apt-get update && \
apt-get install -y \
Expand Down Expand Up @@ -89,7 +89,7 @@
rm -rf /var/lib/apt/lists/* && \
localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8

ENV LANG en_US.utf8

Check warning on line 92 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.1-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 92 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:7.4-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 92 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.2-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 92 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.4-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 92 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.3-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 92 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.0-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

RUN echo "memory_limit=-1" > "$PHP_INI_DIR/conf.d/memory-limit.ini" && \
echo "date.timezone=${PHP_TIMEZONE:-UTC}" > "$PHP_INI_DIR/conf.d/date_timezone.ini"
Expand All @@ -102,21 +102,24 @@

## set up NVM and install node ##

ENV NVM_DIR /tmp/.nvm

Check warning on line 105 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.1-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 105 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:7.4-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 105 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.2-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 105 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.4-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 105 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.3-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 105 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.0-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/
RUN mkdir ${NVM_DIR}
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.4/install.sh | bash

# Workaround - Cypress installation
ENV CYPRESS_CACHE_FOLDER /tmp/cypress/cache

Check warning on line 110 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.1-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 110 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:7.4-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 110 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.2-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 110 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.4-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 110 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.3-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 110 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.0-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/
RUN mkdir -p ${CYPRESS_CACHE_FOLDER} && chmod 777 ${CYPRESS_CACHE_FOLDER}

ARG NODE_VERSION=16
ARG NODE_VERSION=18
COPY build/install-node.sh /tmp/install-node.sh
RUN chmod +x /tmp/install-node.sh && /tmp/install-node.sh "${NODE_VERSION}"
RUN chmod +x /tmp/install-node.sh && /tmp/install-node.sh "${NODE_VERSION}" && \
./tmp/install-node.sh "20" && \
./tmp/install-node.sh "22" && \
./tmp/install-node.sh "--lts"

Comment on lines +115 to +119
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

v25 is the current version and v24 is already the TLS (see here)

NVM supports "lts" as a version (as in nvm install --lts, see here), so I'd probably end the command passing "--lts", so this line executes the nvm install we need (and sets the LTS as the "default" alias).

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@felipeelia I would go a step further and say we should add the --lts to the script instead, so it always installs the LTS. My understanding is that the even numbers will always be LTS while the odds are the 'cutting edge'

COPY .bowerrc /root/.bowerrc

## Compass ##

RUN gem install compass

## Ansible, awscli, other Python tools ##
Expand All @@ -129,8 +132,8 @@
## Composer ##
ARG COMPOSER_VERSION 1

ENV COMPOSER_ALLOW_SUPERUSER 1

Check warning on line 135 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.1-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 135 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:7.4-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 135 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.2-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 135 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.4-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 135 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.3-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 135 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.0-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/
ENV COMPOSER_HOME /tmp

Check warning on line 136 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.1-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 136 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:7.4-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 136 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.2-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 136 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.4-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 136 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.3-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 136 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.0-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

COPY build/install-composer.sh /tmp/install-composer.sh
RUN /tmp/install-composer.sh && \
Expand Down Expand Up @@ -201,7 +204,7 @@
chmod 700 /root/.ssh

# force CI jobs to source root's .bashrc, which will enable NVM
ENV BASH_ENV "/root/.bashrc"

Check warning on line 207 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.1-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 207 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:7.4-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 207 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.2-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 207 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.4-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 207 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.3-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

Check warning on line 207 in Dockerfile

View workflow job for this annotation

GitHub Actions / build_push_to_dockerhub (php:8.0-bullseye)

Legacy key/value format with whitespace separator should not be used

LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format More info: https://docs.docker.com/go/dockerfile/rule/legacy-key-value-format/

COPY ./entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh
Expand Down
12 changes: 1 addition & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,17 +25,7 @@
- terminus
- yamllint

**npm packages installed:**
- grunt-cli
- gulp-cli
- bower
- yarn
- lighthouse
- serverless
- firebase-tools
- cypress

Node and npm are managed by the `build/install-node.sh` script.
Node and npm are managed by the `build/install-node.sh` script. The following versions are supported by default: [16, 18, 20, 22]

## Customize Package and Tool Configurations

Expand Down
7 changes: 6 additions & 1 deletion build/install-node.sh
Original file line number Diff line number Diff line change
Expand Up @@ -37,4 +37,9 @@ npm cache clean --force

echo "node ${NODE_VERSION} build completed..."

nvm alias default ${NODE_VERSION}
if [[ "${NODE_VERSION}" =~ "lts" ]];
then
nvm alias default 'lts/*'
else
nvm alias default "${NODE_VERSION}"
fi
2 changes: 1 addition & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,5 +6,5 @@ yq
python-gitlab
awesome-codename
cryptography
ansible-core==2.17.6
ansible-core==2.11.12
dnspython
Loading