Skip to content

gcil

Release Python Downloads License
Build Bugs Code Smells Coverage Lines of Code Quality Gate Status
pre-commit Commitizen friendly gcil pre-commit-crocodile

Launch .gitlab-ci.yml jobs locally, wrapped inside the specific images,
with inplace project volume mounts and adaptive user selections.


Using gcil hooks

Sources / .pre-commit-config.yaml
# pre-commit configurations
default_install_hook_types:
  - pre-commit
  - pre-push
default_stages:
  - pre-commit
  - pre-push
minimum_pre_commit_version: 3.8.0

# gcil repositories
repos:

  # Repository: gcil
  - repo: https://gitlab.com/RadianDevCore/tools/gcil
    rev: X.Y.Z # Adapt to latest release tag
    hooks:
      - id: ...

run-gcil-commit

Run GitLab CI job with gcil upon commit and push :

  • Sources / .pre-commit-config.yaml
      # Repository: gcil
      - repo: ...
        ...
        hooks:
          - id: run-gcil-commit
            name: Run GitLab CI job with gcil (adapt:job:name:1)
            description: Automatically run GitLab CI job with gcil (adapt:job:name:1)
            args:
              - 'adapt:job:name:1'
          - id: run-gcil-commit
            name: Run GitLab CI job with gcil (adapt:job:name:2)
            description: Automatically run GitLab CI job with gcil (adapt:job:name:2)
            args:
              - 'adapt:job:name:2'
    

run-gcil-push

Run GitLab CI job with gcil upon push only :

  • Sources / .pre-commit-config.yaml
      # Repository: gcil
      - repo: ...
        ...
        hooks:
          - id: run-gcil-push
            name: Run GitLab CI job with gcil (adapt:job:name:1)
            description: Automatically run GitLab CI job with gcil (adapt:job:name:1)
            args:
              - 'adapt:job:name:1'
          - id: run-gcil-push
            name: Run GitLab CI job with gcil (adapt:job:name:2)
            description: Automatically run GitLab CI job with gcil (adapt:job:name:2)
            args:
              - 'adapt:job:name:2'