Loading README.md +1 −0 Original line number Diff line number Diff line Loading @@ -122,6 +122,7 @@ It uses the following variable: | `pre-commit-disabled` / `PRE_COMMIT_DISABLED` | Disable pre-commit run | `false` | | `pre-commit-skip` / `PRE_COMMIT_SKIP` | pre-commit `SKIP` environment variable (see https://pre-commit.com/#temporarily-disabling-hooks) | `no-commit-to-branch` | | `pre-commit-args` / `PRE_COMMIT_ARGS` | Additionnal arguments for the `pre-commit run` command | `` | | `pre-commit-file` / `PRE_COMMIT_FILE` | pre-commit config file to use for the `pre-commit run` command | `.pre-commit-ci.yaml` | ### Secrets management Loading kicker.json +6 −0 Original line number Diff line number Diff line Loading @@ -30,6 +30,12 @@ "description": "pre-commit `SKIP` environment variable that allows to disable some hooks (see https://pre-commit.com/#temporarily-disabling-hooks)", "default": "no-commit-to-branch", "advanced": true }, { "name": "PRE_COMMIT_FILE", "description": "pre-commit config file to use for the `pre-commit run` command", "default": ".pre-commit-ci.yaml", "advanced": true } ] } Loading templates/gitlab-ci-pre-commit.yml +15 −6 Original line number Diff line number Diff line Loading @@ -24,6 +24,9 @@ spec: pre-commit-skip: description: "pre-commit `SKIP` environment variable that allows to disable some hooks (see https://pre-commit.com/#temporarily-disabling-hooks)" default: 'no-commit-to-branch' pre-commit-file: description: "pre-commit config file to use for the `pre-commit run` command" default: '.pre-commit-ci.yaml' pre-commit-disabled: description: Disable pre-commit run type: boolean Loading Loading @@ -83,6 +86,7 @@ variables: PRE_COMMIT_ARGS: $[[ inputs.pre-commit-args ]] PRE_COMMIT_SKIP: $[[ inputs.pre-commit-skip ]] PRE_COMMIT_DISABLED: $[[ inputs.pre-commit-disabled ]] PRE_COMMIT_FILE: $[[ inputs.pre-commit-file ]] # default production ref name (pattern) PROD_REF: '/^(master|main)$/' Loading Loading @@ -333,15 +337,20 @@ stages: function pre_commit_setup() { log_info "Performing pre-commit setup..." # maybe install default hooks if [[ -e .pre-commit-ci.yaml ]] if [[ -n "${PRE_COMMIT_FILE}" ]] then log_info "file \\e[32m.pre-commit-ci.yaml\\e[0m found: use" fail "PRE_COMMIT_FILE can't be set to null value" fi if [[ -e "${PRE_COMMIT_FILE}" ]] then log_info "file \\e[32m${PRE_COMMIT_FILE}\\e[0m found: use" else log_info "file \\e[32m.pre-commit-ci.yaml\\e[0m not found: initializing default config" log_info "file \\e[32m${PRE_COMMIT_FILE}\\e[0m not found: initializing default config" # Would love to not have an hardcoded config here but it is not possible # to use external ressources from included components (yet?). # see https://stackoverflow.com/questions/77801510/how-to-access-other-files-in-a-gitlab-ci-cd-component-when-including-it cat <<EOF > .pre-commit-ci.yaml cat <<EOF > "${PRE_COMMIT_FILE}" repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: main Loading @@ -366,7 +375,7 @@ stages: log_info "\\e[32mpre-commit\\e[0m not found in image \\e[33;1m${PRE_COMMIT_IMAGE}\\e[0m, initializing..." apk add --no-cache git pip install pre-commit pre-commit install-hooks -c .pre-commit-ci.yaml pre-commit install-hooks -c "${PRE_COMMIT_FILE}" fi } Loading @@ -382,7 +391,7 @@ stages: _scope_opts="--all-files" fi # shellcheck disable=SC2086 SKIP=${PRE_COMMIT_SKIP} pre-commit run ${_scope_opts} --config .pre-commit-ci.yaml $PRE_COMMIT_ARGS SKIP=${PRE_COMMIT_SKIP} pre-commit run ${_scope_opts} --config "${PRE_COMMIT_FILE}" $PRE_COMMIT_ARGS log_info "... done" } Loading Loading
README.md +1 −0 Original line number Diff line number Diff line Loading @@ -122,6 +122,7 @@ It uses the following variable: | `pre-commit-disabled` / `PRE_COMMIT_DISABLED` | Disable pre-commit run | `false` | | `pre-commit-skip` / `PRE_COMMIT_SKIP` | pre-commit `SKIP` environment variable (see https://pre-commit.com/#temporarily-disabling-hooks) | `no-commit-to-branch` | | `pre-commit-args` / `PRE_COMMIT_ARGS` | Additionnal arguments for the `pre-commit run` command | `` | | `pre-commit-file` / `PRE_COMMIT_FILE` | pre-commit config file to use for the `pre-commit run` command | `.pre-commit-ci.yaml` | ### Secrets management Loading
kicker.json +6 −0 Original line number Diff line number Diff line Loading @@ -30,6 +30,12 @@ "description": "pre-commit `SKIP` environment variable that allows to disable some hooks (see https://pre-commit.com/#temporarily-disabling-hooks)", "default": "no-commit-to-branch", "advanced": true }, { "name": "PRE_COMMIT_FILE", "description": "pre-commit config file to use for the `pre-commit run` command", "default": ".pre-commit-ci.yaml", "advanced": true } ] } Loading
templates/gitlab-ci-pre-commit.yml +15 −6 Original line number Diff line number Diff line Loading @@ -24,6 +24,9 @@ spec: pre-commit-skip: description: "pre-commit `SKIP` environment variable that allows to disable some hooks (see https://pre-commit.com/#temporarily-disabling-hooks)" default: 'no-commit-to-branch' pre-commit-file: description: "pre-commit config file to use for the `pre-commit run` command" default: '.pre-commit-ci.yaml' pre-commit-disabled: description: Disable pre-commit run type: boolean Loading Loading @@ -83,6 +86,7 @@ variables: PRE_COMMIT_ARGS: $[[ inputs.pre-commit-args ]] PRE_COMMIT_SKIP: $[[ inputs.pre-commit-skip ]] PRE_COMMIT_DISABLED: $[[ inputs.pre-commit-disabled ]] PRE_COMMIT_FILE: $[[ inputs.pre-commit-file ]] # default production ref name (pattern) PROD_REF: '/^(master|main)$/' Loading Loading @@ -333,15 +337,20 @@ stages: function pre_commit_setup() { log_info "Performing pre-commit setup..." # maybe install default hooks if [[ -e .pre-commit-ci.yaml ]] if [[ -n "${PRE_COMMIT_FILE}" ]] then log_info "file \\e[32m.pre-commit-ci.yaml\\e[0m found: use" fail "PRE_COMMIT_FILE can't be set to null value" fi if [[ -e "${PRE_COMMIT_FILE}" ]] then log_info "file \\e[32m${PRE_COMMIT_FILE}\\e[0m found: use" else log_info "file \\e[32m.pre-commit-ci.yaml\\e[0m not found: initializing default config" log_info "file \\e[32m${PRE_COMMIT_FILE}\\e[0m not found: initializing default config" # Would love to not have an hardcoded config here but it is not possible # to use external ressources from included components (yet?). # see https://stackoverflow.com/questions/77801510/how-to-access-other-files-in-a-gitlab-ci-cd-component-when-including-it cat <<EOF > .pre-commit-ci.yaml cat <<EOF > "${PRE_COMMIT_FILE}" repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: main Loading @@ -366,7 +375,7 @@ stages: log_info "\\e[32mpre-commit\\e[0m not found in image \\e[33;1m${PRE_COMMIT_IMAGE}\\e[0m, initializing..." apk add --no-cache git pip install pre-commit pre-commit install-hooks -c .pre-commit-ci.yaml pre-commit install-hooks -c "${PRE_COMMIT_FILE}" fi } Loading @@ -382,7 +391,7 @@ stages: _scope_opts="--all-files" fi # shellcheck disable=SC2086 SKIP=${PRE_COMMIT_SKIP} pre-commit run ${_scope_opts} --config .pre-commit-ci.yaml $PRE_COMMIT_ARGS SKIP=${PRE_COMMIT_SKIP} pre-commit run ${_scope_opts} --config "${PRE_COMMIT_FILE}" $PRE_COMMIT_ARGS log_info "... done" } Loading