Skip to content

Add GitLab CI and Azure DevOps pipeline templates #5

Description

@cloakmaster

Problem

Inkog currently only provides a GitHub Actions workflow for CI/CD integration. Enterprise teams using GitLab CI or Azure DevOps have no ready-made pipeline template, forcing manual setup. Every major security scanning tool (Semgrep, Snyk, Trivy) ships with multi-platform CI templates — this is table stakes for enterprise adoption.

Current Behavior

  • ✅ GitHub Actions: action.yml + .github/workflows/inkog-example.yml
  • ❌ GitLab CI: No .gitlab-ci.yml template
  • ❌ Azure DevOps: No azure-pipelines.yml template
  • ❌ Jenkins: No Jenkinsfile template

Proposed Solution

1. GitLab CI template (.gitlab-ci.yml)

inkog-scan:
  stage: test
  image: ghcr.io/inkog-io/inkog:latest
  script:
    - inkog -path . -output sarif -policy balanced > gl-inkog-results.sarif
  artifacts:
    reports:
      sast: gl-inkog-results.sarif
  rules:
    - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'

2. Azure DevOps template (azure-pipelines.yml)

- task: Bash@3
  displayName: 'Inkog Security Scan'
  inputs:
    targetType: 'inline'
    script: |
      curl -fsSL https://get.inkog.io | sh
      inkog -path $(Build.SourcesDirectory) -output sarif > $(Build.ArtifactStagingDirectory)/inkog.sarif
  env:
    INKOG_API_KEY: $(INKOG_API_KEY)

3. Documentation

Add a CI/CD integration guide covering all platforms with setup instructions.

References

Notes

  • The core logic is identical across platforms: install Inkog, run scan, upload SARIF artifact
  • Translate the existing action.yml inputs (policy, severity, path) to each platform's variable syntax
  • GitLab has native SARIF support in its Security Dashboard — this is a big selling point
  • Great contributor issue: no Go knowledge needed, just CI/CD platform experience

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions