Commit graph

11 commits

Author SHA1 Message Date
ec84a11036
feat: install Pominal with make
This commit adds an install target in the Makefile to install
Pominal on the user's system. The default installation path is
/usr/local/bin but this can be configured by overriding the
INSTALL_PREFIX variable.

Changes include:

- cleaning up .gitignore
- adding workflow to .gitlab-ci.yml
- bumping Go version in .gitlab-ci.yml
- excluding main.go for gochecknoglobals
- adding copyright notice in Makefile
- adding install and uninstall targets in Makefile
- adding installation instructions in the README
- adding a config.mk file for make arguments
- updating Pominal to specify where the icon is installed
2020-07-14 19:57:02 +01:00
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
99ebc86270
refactor: add lint test and refactor code.
- lint test using golangci-lint.
- lint test added as a job in the testing stage.
- code refactoring based on feedback.
2020-01-24 09:51:21 +00:00
4c38bfb828
ci: remove JUnit report
It serves no purpose for me. It only causes issues.
2020-01-19 23:18:30 +00:00
0f19832fca
ci: typo fix in only clause 2020-01-18 01:55:28 +00:00
e4df5bfb8e
ci: run junit report from branches
JUnit reports are useful for merge requests
so it is generate only from commits to branches
other than master.

This solves the issue where the code coverage was missing
from the badge and no testing logs are shown in the console
output.

Also fixed (hopefully) is the deployment of the coverage
report to my GitLab pages site.
2020-01-18 01:48:27 +00:00
5fd24b80df
test: improve testing suite and added reporting
* replace the table driven test with sub tests.
* create and publish code coverage reports via GitLab pages.
* use JUnit to view test results in the test tab in the pipeline view.
* upgrade Go to version 1.13.6.
2020-01-18 01:04:51 +00:00
0a86afbec3
chore: updated Go to version 1.13.4
As part of the Go update the flag.Parse()
function was moved out of init() and into
main() as the test was failing.
2019-12-01 20:30:20 +00:00
1ccf3b6302
chore: bump go to v1.12.9 2019-09-15 22:52:45 +01:00
0cd7dab556
ci: added release (semi)automation
- security: updated Golang version to 1.12.8 for CI builds
- added: configuration for build and release automation using GoReleaser
(https://goreleaser.com)
- (Releases will be semi-automatic for now due to the need of the access
token. When/if project specific access token is supported then I'll
complete the release stage of the pipeline.)
- added: version.go for printing out the versions
2019-08-14 01:10:28 +01:00
705566e74f
ci: set up CI/CD 2019-06-30 01:25:36 +01:00