* build: do CFA releases

* ci: persist bin output to workspace

* ci: attach workspace in cfa/release job

* ci: init git submodules in cfa/release job

* docs: remove manual release documentation

* chore: change version in package.json for CFA releases

* build: add missing CFA stuff

* build: fix yarn SNAFU

* ci: bump cache version to fix stale cache issue

* ci: add release jobs

* ci: add back filters
This commit is contained in:
David Sanders 2023-09-11 09:08:37 -07:00 коммит произвёл GitHub
Родитель 9c7bce88f3
Коммит 7456d63cf4
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
5 изменённых файлов: 2111 добавлений и 87 удалений

Просмотреть файл

@ -23,15 +23,15 @@ commands:
command: git submodule update --init --recursive
- restore_cache:
keys:
- v1-dependencies-{{ arch }}-{{ checksum "yarn.lock" }}
- v1-dependencies-{{ arch }}
- v2-dependencies-{{ arch }}-{{ checksum "yarn.lock" }}
- v2-dependencies-{{ arch }}
- run:
name: Install dependencies and build
command: npx yarn install --frozen-lockfile
- save_cache:
paths:
- node_modules
key: v1-dependencies-{{ arch }}-{{ checksum "yarn.lock" }}
key: v2-dependencies-{{ arch }}-{{ checksum "yarn.lock" }}
jobs:
test-linux:
@ -45,8 +45,6 @@ jobs:
- install:
node-version: << parameters.node-version >>
- run: npx yarn test
- store_artifacts:
path: ./bin
test-mac:
macos:
xcode: 13.4.1
@ -62,8 +60,6 @@ jobs:
name: Build alternative architecture
command: MINIDUMP_BUILD_ARCH=arm64 node build.js
- run: npx yarn test
- store_artifacts:
path: ./bin
test-windows:
executor:
name: win/default
@ -76,8 +72,34 @@ jobs:
- install:
node-version: << parameters.node-version >>
- run: npx yarn test
release-linux:
docker:
- image: cimg/base:stable
steps:
- install:
node-version: 18.17.1
- store_artifacts:
path: ./bin
- persist_to_workspace:
root: .
paths:
- bin
release-mac:
macos:
xcode: 13.4.1
resource_class: macos.x86.medium.gen2
steps:
- install:
node-version: 18.17.1
- run:
name: Build alternative architecture
command: MINIDUMP_BUILD_ARCH=arm64 node build.js
- store_artifacts:
path: ./bin
- persist_to_workspace:
root: .
paths:
- bin
workflows:
test_and_release:
@ -104,20 +126,31 @@ workflows:
# - 18.14.0
# - 16.19.0
# - 14.19.0
# TODO: uncomment this once CFA releases are set up
# - cfa/release:
# requires:
# - test-linux-18.14.0
# - test-linux-16.19.0
# - test-linux-14.19.0
# - test-mac-18.14.0
# - test-mac-16.19.0
# - test-mac-14.19.0
# - test-windows-18.14.0
# - test-windows-16.19.0
# - test-windows-14.19.0
# filters:
# branches:
# only:
# - main
# context: cfa-release
- release-linux:
filters:
branches:
only:
- main
- release-mac:
filters:
branches:
only:
- main
- cfa/release:
prepare:
- run:
name: Init git submodules
command: git submodule update --init --recursive
- attach_workspace:
at: .
requires:
- test-linux
- test-mac
# - test-windows
- release-linux
- release-mac
filters:
branches:
only:
- main
context: cfa-release

10
.releaserc.json Normal file
Просмотреть файл

@ -0,0 +1,10 @@
{
"plugins": [
"@semantic-release/commit-analyzer",
"@semantic-release/release-notes-generator",
"@continuous-auth/semantic-release-npm",
"@semantic-release/github"
],
"branches": [ "main" ]
}

Просмотреть файл

@ -37,31 +37,3 @@ Parse and dump the raw contents of the minidump as text using `minidump_dump`.
Dump debug symbols in minidump format from `binaryPath`, the `callback` would
be called with `callback(error, minidump)` upon completion.
## Releasing a new npm version
- Ensure you have checked out the `deps/breakpad` submodule. If you don't check
this out, then the source code of breakpad will not be included in the npm
package, and it will not be possible to build from source.
- Change the version in `package.json`, make a new git tag, and push it to GitHub.
- Wait until the CircleCI jobs on the main branch pass.
- The artifacts of the latest CircleCI jobs run should be downloaded and placed under the `bin` folder
(replacing the old folder if it exists).
The bin folder should look like the following.
```
bin
|_linux-x64
|_dump_syms
|_minidump_dump
|_minidump_stackwalk
|_darwin-x64
|_dump_syms
|_minidump_dump
|_minidump_stackwalk
```
- Then:
```
npm publish
```

Просмотреть файл

@ -2,7 +2,7 @@
"main": "./lib/minidump.js",
"name": "minidump",
"description": "Read and process minidump file",
"version": "0.25.0",
"version": "0.0.0-development",
"types": "index.d.ts",
"license": "MIT",
"repository": {
@ -19,6 +19,7 @@
"test": "mocha test && standard"
},
"devDependencies": {
"@continuous-auth/semantic-release-npm": "^3.0.0",
"@electron/get": "^2.0.2",
"extract-zip": "^1.5.0",
"mocha": "^10.1.0",

2076
yarn.lock

Разница между файлами не показана из-за своего большого размера Загрузить разницу