Skip to content
This repository was archived by the owner on Dec 7, 2021. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 66 additions & 0 deletions RELEASE_GUIDE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
# 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")

### AzDO Tasks

[GitHub Release Task](https://github.com/microsoft/azure-pipelines-tasks/tree/master/Tasks/GitHubReleaseV1)

[Azure File Copy](https://github.com/microsoft/azure-pipelines-tasks/tree/master/Tasks/AzureFileCopyV3)

## 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)"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was the old process not working? Looks like a full rewrite on the pipelines?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

a lot of the old process was manual. A few of AzDO task has been updated to support the functionality we need so I removed the manual pieces.


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