Skip to content

Automatic Boards Manager release for builds triggered by the creation of a git tag #8

Open
@per1234

Description

@per1234
Owner

Travis CI defines the TRAVIS_TAG environment variable when the build is triggered by the creation of a tag.

Process:

  1. Check if TRAVIS_TAG is defined.
  2. Create installation archive file
  3. Delete .gitignore and any other unnecessary Git files if present
  4. Move files up from the architecture subfolder
  5. Compress
  6. Calculate checksum
  7. Update the JSON file
  8. Do a test Boards Manager installation and compile with the installed boards with the specified IDE range.
  9. Commit the installation archive and JSON file to the release repository

Arguments:

  • IDE range for testing the Boards Manager installation
  • Sketch or sketch folder to use for testing
  • Github personal access token for committing to the Boards Manager release repository
  • Package source folder: location of the hardware package files in the repository. Some are located in a subfolder of the repository.
  • Release information
    • Boards Manager release repository
    • Boards Manager release branch
    • Boards Manager release folder
  • JSON file configuration information:
    • platform information
      • name
      • architecture
      • onlineHelp
      • boards
      • toolsdependencies (must be able to handle multiple tools, should this be a separate function that can be called multiple times?):
        • packager
        • name
        • version

Assumptions:

  • The repository has the 1.5 hardware package structure (architecture folder).
  • The JSON file already has the package information and all necessary tools entries
  • New tools entries will be added to the JSON file manually when necessary
    • It seems just as easy for the JSON file to be edited as the .travis.yml file

Resources:

I don't believe any of these are run automatically

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

      Development

      No branches or pull requests

        Participants

        @per1234

        Issue actions

          Automatic Boards Manager release for builds triggered by the creation of a git tag · Issue #8 · per1234/arduino-ci-script