-
Notifications
You must be signed in to change notification settings - Fork 95
feat: standardised CI/CD for smaller packages #48
base: main
Are you sure you want to change the base?
Conversation
uses: actions/setup-node@v2 | ||
with: | ||
node-version: 14 | ||
registry-url: https://registry.npmjs.org |
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.
This is default registry.
- name: Setup node | ||
uses: actions/setup-node@v2 | ||
with: | ||
node-version: 14 |
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.
Node version number was bumped to 16. This is still TBD, I need to check the minimum version supported by this package. I want to read it dynamically from package.json
"engines" so we have unification there.
using: composite | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- uses: actions/setup-node@v3 |
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.
This action caches global node_modules by default, when cache
is present. I cleaned up the widgets
version that had custom caching for readability and easier maintenance. I think we don't need a node_modules
specific caching for smaller packages, Yarn will be fast anyway re-instantiating from global cache.
This is open discussion!
runs-on: ubuntu-latest | ||
steps: | ||
- uses: ./.github/actions/setup | ||
- run: yarn deduplicate |
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 was debating whether we should contain all scripts this action runs within action, or use package.json scripts. Ended up moving entirely there to unify.
This PR upgrades CI/CD setup based on prior work in widgets, web3-react and interface.
In a follow-up PR, prettier setup will be migrated over to Uniswap ESLint configuration and to use ESLint for linting for wider coverage.
Semantic release hasn't been tested yet. This PR is still a concept.
Action items: