LGC Open-Source - June 2025 - APC/OSPO

Europe/Zurich
926/1-039 - Priority BE-GM (CERN)

926/1-039 - Priority BE-GM

CERN

12
Show room on map

Attendees: P. Elson, F. Klumb, J. Gutekunst, G.Kautzmann, D.Wassmer

Licensing

Authority

  • Final licensing decisions rest with the Group Leader.

Tooling

  • A CERN license assessment tool has been available since mid-April.

Current Decision

  • Preferred license at CERN: Apache 2.0

  • Initial license: GPLv3 for LGC and SurveyLib due to external dependencies

  • Transition to Apache 2.0 may be considered in the future, depending on compatibility and community growth.

Contribution Legal Framework

  • A DCO (Developer Certificate of Origin) or CLA (Contributor License Agreement) will be drafted to govern contributions.

  • The DCO/CLA will explicitly allow license changes with contributor agreement.

Open Points

  • OSPO to confirm compatibility of GPLv3, Apache 2.0, and MPL2.

  • Clarify licensing constraints for SurveyPad and CSGeo DLL (e.g., disable transformation functionality in distributed versions).

Actions

  • Apply GPLv3 to LGC and SurveyLib as the starting point (APC)

  • Draft DCO/CLA with license transition clause (OSPO/APC)

  • Organize a license alignment meeting with Swisstopo and OSPO (OSPO/APC)


SBOM (Software Bill of Materials)

April Status

  • SBOM recommended, especially for flagship components like LGC and SurveyPad (can be CMake-integrated).

June Update

  • Deprioritized for now.

  • Contact Brice Copy if/when needed.

Actions

  • Postpone SBOM generation for LGC

  • Reassess SBOM strategy in future


REUSE Compliance

April

  • LGC needs machine-readable copyright headers.

June

  • SurveyLib already partially REUSE-compliant.

  • REUSE integration should be automated in the pipeline.

Actions

  • Finalize REUSE compliance for LGC and SurveyLib (APC)

  • Integrate REUSE checks into GitLab CI/CD (APC)

  • Review REUSE implementation with OSPO (APC/OSPO)


GitHub vs GitLab Strategy

Development Location

  • GitHub will be the primary development platform for visibility, contribution flow, and collaboration.

  • GitLab will remain the authoritative internal mirror, hosting CI/CD pipelines, sensitive internal integrations, and housekeeping.

CI/CD Strategy

  • CI/CD will continue to run exclusively on GitLab.

  • GitHub contributors will not see pipeline results but can submit pull requests.

  • CI/CD jobs involving CERN infrastructure will only be triggered by CERN members.

Contribution Flow

  • Contributions go through GitHub via pull requests.

  • CERN maintainers validate and synchronize to GitLab (manual or automated).

  • GitLab remains the source of truth for CI/CD, tagging, and releases.

Access Control

  • External contributors cannot access GitLab CI/CD.

  • CERN contributors can be manually added to GitLab projects if needed.

Open Points

  • Validate GitHub → GitLab sync strategy

  • Lightweight contributor access to GitLab remains to be clarified

  • Define contributor roles and automation logic

Actions

  • Test GitHub ↔ GitLab sync on a test project (e.g., LGCGateway) (APC)

  • Confirm contributor permissions and access behavior (APC)

  • Add "How to Contribute" section in each repo (APC + OSPO)

  • Review CI/CD trigger restrictions and document contributor rules (APC/OSPO)


GitHub Organization Structure

Main Organization

  • Central GitHub organization (name TBD) to host key repositories:

    • LGC, SurveyLib, SurveyPad, SuGL

Utility Scripts / Plugins

  • Secondary repositories may contain scripts/utilities shared across projects.

  • Consider using manifests or catalog indexing for discoverability.

Recommendations

  • Avoid CERN GitHub org due to lack of sub-org support.

  • Maintain independent namespace and governance for flexibility.

Actions

  • Create GitHub organization and define structure (APC)

  • Define manifest or cataloging mechanism for shared components (OSPO/APC)

  • Document internal structure and governance (APC)


Documentation Strategy

Tooling

  • MkDocs chosen for clarity, simplicity, and web-native formatting.

Rollout Plan

  1. Migrate existing Confluence user manual (for versions ≤ v2.8.0).

  2. Refactor for v2.9.0 and implement documentation versioning.
    (e.g., /current, /v2.8, etc.)

Hosting

  • MkDocs output may be hosted via GitHub Pages or GitLab Pages, depending on the chosen repo structure.

Branding

  • Clarify rules for using the CERN logo, name, and associated branding in public repositories.

Actions

  • Migrate 1:1 user manual from Confluence to MkDocs (APC)

  • Rework and modernize documentation for v2.9.0 with versioning (APC)

  • Confirm branding usage policies with OSPO (OSPO)

There are minutes attached to this event. Show them.
The agenda of this meeting is empty