install.fairie/.config/taskfiles/lint/Taskfile-codeclimate.yml
Brian Zalewski f42899b107 Latest
2022-12-24 15:04:59 -05:00

42 lines
1.3 KiB
YAML

---
version: '3'
tasks:
load:custom-engines:
deps:
- :install:software:docker
- :install:software:jq
- :install:software:yq
env:
CUSTOM_ENGINES:
sh: yq e -o=j '.' .codeclimate.yml | jq -r '.plugins | keys[]'
cmds:
- |
function dockerGet() {
if ! docker images {{.DOCKERHUB_PROFILE}}/$1 | grep ' slim-codeclimate ' > /dev/null; then
docker pull "{{.DOCKERHUB_PROFILE}}/$1:slim-codeclimate"
fi
docker tag "{{.DOCKERHUB_PROFILE}}/$1:slim-codeclimate" "codeclimate/codeclimate-$1:latest"
}
for ENGINE in $CUSTOM_ENGINES; do
if [ "$(yq e -o=j '.' .codeclimate.yml | jq --arg engine $ENGINE -r '.plugins[$engine].enabled')" == 'true' ]; then
.config/log info "Loading custom CodeClimate engine ($ENGINE)"
dockerGet "$ENGINE"
fi
done
taskfiles:add:
cmds:
- rm -rf .config
- cp -rf ../../.config .config
- cp ../../start.sh start.sh
- cp ../../Taskfile.yml Taskfile.yml
- cp ../../package.json package.json
status:
- '[ -z "$CODECLIMATE_INTEGRATION_TEST" ]'
taskfiles:remove:
cmds:
- rm -rf .config start.sh Taskfile.yml package.json
status:
- '[ -z "$CODECLIMATE_INTEGRATION_TEST" ]'