Skip to content
This repository has been archived by the owner on Dec 7, 2021. It is now read-only.

Commit

Permalink
chore: update & document release process
Browse files Browse the repository at this point in the history
  • Loading branch information
Vott committed May 18, 2020
1 parent 94daa11 commit 7498260
Show file tree
Hide file tree
Showing 24 changed files with 1,773 additions and 1,735 deletions.
60 changes: 60 additions & 0 deletions RELEASE_GUIDE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# Overview

[![Build Status](https://dev.azure.com/msft-vott/VoTT/_apis/build/status/VoTT/Create%20Release?branchName=master)](https://dev.azure.com/msft-vott/VoTT/_build/latest?definitionId=55&branchName=master)

Instruction on how to create new GitHub & Web Releases.

## Release Process

![alt text](./docs/images/release-process.png "Create Release Process")

## Versioning

Follow [NPM Semantic Versioning](https://docs.npmjs.com/about-semantic-versioning#incrementing-semantic-versions-in-published-packages)

| Code status | Stage | Rule | Example version |
| ----------------------------------------- | ------------- | ------------------------------------------------------------------ | --------------- |
| First release | New product | Start with 1.0.0 | 1.0.0 |
| Backward compatible bug fixes | Patch release | Increment the third digit | 1.0.1 |
| Backward compatible new features | Minor release | Increment the middle digit and reset last digit to zero | 1.1.0 |
| Changes that break backward compatibility | Major release | Increment the first digit and reset middle and last digits to zero | 2.0.0 |

### Commands

The pipeline use [npm-version](https://docs.npmjs.com/cli/version) to update version

### Pre

All version with `pre`, ie. `preminor` will bump the appropriate didgit & append `-0` to the new version

Examples:

`npm version prepatch`

1. v2.3.0 --> v2.3.1-0
1. v2.3.1-0 --> v2.3.2-0

`npm version preminor`

1. v2.3.0 --> v2.4.0-0
1. v2.4.0-0 --> v2.5.0-0

#### Exception

`prerelease` behave similar to prepatch, but would increment the last digit.

Examples:

`npm version prerelease`

v2.3.0 --> v2.3.1-0

v2.3.0-0 --> v2.3.0-1

### Major

v2.x.x --> v3.0.0

### Minor

v2.2.0 --> v2.3.0
33 changes: 33 additions & 0 deletions azure-pipelines/create-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: "GitHub & Web Release [$(SourceBranchName)] - $(Date:yyyyMMdd)$(Rev:.r)"

trigger: none # manual queue only when we're ready to release
pr: none # disable CI build for PR

variables:
azureSubscription: "pj-little-sub"
DEV_STORAGE_ACCOUNT: 'vottdev'
PROD_STORAGE_ACCOUNT: 'vott'
DEV_URL: "https://vottdev.z5.web.core.windows.net/"
PROD_URL: "https://vott.z22.web.core.windows.net/"

stages:
- stage: version_bump_commit
jobs:
- template: templates/npm-version-bump.yml
parameters:
versionType: $(NPM_VERSION_TYPE)

- stage: github_release
dependsOn: version_bump_commit
jobs:
- template: templates/create-github-release.yml
parameters:
GitHubConnection: 'GitHub connection' # defaults for any parameters that aren't specified
repositoryName: '$(Build.Repository.Name)' # microsoft/VoTT
isPreRelease: $(IS_PRERELEASE) # set when queuing build
isDraft: $(IS_DRAFT)

- stage: web_release
dependsOn: version_bump_commit
jobs:
- template: templates/create-web-release.yml
26 changes: 0 additions & 26 deletions azure-pipelines/linux/artifact-build-linux.yml

This file was deleted.

22 changes: 0 additions & 22 deletions azure-pipelines/mac/artifact-build-mac.yml

This file was deleted.

69 changes: 0 additions & 69 deletions azure-pipelines/plato/generate-up-to-date-report.yml

This file was deleted.

5 changes: 0 additions & 5 deletions azure-pipelines/releases/README.md

This file was deleted.

Loading

0 comments on commit 7498260

Please sign in to comment.