Skip to content
This repository has been archived by the owner on Jun 5, 2023. It is now read-only.

Set up CI #19

Open
7 tasks
chris-pearce opened this issue Feb 27, 2016 · 3 comments
Open
7 tasks

Set up CI #19

chris-pearce opened this issue Feb 27, 2016 · 3 comments

Comments

@chris-pearce
Copy link
Contributor

chris-pearce commented Feb 27, 2016

CI Tasks
When a PR is pushed to the Shell repo
  • Passes all CSS linting rules (could use Gulp).
  • Sass compiles (currently a Grunt command exists: grunt testShell, in the test/ folder).
  • Versioning:
    • Grab the version from the .version file and apply it to the "version" object key in the package.json file.
    • Create a git tag: git tag -a vX -m "Version X" where "X" is the version number pulled from the .version file.
When a PR is merged to the master branch
  • Run npm publish.
  • Run git push origin [tagname].

Travis is a good option I think: https://travis-ci.org/.

@chris-pearce
Copy link
Contributor Author

Really important now we're about to go to 1.0.0.

@chris-pearce
Copy link
Contributor Author

Feedback from @williamtsoi1:

I'd suggest taking the 'version' workflow out of the PR, because for example:
1. master branch is at version 1.0.1
2. person A makes a fork/branch, does his work and bumps the version on his repo to v1.0.2
3. person B makes a fork/branch, does his work and bumps the version on his repo to v1.0.2
4. person B issues a PR
5. PR is merged, master branch is now at v1.0.2
6. person A issues a PR <- now the versioning is stuffed

[11:25] 
you'd probably want to bump the version AFTER every merged PR, rather than as part of the PR

[11:25] 
because there's no guarantee in relation to the "order of merging"```

@DaveOrDead
Copy link
Contributor

This is worth having a read of in terms of auto publishing to npm: npm/npm#7042

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants