Skip to content

Add configuration capability #13

@vire

Description

@vire

Goal: have configuration .soos # YAML, JSON, JS
Motivation: environment specific configuration without the need to pass details as --arguments
Output: execute one soos <target-name> use .soosrc

possible targets: build, compile, clean, server

Example for compile target leveraging branch-specific configuration:

  1. Git hook will trigger soos compile on CI agent - specific .soosrc located in the cloned branch
  2. generate SHA1 for the current version package.json / (optionally shrinkwrap)
  3. soos will check if the image with tag on the registry (official or private)
    1. if not found build the image and push it to the registry
  4. use pulled/created image for building the project by mounting the -v $(pwd):/${soosrc.containerFolder}
  5. execute npm run compile inside the container and place output into /${soosrc.distFolder}

Benefits: user soos config file for

  • adding specifics when building the Dockerfile (folders, etc)
  • registry location (public, private)
  • image name pattern
  • settings when building the docker run string
  • variables

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