lint/Dockerfile

66 lines
1.9 KiB
Text
Raw Normal View History

2019-10-21 10:12:50 -04:00
###########################################
###########################################
## Dockerfile to run GitHub Super-Linter ##
###########################################
###########################################
##################
# Get base image #
##################
FROM python:alpine
#########################################
# Label the instance and set maintainer #
#########################################
LABEL com.github.actions.name="GitHub Super-Linter" \
2019-10-21 12:05:55 -04:00
com.github.actions.description="Lint your code base with Github Actions" \
2019-10-21 10:12:50 -04:00
com.github.actions.icon="code" \
com.github.actions.color="red" \
maintainer="GitHub DevOps <github_devops@github.com>"
2019-10-21 12:05:55 -04:00
####################
# Run APK installs #
####################
2019-10-21 10:12:50 -04:00
RUN apk add --no-cache \
2019-10-21 15:12:37 -04:00
bash git musl-dev curl gcc \
2019-10-21 12:05:55 -04:00
npm nodejs \
libxml2-utils \
ruby ruby-bundler \
2019-10-21 15:12:37 -04:00
py3-setuptools ansible-lint
2019-10-21 12:05:55 -04:00
#####################
# Run Pip3 Installs #
#####################
RUN pip3 install --upgrade --no-cache-dir \
yamllint pylint
2019-10-21 10:12:50 -04:00
2019-10-21 12:05:55 -04:00
####################
# Run NPM Installs #
####################
2019-10-21 15:12:37 -04:00
RUN npm -g install \
markdownlint-cli jsonlint prettyjson
2019-10-21 12:05:55 -04:00
######################
2019-10-21 15:12:37 -04:00
# Install shellcheck #
2019-10-21 12:05:55 -04:00
######################
2019-10-21 15:12:37 -04:00
RUN wget -qO- "https://storage.googleapis.com/shellcheck/shellcheck-stable.linux.x86_64.tar.xz" | tar -xJv \
&& cp "shellcheck-stable/shellcheck" /usr/bin/
2019-10-21 10:12:50 -04:00
###########################################
# Load GitHub Env Vars for Github Actions #
###########################################
ENV GITHUB_SHA=${GITHUB_SHA}
ENV GITHUB_EVENT_PATH=${GITHUB_EVENT_PATH}
ENV GITHUB_WORKSPACE=${GITHUB_WORKSPACE}
###########################
# Copy files to container #
###########################
2019-10-21 15:12:37 -04:00
COPY lib /action/lib \
&& TEMPLATES /action/lib/.automation
2019-10-21 10:12:50 -04:00
######################
# Set the entrypoint #
######################
ENTRYPOINT ["/action/lib/entrypoint.sh"]