@agrakhov/test-npm-cicd

test gitlab cicd process

Usage no npm install needed!

<script type="module">
  import agrakhovTestNpmCicd from 'https://cdn.skypack.dev/@agrakhov/test-npm-cicd';
</script>

README

test-npm-cicd

To do a major release:

  • manually create MR with package.json and package-lock.json update with new major version in rc.0 state.

To do a minor release:

  • merge feature branch to master (fast-forward, squash commits) if needed or restart master pipeline
  • trigger "release_main" step on its pipeline

To do a patch release:

Releasing the patch itself:

  • Trigger "create_release_branch" on tag (if needed) - this will generate "release-a.b.x" branch.
  • Checkout to this branch and create "bugfix" branch from it
  • Merge changes in the same way as it happening on the master (ff, squash) back to "release-a.b.x"
  • To release the changes to npm - trigger "release_patch" jog on "release-a.b.x" branch.

Back porting the bugfixes to master

  1. If multiple bug fixes needed (also might be needed when there is a conflict), need to run following:

    # to see the difference
    git log origin/master..origin/release-0.7.x --oneline --no-merges
    # created "backport" branch from master
    git checkout backport
    git cherry-pick shaA..shaB (shaB was the one with the tag)
    # resolved conflicts and git add + git commit
    # merged "backport" to master
    
  2. Single bugfix commit:

    • merged bugfix branch back to "release-a.b.x"
    • on merge commit (the one with actual changes, not the tag + version bump) go to options -> cherry-pick and set source as master (with commit)
    • review and merge