pominal/.gitlab-ci.yml
Dan Anglin 19eb9b20be
feat: support configuring Pominal with config file
This commit adds a feature to load Pominal
configuration from a JSON configuration file.

A new data type called PominalConfig was created for
the purpose of configuring Pominal.
A new factory function called newPominalConfig was
created which takes the path to the JSON configuration
file and the flag overrides and generates the new
PominalConfig value.

Here, the JSON config is parsed to create the initial
configuration and any flag overrides can override
the corresponding fields in the PominalConfig object.
Currently only the sessions times and the maximum work
sessions per Pominal cycle have flag overrides.

Additionally users can now configure custom notification
messages for each session type from the configuration file.
There are currently no flag overrides for these.

This commit resolves dananglin/Pominal#1
2020-02-13 12:42:55 +00:00

45 lines
685 B
YAML

---
stages:
- test
- deploy
variables:
CGO_ENABLED: 0
.install-make:
before_script:
- apk add --no-cache make
test:unit:
artifacts:
expire_in: 30 minutes
paths:
- code-coverage.html
extends: .install-make
image: golang:1.13.7-alpine
script:
- make test_cover_report
stage: test
test:lint:
extends: .install-make
image: golangci/golangci-lint:v1.23.1-alpine
script:
- make test_lint
stage: test
pages:
artifacts:
paths:
- public
expire_in: 30 days
dependencies:
- test:unit
only:
- master@dananglin/Pominal
script:
- mkdir public
- mv code-coverage.html public
stage: deploy
variables:
GIT_STRATEGY: none