Install packs

Description

Implement cpackget install command.

It consists of:

  • downloading/copying a pack version to <cmsis-pack-root>/.Download

  • extract files into <cmsis-pack-root>/<vendor>/<packname>/<version>/

  • save a copy of pdsc file as versioned pdsc file in .Download (<vendor>.<packagename>.<version>.pdsc)

NOTES

  1. If a pack (<vendor>.<packagename>) is not listed in <cmsis-pack-root>/.Web/index.pidx it is treated as “local pack”. A copy of the pdsc file is stored in <cmsis-pack-root>/.Local

  2. <package> can be a versioned CMSIS-Pack file:

    1. from the file-system (file://localhost/.../)

    2. from the web (URL: https://.../)

  3. <pdsc> is a CMSIS-Pack description file inside of an ‘extracted’ CMSIS-Pack from the file-system.

    1. In this case the pack content is not stored within the <cmsis-pack-root> itself but a reference to the pdsc file is stored in <cmsis-pack-root>/.Local/local_repository.pidx

    2. The file complies to the PIDX schema <pdsc vendor="...” name="..." url=file://localhost/.../ version="..."/>

  4. The installation shall be gated by the license specified by the PDSC file

  5. The installation should be optionally gated by a validation of a digital signature (to be defined in a new epic)

Activity

Charles Oliveira 
June 25, 2021 at 3:22 AM

Will start creating the repository and work on initial features

Done

Details

Assignee

Reporter

Original estimate

Time tracking

4d logged

Priority

Checklist

Sentry

Created June 21, 2021 at 1:38 PM
Updated August 17, 2021 at 5:55 PM
Resolved August 17, 2021 at 5:54 PM