superlint/Dockerfile

70 lines
1.8 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 12:05:55 -04:00
bash git musl-dev curl gcc cabal \
npm nodejs \
libxml2-utils \
ruby ruby-bundler \
py3-setuptools
2019-10-21 10:12:50 -04:00
2019-10-21 12:05:55 -04:00
####################
# Run Pip installs #
####################
2019-10-21 10:12:50 -04:00
RUN pip install --upgrade --no-cache-dir \
2019-10-21 12:05:55 -04:00
pip ansible-lint
#####################
# 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 #
####################
RUN npm -g install markdownlint-cli jsonlint prettyjson
######################
# Run Cabal installs #
######################
RUN cabal update \
&& cabal install ShellCheck
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 #
###########################
COPY lib /action/lib
######################
# Set the entrypoint #
######################
ENTRYPOINT ["/action/lib/entrypoint.sh"]