v2.0.0-alpha.1
Pre-release
Pre-release
github-actions
released this
25 Mar 00:00
·
153 commits
to main
since this release
Bug Fixes
- SetEnvironment wasn't working if the variable was not present in env
- VCSRefToInternalRef returned wrong value when given a git hash
- branch name detected wrongly in some cases
- broken check in client_git
- compatiblity for older gitlab versions
- correct output of NCI_COMMIT_REF_RELEASE
- detection of gitlab merge request id
- escape special chars in commit title / message and set default values for empty repos
- gitlab ci registry variables / localgit default repo by dir /
- improve error messages for FindGitCommitsBetweenRefs
- invalid git references reported for tags
- issue with git vcs ref
- issue with tags in ParseGitRefLogLine
- lastrelease should always target the previous release of the same type
- latest release can also be a stable release
- make sure the container repository is lowercase
- only set commit info based on the latest commit
- os env should ignore vars with a empty key
- quote exported variables
- repository status returns wrong value
- set correct module name in go.mod
- set default loglevel to warn
- set lastrelease info when normalizing
- set project type on each step
- take commit ref information from the gitlab env
- toCommit.Hash was stored in fromHash instead toHash
- deps: update module github.com/stretchr/testify to v1.8.0 (#2)
- deps: update module github.com/xanzy/go-gitlab to v0.72.0 (#4)
- use a different project to test gitlab project details
- use sudo to install the environment - gh workflow
CI
- remove lint stage
Documentation
- correct samples in readme
- update readme links
Features
- add LASTRELEASE vars to the spec / vcs-specific references
- add NCI_CONTAINERREGISTRY_TAG
- add NCI_DEPLOY_FREEZE
- add NCI_PIPELINE_ATTEMPT
- add NCI_PIPELINE_URL
- add NCI_PROJECT_DEFAULT_BRANCH
- add NCI_PROJECT_PATH
- add NCI_PROJECT_URL, NCI_REPOSITORY_HOST_SERVER, NCI_REPOSITORY_HOST_TYPE
- add NewVCSRefFromString helper method
- add SetEnvironment helper func
- add WorkerType, PipelineJobStartedAt
- add a spec struct / spec validation
- add author information / readme
- add cobra to support multiple cli commands
- add commit count for current ref
- add commit short hash / author date / commit date
- add context to Commit for arbitrary data
- add denormalize func
- add gitlab api requests for inputs
- add more project details (support for github/gitlab api)
- add pipeline config file / variables / query workflow info
- add pipeline id / stage id / job id
- add renovate config
- allow denormalization to target systems
- detect repository status (clean, dirty)
- improve version command
- migrate to zerolog / don't set NCI_COMMIT_COUNT in shallow clones
- mock vcsclient to improve test execution time
- move some app code into a pkg/normalizeci to allow library usage
- provide more commit information / add option to skip first commit in FindLastRelease
- rename to NCI_LASTRELEASE_COMMIT_AFTER_COUNT
- set github input vars / refactor normalizer code
- store envs in maps / add general vcs support functions
- support GITLAB_TOKEN for repo details
- support github merge request remotes
- support project details for self-hosted gitlab instances
- support pull request id for github
- support self hosted instances in projectdetails
- update go-git to v5
- update to go 1.17
- use CI_JOB_TOKEN for gitlab project details
- use gitlab project details from env if available
Internal
- add commit hash to be set at build time
- add docs for planned ci services
- add gh action workflow
- add license
- add new release workflow to publish artifacts
- add setup / usage part to the readme
- add test for githubactions pull request id
- bump pjbgf/sha1cd to v0.2.3
- comment out is-clean check
- disable debug for publish step
- enable debug for publish step
- fix readme
- format imports
- mock projectdetail responses for tests
- report code coverage
- run go-fmt
- set build archs
- set upx args for artifact optimization
- update all deps
- update dependencies
- update gitignore to cover .dist and .tmp
- deps: update module github.com/go-git/go-git/v5 to v5.6.1 (#59)
- deps: update module github.com/go-playground/validator/v10 to v10.12.0 (#61)
- deps: update module github.com/google/go-github/v50 to v50.2.0 (#60)
- deps: update module github.com/gosimple/slug to v1.13.1 (#11)
- deps: update module github.com/masterminds/semver/v3 to v3.2.0 (#21)
- deps: update module github.com/rs/zerolog to v1.29.0 (#45)
- deps: update module github.com/spf13/cobra to v1.6.1 (#15)
- deps: update module github.com/stretchr/testify to v1.8.2 (#54)
- deps: update module github.com/xanzy/go-gitlab to v0.81.0
- deps: update module go to 1.19 (#5)
- deps: update module golang.org/x/oauth2 to v0.6.0 (#56)
- update workflow
- update workflow
- update workflow script
- use run_id as cache key for workflows
- use shared ci workflow
Refactor
- change package name to qubid/normalizeci
- implement a generic vcs client
- move normalize, denormalize, version cmd in separate files
- move test env data into .env files
- normalize and denormalize now use the struct instead of a map
- rename module
- split into pkg and cli modules using workspaces
feature
- add NCI_PROJECT_DIR
- add bintray publish to workflow
- add nci container registry vars / update workflow with new actions
- add support for localgit for local executions
- add upx optimize step to pipeline
- initial commit
- no errors on when no repository / empty repos are found and added git tests
- publish into package normalize-ci
- use gitlab ci provided variables if available
- use source branch as ref when checking out a specfic commit
- use stage scripts of the modular pipeline