-
Notifications
You must be signed in to change notification settings - Fork 11.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Travis GitHub Releases #2555
Travis GitHub Releases #2555
Conversation
@etimberg, @tannerlinsley: I wrote a gulp task to create a Chart.js.zip package, which one will be deployed by Travis. It's very similar to the current zip file containing the whole repository, but only for samples. We could also provide only the Chart.js.zip file (no individual js files)? Note: users who download the repo (source) would have to |
Travis should now release the npm package automatically (2f28aed). When releasing a new version, we should updated the |
Added the |
6e43249
to
9ec7eba
Compare
Is there enough consensus to merge this? |
+1 |
61747c9
to
80a695f
Compare
Travis now builds and deploys these files for all tags, so we don't need to have them on the repository anymore.
Remove outdated *standard build* and *bundled with Moment.js* links from the documentation and add a link to the latest GitHub release, from where the user can download `*.js` files.
Samples need to be packaged with built libraries (which one have been removed from the repository), so create a new `gulp package` task to generate a ZIP archive with dist files, samples and the license file. This archive is generated in the ./dist/ folder and will be deployed by Travis along the GH release. Note that the ./dist/ folder is not preserved but merged in the archive root. Also change samples requiring moment.js to load this lib from the CDN instead of the ./node_module folder.
Add .npmignore to include dist/*.js files to the npm release (but exclude zip files). See https://docs.travis-ci.com/user/deployment/npm/. Also cleanup the .gitignore file.
Remove the bower.json file and update the documentation with the alternative bower-npm-resolver solution.
How can we confirm the API secure key works, or is there anything else we need to do to accept this PR? Also, can you please provide documentation that pushing tags triggers a new Travis CI build? |
@fulldecent we tried out a similar process in the color lib https://github.com/chartjs/chartjs-color/blob/master/.travis.yml |
It definitely works, I would encourage a merge soon. |
Yeah. I think we should merge this |
+1 |
I just read up on the documentation at https://docs.travis-ci.com/user/deployment/releases on why this works. Ready to merge, perhaps one more set of eyes can look at this. @tannerlinsley @nnnick @simonbrunel @zachpanz88 |
@fulldecent: same process as Chart.Deferred.js, except for deploying to npm. I'm confident that everything will run smoothly, but if not, we can still publish manually until we adjust the process (I tried to keep commits well documented and consistent, please don't squash on merge). The only missing part is CDNjs: we should update the package.json on their repo to reflect these changes before the next release. I don't think they support autoupdate from GitHub release files so it should now use npm release (which is the recommended method). I will prepare a PR if everyone is agree to merge that one. |
Ok, let's merge this and then @simonbrunel can update CDNjs |
Update .travis.yml to build and upload dist/* files (and a ZIP archive) when a tag is created (proof of concept), then remove dist/* files from the repository. Also update links to the documentations and README.md.
The new release process would be:
We will also need to update CDNjs to use these uploaded files.
The ZIP archive contains the following files:
The release attached files will be:
See original PR #2550 & #2552 and issue #2554