Skip to content

[EPIC] Fix how we handle updates to components #76

@petefoth

Description

@petefoth

Problem

The old model of an automatic updater:

  • detected an updated component.;
  • Downloaded the update;
  • Committed it directly to the master branch ;
  • Updated the .version_code of the component.

This is no longer appropriate because some components

Some issues have already been raised, and fixes implemented to deal with some of these issue,

Solution requirements

For all of the components included in this project:

  1. the need for an update is detected automatically;
  2. the new component can be tested before the repository code is changed to use the updated component;
  3. the number of times a component is downloaded is minimised: github imposes bandwidth limits on projects it hosts (including the projects / components we use), and our use of those components should minimise how much of that bandwith we use.

Solution implementation

  1. A 'Check for Updates` action checks whether new versions are available. If they are, for each compnent with an update, it creates an issue with the title 'Update to version '.
  2. A project maintainer will 'fix' the issue, by trying the new component: if the new component is OK, the maintainer will commit a change to the .version_code file for the component, causing the vendorsetup.sh script to download the updated component at build time.
  3. The issue will be closed, once a monthly build run is completed that includes the updated components.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions