Skip to content

v2.0.0-alpha.1

Pre-release
Pre-release
Compare
Choose a tag to compare
@github-actions github-actions released this 25 Mar 00:00
· 153 commits to main since this release
f01a3c4

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