-
Notifications
You must be signed in to change notification settings - Fork 10.3k
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
chore: add starters to monorepo #10310
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Small comment!
.circleci/config.yml
Outdated
@@ -133,6 +133,20 @@ jobs: | |||
- <<: *attach_to_bootstrap | |||
- run: yarn test:integration | |||
|
|||
starters_publish: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll add back the other jobs, but this is helpful to validate this approach and get feedback more quickly.
See CircleCI for an example run.
Oh cool! Yeah run Cypress tests and then remove them before syncing with the read-only repos. |
This PR introduces a create-repos script which will likely be used either manually, or as part of some CI process relating to gatsbyjs#10310, e.g. on master push and examples/* change, run this script. I've made some assumptions here, specifically: - examples are starters, and we can create the repo `gatsby-starter-*` for every example - using-* should be replaced, e.g. `using-styled-components` should become `gatsby-starter-styled-components` - that it makes sense to install dependencies for scripts and add them to the yarn workspace I think these all make sense, but sanity check appreciated.
More work to do here: The clone and copy files approach won't work; how do we handle deleted files? Follow along at DSchau#5, trying a new approach. I think I'll have to merge origin/master and that should do the trick. |
One last thing to do, then we should be able to merge.
|
Bot to close all new pull requests to starter repos is ready at gatsbyjs/peril-gatsbyjs#64 |
This PR adds in starters to the monorepo. Longer term, I believe we'll merge starters/examples since they're very much linked. Future implementation improvements: - Run a `build` script to validate that the starter(s) can be built - I planned to use `lerna run --scope gatsby-starter-*` for this, but if there's another approach, happy to try that - Implement yarn workspaces/lerna so we can get automatic versioning in the starters (I have this built out at https://github.com/dschau/starters) - Author `e2e` tests vs. the starters so that we can ensure we're not breaking anything - These would follow a similar approach to the current e2e tests Blocked by gatsbyjs/gatsby-starter-blog#139 gatsbyjs/gatsby-starter-default#120 gatsbyjs/gatsby-starter-hello-world#32
This PR adds in starters to the monorepo. Longer term, I believe we'll merge starters/examples since they're very much linked.
Future implementation improvements:
build
script to validate that the starter(s) can be builtlerna run --scope gatsby-starter-*
for this, but if there's another approach, happy to try thate2e
tests vs. the starters so that we can ensure we're not breaking anythingBlocked by
gatsbyjs/gatsby-starter-blog#139 gatsbyjs/gatsby-starter-default#120 gatsbyjs/gatsby-starter-hello-world#32