Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/tyler-technologies-oss/forge-upgrade

A node-based CLI for automating upgrades of Tyler Forge™ projects.
https://github.com/tyler-technologies-oss/forge-upgrade

Last synced: about 2 months ago
JSON representation

A node-based CLI for automating upgrades of Tyler Forge™ projects.

Awesome Lists containing this project

README

        

# Tyler Forge™ Upgrade Utility

This utility can be used to aid in the upgrade process for Tyler Forge™ based projects.

It executed run a find/replace and code migrations on all files within the provided `--path`, and attempt to perform any
automated replacements that it can for known upgrade migrations.

> Manual evaluation should **always** be done after running this utility, and if you use a code formatter such as Prettier,
> it is advised to run it after the utility has completed.

## Usage

Run the utility using `npx`:

```bash
npx @tylertech/forge-upgrade@latest
```

> **Important:** You must be on NodeJS version 16 or later.

## Configurations

Upgrades are run from a "configuration" file within this utility. The table below will help you decide which configuration to
use based on the version of Tyler Forge™ that your project is currently using prior to the upgrade:

| From | To | Configuration
| ----------| ------------------------- | -------------
| Forge 2.x | Forge 3.0 | `forge-3.0` **(latest)**
| Forge 2.x | Forge 3.0 (deprecations) | `forge-3.0-deprecated`
| TCW 1.x | Forge 2.0 | `forge-2.0`
| TCW 1.x | Forge 3.0 | First run with `forge-2.0` then run again with `forge-3.0`

> Additional manual upgrades may be required, see version announcement and/or release notes for further information.

### Options

The utility will accept the following arguments:

| Option | Description
| -------------------------| ---------------
| `--path ` | Accepts a relative path from the current directory to the source directory where the upgrade should begin from.
| `--configuration ` | The name of the upgrade configuration to use. Defaults to most recent configuration.
| `--no-replace` | Disables replace operations.
| `--no-migrate` | Disables code migrations.
| `--dry-run` | Runs the utility without modifying any files and prints out what it would do if ran without this flag.
| `--ignore` | Paths or globs of files to ignore. (ex. `--ignore "**/*/my-directory/**/*"`). Note: separate multiple values with a comma.
| `--verbose` | Enables verbose logging.
| `--help` | Prints the help manual.