Google Sign-In Required

Use your company Google account to access the BetterFleet private content.

Back to private home

BetterFleet Support Private
Skip to content
BetterFleet Dev Wiki
Release Notes Automation Backlog Stories
Initializing search
    bf-dev
    • Home
    • Product Capabilities
    • Process
    • Current Work
    • System Design
    • Software Reference
    • Operations
    bf-dev
    • Home
      • Overview
      • Manage
      • Overview
      • Product Engineering Workflow
      • Product Engineering Delivery
      • Product Engineering Workflow in Linear
        • GitLab Feature Flags
        • In-App Docs Authoring
        • Release Notes
      • Templates
      • Publishing
      • Workflow Companions
      • Overview
      • Active Artifacts
      • Backlog Artifacts
      • Archived Artifacts
      • Overview
      • Microgrid
      • OSCP
        • Challenge
        • Specification
        • Spec
        • Architecture
        • Overview
        • Script Runtime Model
        • Compose Profiles and Modes
        • Repo Topology
        • CI and Release Integration
        • Overview
        • Internal Application Diagrams
          • Overview
          • Web Model
          • Core Model
        • Service Interaction Flows
        • Data and State
          • Index
          • bf-manage-web
          • bf-manage-core
          • bf-manage-connect
          • bf-manage-sitepwrmon
          • bf-manage-incidents
          • bf-telematics
          • bf-depot-sim
          • bf-manage-roaming
          • bf-support-microsite
          • bf-digital-twin
          • bf-schedule-creator
        • Overview
        • Internal Application Diagrams
        • Migration and Flags
        • Simulation Request Lifecycle
          • Index
          • bf-bnl-ui
          • bf-bnl-settings
          • bf-bnl-schedule-analysis-compute
          • bf-route-modelling
          • bf-schedule-creator
          • bf-digital-twin
        • Overview
        • Secrets and Env Strategy
        • Vendors and Local Dependencies
        • ADRs
        • Service Matrix
        • Cloud Dependencies
        • Ports and URLs
      • Onboarding
      • Daily Operations Runbook
        • Overview
        • Staging Hotfix Release
        • Production Hotfix Release
        • Terraform Plan Dry Runs
      • Troubleshooting
      • Testing Guide
    • Context Summary
    • Current State
      • Automated weekly publication of release notes to Vemo Manage
    • User Story
    • Acceptance Criteria
    • Dependencies
    • Status

    Release Notes Automation Backlog Stories¶

    Context Summary¶

    • Tracks the release-note publishing automation defined in bf-release/Changes.gitlab-ci.yml.
    • Target outputs live in evenergi/vemo/vemo-manage/docs/release-notes/, promoting unreleased(.internal).md into dated files under releases/.
    • Default cadence uses SCHEDULE="next tuesday", producing week code <YYYY.WW>, release date <ISO date>, and branch release-notes-<YYYY.WW>.
    • Current behavior has been exercised in GitLab, confirming successful clone, generation, and push to the target branch.

    Current State¶

    • Job 02 publish:release exists in stage Staging(changes) with rules: scheduled run when PUBLISH_RELEASE == "true"; manual trigger otherwise.
    • Behavior: clones each project in PROJECTS, refuses to overwrite an existing release file, generates dated release notes, resets base artifacts to the default template, and commits/pushes branch release-notes-<YYYY.WW> with message docs(release): publish release notes for <code> [skip ci].
    • Validation: latest pipeline run confirmed successful end-to-end publishing to the target branch.

    Automated weekly publication of release notes to Vemo Manage¶

    User Story¶

    As a release manager, I want weekly release notes to publish automatically to evenergi/vemo/vemo-manage so that the release branch is consistently prepared without manual copying.

    Acceptance Criteria¶

    • Scheduled pipeline with PUBLISH_RELEASE=true clones each project in PROJECTS and computes code=<YYYY.WW> and date=<ISO date> from SCHEDULE (default "next tuesday").
    • For each base artifact docs/release-notes/unreleased.md and docs/release-notes/unreleased.internal.md (when present), the job writes corresponding dated files under docs/release-notes/releases/ with front matter title: <code> and release_date: <date> followed by the prior artifact body.
    • Existing dated release files are not overwritten; the job logs a refusal when a target file already exists.
    • After promotion, the base artifacts are reset to the default template defined in the CI job (empty Added/Changed/Fixed sections).
    • Job commits and pushes branch release-notes-<code> with message docs(release): publish release notes for <code> [skip ci].
    • Manual invocation remains available in CI for ad-hoc publishing outside the schedule.

    Dependencies¶

    • GITLAB_TOKEN with push access to every project listed in PROJECTS.
    • CI image ghcr.io/cicirello/alpine-plus-plus:latest available in the pipeline environment.

    Status¶

    • Implemented and validated via GitLab pipeline run, which confirmed successful clone, generation, and push to the target branch.
    Made with Material for MkDocs