@procore/tune-up
v1.6.0
Published
npm cli package for updating various things in a frontend monorepo
Downloads
103
Maintainers
Readme
@procore/tune-up
This package is a CLI tool that currently focus on helping automate updating dependencies and toolings of your frontend repository.
While more docs can be found for each individual command by invoking the CLI with the --help
flag, here are the base use cases!
Requirements
Ensure that your environment and repo have these things set before proceeding.
pnpm
This CLI uses pnpm to recursively go through a repo/monorepo and make updates to dependencies listed in package.json's.
Ensure that your packages that you'd like to get updates on are not using pinned versions, as this script will follow semantic versioning flags to figure out if there is an update to be had.
Example:
{
"name": "example-app",
"dependencies": {
- "node-fetch": "3.2.10",
+ "node-fetch": "^3.2.10",
}
}
yq
CircleCI installs this CLI tool on it's -browser
images, but in case it isn't, make sure this is installed as part of the CI process.
Locally, please follow relevant installation instructions from their README.
If you are on a mac environment, the instructions are as simple assuming you have brew installed
brew install yq
.env
cp .sample.env .env
Then fill in the appropriate values.
A GH_TOKEN
can be generated by going to Github's Classic Personal Access Token page and creating one with at least repo access, and then configuring it use/bypass SSO. You might want to copy it into your .env
file first as it is only ever shown to you once and the Configure SSO process changes the page.
CIRCLE_PROJECT_REPONAME
is equivalent to the repo name of the project this will be ran on. For this repository, as an example, this value is frontend-tooling
.
Please ensure that these values are present on your CI environment to allow these commands to succeed.
Usage
With the above setup, you should now be able to install and use this package. We recommend running this in your circle config via npx
or pnpx
.
Example
pnpx @procore/tune-up@latest dependencies
pnpx @procore/tune-up@latest tooling
pnpx @procore/tune-up@latest peer-dependencies