Skip to content

Commit d548538

Browse files
authored
feat(pipeline): use ADO for release (#72)
* test release * use ADO for the release * update author * remove firefox text for release pipeline * refactor * fix formatting * enable release
1 parent 063025e commit d548538

5 files changed

Lines changed: 57 additions & 38 deletions

File tree

.azure-devops/release.yaml

Lines changed: 43 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -35,46 +35,62 @@ extends:
3535
Build.SDL.<Roslyn>.Enabled: false
3636
Build.SDL.<ESLint>.Enabled: true
3737
jobs:
38-
- job: Release
38+
- job: Build
39+
displayName: Build ObjectStoreProvider Package
3940
pool:
4041
name: Azure-Pipelines-1ESPT-ExDShared
4142
image: ubuntu-latest
4243
os: linux
44+
templateContext:
45+
outputs:
46+
- output: pipelineArtifact
47+
targetPath: $(System.DefaultWorkingDirectory)/dist
48+
artifactName: package-$(Build.BuildId)-$(Build.BuildNumber)
49+
- output: pipelineArtifact
50+
targetPath: $(System.DefaultWorkingDirectory)/packages
51+
artifactName: npm-package-$(Build.BuildId)-$(Build.BuildNumber)
4352
steps:
4453
- checkout: self
54+
- task: NodeTool@0
55+
displayName: "Installing node"
56+
inputs:
57+
versionSpec: "16"
4558
- script: yarn --frozen-lockfile
4659
displayName: yarn
47-
- script: yarn ci-test
60+
- script: yarn build && yarn test:ci
4861
displayName: build and test [test]
4962

50-
- task: 1ES.PublishPipelineArtifact@1
51-
displayName: "Publish built package"
52-
inputs:
53-
artifactName: package-$(Build.BuildNumber)
54-
targetPath: $(System.DefaultWorkingDirectory)/dist
55-
5663
- script: |
5764
mkdir -p $(System.DefaultWorkingDirectory)/packages
5865
npm pack --pack-destination $(System.DefaultWorkingDirectory)/packages
5966
displayName: "Generate npm package (.tgz)"
6067
61-
# - task: EsrpRelease@9
62-
# displayName: "ESRP Release to npm"
63-
# inputs:
64-
# connectedservicename: $(Release.ConnectedServiceName)
65-
# usemanagedidentity: true
66-
# keyvaultname: $(Release.KeyVaultName)
67-
# signcertname: $(Release.SignCertName)
68-
# clientid: $(Release.ClientId)
69-
# contenttype: "npm"
70-
# folderlocation: $(System.DefaultWorkingDirectory)/packages
71-
# owners: $(Release.Owners)
72-
# approvers: $(Release.Approvers)
73-
# mainpublisher: ESRPRELPACMAN
74-
# domaintenantid: $(Release.DomainTenantId)
75-
76-
- task: 1ES.PublishPipelineArtifact@1
77-
displayName: 📒 Publish Manifest
68+
- job: Release
69+
displayName: ObjectStoreProvider Release
70+
dependsOn: Build
71+
pool:
72+
name: Azure-Pipelines-1ESPT-ExDShared
73+
image: ubuntu-latest
74+
os: linux
75+
templateContext:
76+
type: releaseJob
77+
isProduction: true
78+
inputs:
79+
- input: pipelineArtifact
80+
artifactName: npm-package-$(Build.BuildId)-$(Build.BuildNumber)
81+
targetPath: $(Pipeline.Workspace)/packages
82+
steps:
83+
- task: EsrpRelease@9
84+
displayName: "ESRP Release to npm"
7885
inputs:
79-
artifactName: SBom-$(System.JobAttempt)
80-
targetPath: $(System.DefaultWorkingDirectory)/_manifest
86+
connectedservicename: $(Release.ConnectedServiceName)
87+
usemanagedidentity: true
88+
keyvaultname: $(Release.KeyVaultName)
89+
signcertname: $(Release.SignCertName)
90+
clientid: $(Release.ClientId)
91+
contenttype: "npm"
92+
folderlocation: $(Pipeline.Workspace)/packages
93+
owners: $(Release.Owners)
94+
approvers: $(Release.Approvers)
95+
mainpublisher: ESRPRELPACMAN
96+
domaintenantid: $(Release.DomainTenantId)

.github/workflows/pr.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ jobs:
2626
# Sets up Node and an .npmrc file. This is the official Github supported way to set up node.
2727
- uses: actions/setup-node@v4
2828
with:
29-
node-version: "12"
29+
node-version: "16"
3030
registry-url: "https://registry.npmjs.org"
3131
cache: "yarn"
3232
always-auth: "true"
@@ -44,7 +44,7 @@ jobs:
4444
run: echo "CHROME_BIN = $CHROME_BIN FIREFOX_BIN = $FIREFOX_BIN"
4545

4646
- name: CI BUILD + UT
47-
run: yarn ci-test
47+
run: yarn build && yarn test
4848

4949
- name: Check whether version was bumped in PR
5050
id: actions_project_version_check

.github/workflows/push.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,9 @@ jobs:
4343
run: echo "CHROME_BIN = $CHROME_BIN FIREFOX_BIN = $FIREFOX_BIN"
4444

4545
- name: CI BUILD + UT
46-
run: yarn ci-test
46+
run: yarn build && yarn test
4747

48-
- name: Publish package
49-
run: yarn publish --access public
50-
env:
51-
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
48+
# - name: Publish package
49+
# run: yarn publish --access public
50+
# env:
51+
# NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ yarn build
4444

4545
```bash
4646
yarn install
47-
yarn ci-test
47+
yarn build && yarn test
4848
```
4949

5050
## Testing

package.json

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,17 @@
11
{
22
"name": "@microsoft/objectstoreprovider",
3-
"version": "0.8.2",
3+
"version": "0.8.4",
44
"description": "A cross-browser object store library",
5-
"author": "Mukundan Kavanur Kidambi <mukav@microsoft.com>",
5+
"author": "DataStack Team eleretzk@microsoft.com",
66
"scripts": {
7-
"ci-test": "npm run build && npm run test",
87
"test": "npm run test:browser -- --single-run && npm run test:sharedworker -- --single-run && npm run test:webworker -- --single-run && npm run test:btree",
8+
"test:ci": "npm run test:browser:ci -- --single-run && npm run test:sharedworker:ci -- --single-run && npm run test:webworker:ci -- --single-run && npm run test:btree",
99
"test:browser": "npx karma start karma.browser.conf.js --browsers ChromeHeadless,FirefoxHeadless",
10+
"test:browser:ci": "npx karma start karma.browser.conf.js --browsers ChromeHeadless",
1011
"test:sharedworker": "npx karma start karma.webworker.conf.js --browsers ChromeHeadless,FirefoxHeadless",
12+
"test:sharedworker:ci": "npx karma start karma.webworker.conf.js --browsers ChromeHeadless",
1113
"test:webworker": "npx karma start karma.sharedworker.conf.js --browsers ChromeHeadless,FirefoxHeadless",
14+
"test:webworker:ci": "npx karma start karma.sharedworker.conf.js --browsers ChromeHeadless",
1215
"test:debug:browser": "npx karma start karma.browser.conf.js --browsers Chrome,Firefox",
1316
"test:debug:sharedworker": "npx karma start karma.webworker.conf.js --browsers Chrome,Firefox",
1417
"test:debug:webworker": "npx karma start karma.sharedworker.conf.js --browsers Chrome,Firefox",

0 commit comments

Comments
 (0)