[
https://issues.apache.org/jira/browse/ARROW-1577?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16262065#comment-16262065
]
ASF GitHub Bot commented on ARROW-1577:
---------------------------------------
trxcllnt commented on issue #1346: ARROW-1577: [JS] add ASF release scripts
URL: https://github.com/apache/arrow/pull/1346#issuecomment-346261217
@wesm ok, I added `dev/release/js-source-release.sh` and `js/npm-release.sh`
scripts:
```sh
cd $ARROW_HOME
# create a release branch (assuming patch release 0.1.2 -> 0.1.3)
git co -b release-js-0_1_3
# create a new v0.1.3 tag
git tag -a apache-arrow-js-0.1.3 -m "v0.1.3"
./dev/release/js-source-release.sh
# > Usage: ./dev/release/js-source-release.sh <js-version> <arrow-version>
<rc-num>
# - runs `npm version 0.1.3 --no-git-tag-version`
# - git-commits the new [email protected]
# - creates a tarball at dev/release/js-tmp/apache-arrow-js-0.1.3.tar.gz
# - copies signed tarballs to
dev/release/js-tmp/js-rc-tmp/apache-arrow-js-0.1.3-rc0
# - svn commits the dev/release/js-tmp/js-rc-tmp/apache-arrow-js-0.1.3-rc0
directory
# js-version 0.1.3, arrow-version 0.8.0, rc 0
./dev/release/js-source-release.sh 0.1.3 0.8.0 0
```
And when we're ready to publish the modules to npm, we can run:
```sh
cd apache-arrow-js-0.1.3-rc0
tar -xzf *.tar.gz
cd apache-arrow-js-0.1.3
# provide the same arrow-version as `js-source-release.sh`,
# so we can add an npm dist-tag that indicates which Arrow
# release each npm version is compatible with
npm run release -- 0.8.0
# available at either
npm install [email protected]
# or
npm install [email protected]
```
At the moment the `npm-release.sh` script [executes the integration
tests](https://github.com/apache/arrow/pull/1346/commits/c9cb2e04ec4a85fe1e49d1c023b15fceb3598952#diff-a8aff12ce8d320cec92901f4a8129ed3R27)
before publishing.
If the `npm run release` step is run with the [integration test
envars](https://github.com/trxcllnt/arrow/blob/js-asf-release-scripts/js/gulp/test-task.js#L66)
available (or at the same directory level as the `arrow/js`), it should work
fine. If thats's too much of a hassle, feel free to comment them out:
```sh
# validate the targets pass all tests before publishing
npm install
# npx run-s clean:all lint create:testdata build
# npm run test -- -t ts -u --integration
# npm run test -- --integration
npx run-s clean:all lint build
npm run test
# ...
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
> [JS] Package release script for NPM modules
> -------------------------------------------
>
> Key: ARROW-1577
> URL: https://issues.apache.org/jira/browse/ARROW-1577
> Project: Apache Arrow
> Issue Type: New Feature
> Components: JavaScript
> Affects Versions: 0.8.0
> Reporter: Wes McKinney
> Assignee: Paul Taylor
> Labels: pull-request-available
> Fix For: 0.8.0
>
>
> Since the NPM JavaScript module may wish to release more frequently than the
> main Arrow "monorepo", we should create a script to produce signed NPM
> artifacts to use for voting:
> * Update metadata for new version
> * Run unit tests
> * Create package tarballs with NPM
> * GPG sign and create md5 and sha512 checksum files
> * Upload to Apache dev SVN
> i.e. like
> https://github.com/apache/arrow/blob/master/dev/release/02-source.sh, but
> only for JavaScript.
> We will also want to write instructions for Arrow developers to verify the
> tarballs to streamline the release votes
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)