PyCon India 2025

Automating License & Copyright Scanning in CI Pipelines With FOSSology
2025-09-13 , Track 3

As CI/CD pipelines grow in popularity, maintaining compliance with open-source licenses and copyrights is crucial. This session presents a new initiative to integrate FOSSology’s mature scanning tools directly into CI/CD workflows. We'll explore how a Docker image, designed to work with GitHub Actions, GitLab CI, and Travis CI, automates license and copyright checks early in the development process.
The session will cover technical details on repository, tag, and dependency scanning, along with customization options. Attendees will learn how this solution enhances security and compliance in cloud-native environments without compromising development speed.
This talk will be particularly valuable for DevOps engineers, compliance officers or anyone trying to avoid the hassle of scanning through the whole code for licenses or copyrights. This can be easily integrated in existing modern development workflows via our Github Action, called FOSSOps.


Introduction: The Growing Need for Automated Compliance
With the increasing use of open-source software, ensuring license compliance is essential. Traditional compliance checks are manual, time-consuming, and prone to errors, often becoming last-minute roadblocks before releases.

As CI/CD pipelines accelerate software development, compliance must keep pace. Ignoring it can lead to legal risks, security vulnerabilities, and reputational damage. The ideal solution is to integrate compliance directly into the development workflow, making it a continuous, automated process rather than an afterthought.

FOSSology CI Scanners solve this problem by embedding automated license and copyright checks into CI/CD pipelines. Using FOSSOps, a GitHub Action designed for compliance enforcement, developers can seamlessly integrate FOSSology’s mature scanning tools into their workflows, ensuring every commit and pull request undergoes verification.

In this session we will take a look at how we can reduce hours/days of manual checks for License Compliance to a few minutes with FOSSology. We will see different configuration options and tools that help cover all the different edge cases and compliance needs. Then we will discuss the technical aspects of how FOSSology works and how it is amalgamated into the CI environments. Then we will see a small live demonstration walk through a real-world example, showing how FOSSOps scans a sample repository and generates compliance reports.

Understanding FOSSology and Its Role in CI/CD

FOSSology is an open-source software compliance tool that provides license detection, copyright scanning, and dependency analysis. Originally designed as a standalone tool, FOSSology has evolved to support automation within CI/CD pipelines, eliminating the need for separate compliance audits.

By integrating FOSSology scanners into GitHub Actions, GitLab CI, and Travis CI, developers can enforce compliance without disrupting their existing workflows. This solution aligns with modern DevSecOps practices, combining security, compliance, and development speed.

FOSSology CI Scanners operate within a Docker-based environment, making it easy to deploy across different CI/CD platforms. The scanning process follows a structured workflow:
Triggering the Scan: The scanner is invoked automatically when a new commit, pull request, or scheduled job is executed in the CI/CD pipeline.
Scanning Repository Contents: The tool analyzes all files, including source code, documentation, and binaries, to detect potential licensing issues.
Dependency and Tag Scanning: Third-party libraries and dependencies are examined to ensure they comply with licensing policies.
Generating Compliance Reports: The scanner outputs detailed reports that highlight detected licenses, possible conflicts, and areas requiring attention.

This automated process runs in parallel with the development cycle, ensuring that compliance is continuously enforced without slowing down deployment timelines.

Live Walk Through: Implementing FOSSOps in CI/CD Pipelines

For teams using GitHub Actions, integrating FOSSOps is straightforward. Developers need to define a GitHub Actions workflow file that includes the FOSSology scanner. This workflow can be configured to run on every commit or at scheduled intervals, ensuring that license compliance is always up to date.

Sample Github Actions Workflows are available on FOSSology’s repo:

In addition to this, FOSSology supports Gitlab CI and Travis CI.

Customization for your needs:

Custom License Detection: Teams can define their own rules for detecting specific licenses or flagging certain keywords.
Fine-Tuning Scans: Developers can exclude certain files, directories, or dependencies from the scan to reduce false positives.
Integration with DevSecOps Tools: The scanner can work alongside SBOM (Software Bill of Materials) tools and vulnerability scanners to provide a holistic security and compliance solution.
Users can scan only certain parts of the directories using directory-scan feature.

Automating compliance with FOSSology CI Scanners provides several key advantages:

Preventing Legal and Security Risks Early: By scanning software dependencies and source code in real-time, teams can avoid costly violations related to GPL, MIT, Apache, BSD, and other open-source licenses.
Enhancing Security in Cloud-Native Environments: Ensuring compliance before deployment reduces the risk of shipping non-compliant or vulnerable code to production.
Balancing Compliance with Development Speed: Unlike manual audits, automated scanning runs asynchronously, allowing developers to focus on writing code while compliance happens in the background.

With these benefits, organizations can enforce compliance without compromising agility, aligning with the principles of secure software development.

Success Stories:
Several organizations including Redhat successfully implemented FOSSology CI Scanners in their workflows, leading to faster compliance verification, reduced manual effort, and improved security posture.

<Q&A and Hands-On Participation>

The session will conclude with an open discussion where attendees can ask questions, share challenges, and explore best practices for implementing automated compliance in their workflows. A hands-on setup walkthrough will be provided for those who want to try out FOSSOps during the session.

Key takeaways from the session:

Take license compliance seriously.
Reduce manual effort in compliance using FOSSology.
Live Long and Prosper. 🖖

Join Us: FOSSology is Free and Open Source. Join our community:
github.com/fossology
Slack: https://fossology.slack.com/join/shared_invite/enQtNzI0OTEzMTk0MjYzLTYyZWQxNDc0N2JiZGU2YmI3YmI1NjE4NDVjOGYxMTVjNGY3Y2MzZmM1OGZmMWI5NTRjMzJlNjExZGU2N2I5NGY#/shared-invite/email


Prerequisites

CI/CD Pipelines, Github Actions

Target Audience

Intermediate

Additional Resources
  1. I worked on this during Google Summer of Code and developed some of the key functonalities. My final project report highlights all my experience and learning: https://rajuljha.github.io/posts/gsoc-24-project-report/
  2. FOSSology Github Action: https://github.com/fossology/fossology-action/
  3. Fossology automation module: https://github.com/fossology/fossology/tree/master/utils/automation
  4. FOSSology Repository: https://github.com/fossology/fossology
  5. CI Scanner Project Docs: https://fossology.github.io/gsoc/docs/2024/ci-scanner/

Open Source Contributor. Google Summer of Code '24 and '25 @FOSSology
Pythonista.